kernel/include/linux/cordic.h
.. .. @@ -18,6 +18,15 @@ 18 18 19 19 #include <linux/types.h> 20 20 21 +#define CORDIC_ANGLE_GEN 3979722 +#define CORDIC_PRECISION_SHIFT 1623 +#define CORDIC_NUM_ITER (CORDIC_PRECISION_SHIFT + 2)24 +25 +#define CORDIC_FIXED(X) ((s32)((X) << CORDIC_PRECISION_SHIFT))26 +#define CORDIC_FLOAT(X) (((X) >= 0) \27 + ? ((((X) >> (CORDIC_PRECISION_SHIFT - 1)) + 1) >> 1) \28 + : -((((-(X)) >> (CORDIC_PRECISION_SHIFT - 1)) + 1) >> 1))29 +21 30 /** 22 31 * struct cordic_iq - i/q coordinate. 23 32 *