]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/blobdiff - drivers/iio/imu/nvi_mpu/nvi_dmp_mpu.h
iio: imu: nvi v.330 MPL520 support
[sojka/nv-tegra/linux-3.10.git] / drivers / iio / imu / nvi_mpu / nvi_dmp_mpu.h
index 02ba21d6bb6bd081c21995325a8604c59cc173f9..91b1d9a02fe4f5239fff5a4e5bfaad1f0203069c 100644 (file)
 #define D_0_232                                (232)
 #define D_0_236                                (236)
 
-#define D_1_2                          (256 + 2)
-#define D_1_4                          (256 + 4)
-#define D_1_8                          (256 + 8)
-#define D_1_10                         (256 + 10)
-#define D_1_24                         (256 + 24)
-#define D_1_28                         (256 + 28)
-#define D_1_36                         (256 + 36)
-#define D_1_40                         (256 + 40)
-#define D_1_44                         (256 + 44)
-#define D_1_72                         (256 + 72)
-#define D_1_74                         (256 + 74)
-#define D_1_79                         (256 + 79)
-#define D_1_88                         (256 + 88)
-#define D_1_90                         (256 + 90)
-#define D_1_92                         (256 + 92)
-#define D_1_96                         (256 + 96)
-#define D_1_98                         (256 + 98)
-#define D_1_106                                (256 + 106)
-#define D_1_108                                (256 + 108)
-#define D_1_112                                (256 + 112)
+#define D_1_2                          (256 + 2)       /* 0x0102 */
+#define D_1_4                          (256 + 4)       /* 0x0104 */
+#define D_1_8                          (256 + 8)       /* 0x0108 */
+#define D_1_10                         (256 + 10)      /* 0x010A */
+#define D_1_24                         (256 + 24)      /* 0x0118 */
+#define D_1_28                         (256 + 28)      /* 0x011C */
+#define D_1_36                         (256 + 36)      /* 0x0124 */
+#define D_1_40                         (256 + 40)      /* 0x0128 */
+#define D_1_44                         (256 + 44)      /* 0x012C */
+#define D_1_72                         (256 + 72)      /* 0x0148 */
+#define D_1_74                         (256 + 74)      /* 0x014A */
+#define D_1_79                         (256 + 79)      /* 0x014F */
+#define D_1_88                         (256 + 88)      /* 0x0158 */
+#define D_1_90                         (256 + 90)      /* 0x015A */
+#define D_1_92                         (256 + 92)      /* 0x015C */
+#define D_1_96                         (256 + 96)      /* 0x0160 */
+#define D_1_98                         (256 + 98)      /* 0x0162 */
+#define D_1_106                                (256 + 106)     /* 0x016A */
+#define D_1_108                                (256 + 108)     /* 0x016C */
+#define D_1_112                                (256 + 112)     /* 0x0170 */
 #define D_1_128                                (256 + 144)
 #define D_1_152                                (256 + 12)
-#define D_1_160                                (256 + 160)
-#define D_1_176                                (256 + 176)
-#define D_1_178                                (256 + 178)
-#define D_1_218                                (256 + 218)
-#define D_1_232                                (256 + 232)
-#define D_1_236                                (256 + 236)
-#define D_1_240                                (256 + 240)
-#define D_1_244                                (256 + 244)
-#define D_1_250                                (256 + 250)
-#define D_1_252                                (256 + 252)
+#define D_1_160                                (256 + 160)     /* 0x01A0 */
+#define D_1_176                                (256 + 176)     /* 0x01B0 */
+#define D_1_178                                (256 + 178)     /* 0x01B2 */
+#define D_1_218                                (256 + 218)     /* 0x01DA */
+#define D_1_232                                (256 + 232)     /* 0x01E8 */
+#define D_1_236                                (256 + 236)     /* 0x01EC */
+#define D_1_240                                (256 + 240)     /* 0x01F0 */
+#define D_1_244                                (256 + 244)     /* 0x01F4 */
+#define D_1_250                                (256 + 250)     /* 0x01FA */
+#define D_1_252                                (256 + 252)     /* 0x01FC */
 #define D_2_12                         (512 + 12)
 #define D_2_96                         (512 + 96)
 #define D_2_108                                (512 + 108)
 #define D_2_244                                (512 + 244)
 #define D_2_248                                (512 + 248)
 #define D_2_252                                (512 + 252)
-#define CPASS_BIAS_X                   (30 * 16 + 4)
-#define CPASS_BIAS_Y                   (30 * 16 + 8)
-#define CPASS_BIAS_Z                   (30 * 16 + 12)
-#define CPASS_MTX_00                   (32 * 16 + 4)
-#define CPASS_MTX_01                   (32 * 16 + 8)
-#define CPASS_MTX_02                   (36 * 16 + 12)
-#define CPASS_MTX_10                   (33 * 16)
-#define CPASS_MTX_11                   (33 * 16 + 4)
-#define CPASS_MTX_12                   (33 * 16 + 8)
-#define CPASS_MTX_20                   (33 * 16 + 12)
-#define CPASS_MTX_21                   (34 * 16 + 4)
-#define CPASS_MTX_22                   (34 * 16 + 8)
-#define D_EXT_GYRO_BIAS_X              (61 * 16)
-#define D_EXT_GYRO_BIAS_Y              (61 * 16 + 4)
-#define D_EXT_GYRO_BIAS_Z              (61 * 16 + 8)
-#define D_ACT0                         (40 * 16)
-#define D_ACSX                         (40 * 16 + 4)
-#define D_ACSY                         (40 * 16 + 8)
-#define D_ACSZ                         (40 * 16 + 12)
+#define CPASS_BIAS_X                   (30 * 16 + 4)   /* 0x01E4 */
+#define CPASS_BIAS_Y                   (30 * 16 + 8)   /* 0x01E8 */
+#define CPASS_BIAS_Z                   (30 * 16 + 12)  /* 0x01EC */
+#define CPASS_MTX_00                   (32 * 16 + 4)   /* 0x0204 */
+#define CPASS_MTX_01                   (32 * 16 + 8)   /* 0x0208 */
+#define CPASS_MTX_02                   (36 * 16 + 12)  /* 0x024C */
+#define CPASS_MTX_10                   (33 * 16)       /* 0x0210 */
+#define CPASS_MTX_11                   (33 * 16 + 4)   /* 0x0214 */
+#define CPASS_MTX_12                   (33 * 16 + 8)   /* 0x0218 */
+#define CPASS_MTX_20                   (33 * 16 + 12)  /* 0x021C */
+#define CPASS_MTX_21                   (34 * 16 + 4)   /* 0x0224 */
+#define CPASS_MTX_22                   (34 * 16 + 8)   /* 0x0228 */
+#define D_EXT_GYRO_BIAS_X              (61 * 16)       /* 0x03D0 */
+#define D_EXT_GYRO_BIAS_Y              (61 * 16 + 4)   /* 0x03D4 */
+#define D_EXT_GYRO_BIAS_Z              (61 * 16 + 8)   /* 0x03D8 */
+#define D_ACT0                         (40 * 16)       /* 0x0280 */
+#define D_ACSX                         (40 * 16 + 4)   /* 0x0284 */
+#define D_ACSY                         (40 * 16 + 8)   /* 0x0288 */
+#define D_ACSZ                         (40 * 16 + 12)  /* 0x028C */
 
-#define FLICK_MSG                      (45 * 16 + 4)
-#define FLICK_COUNTER                  (45 * 16 + 8)
-#define FLICK_LOWER                    (45 * 16 + 12)
-#define FLICK_UPPER                    (46 * 16 + 12)
+#define FLICK_MSG                      (45 * 16 + 4)   /* 0x02D4 */
+#define FLICK_COUNTER                  (45 * 16 + 8)   /* 0x02D8 */
+#define FLICK_LOWER                    (45 * 16 + 12)  /* 0x02DC */
+#define FLICK_UPPER                    (46 * 16 + 12)  /* 0x02EC */
 
 #define D_SMD_ENABLE                   (18 * 16)       /* 0x0120 */
 #define D_SMD_MOT_THLD                 (21 * 16 + 8)   /* 0x0158 */
 #define D_SMD_DELAY_THLD               (21 * 16 + 4)   /* 0x0154 */
 #define D_SMD_DELAY2_THLD              (21 * 16 + 12)  /* 0x015C */
-#define D_SMD_EXE_STATE                        (22 * 16)
-#define D_SMD_DELAY_CNTR               (21 * 16)
+#define D_SMD_EXE_STATE                        (22 * 16)       /* 0x0160 */
+#define D_SMD_DELAY_CNTR               (21 * 16)       /* 0x0150 */
 
-#define D_WF_GESTURE_TIME_THRSH                (25 * 16 + 8)
-#define D_WF_GESTURE_TILT_ERROR                (25 * 16 + 12)
-#define D_WF_GESTURE_TILT_THRSH                (26 * 16 + 8)
-#define D_WF_GESTURE_TILT_REJECT_THRSH (26 * 16 + 12)
+#define D_WF_GESTURE_TIME_THRSH                (25 * 16 + 8)   /* 0x0198 */
+#define D_WF_GESTURE_TILT_ERROR                (25 * 16 + 12)  /* 0x019C */
+#define D_WF_GESTURE_TILT_THRSH                (26 * 16 + 8)   /* 0x01A8 */
+#define D_WF_GESTURE_TILT_REJECT_THRSH (26 * 16 + 12)  /* 0x01AC */
 
 #define D_AUTH_OUT                     (992)
 #define D_AUTH_IN                      (996)
 #define D_AUTH_A                       (1000)
 #define D_AUTH_B                       (1004)
 
-#define D_PEDSTD_BP_B                  (768 + 0x1C)
-#define D_PEDSTD_BP_A4                 (768 + 0x40)
-#define D_PEDSTD_BP_A3                 (768 + 0x44)
-#define D_PEDSTD_BP_A2                 (768 + 0x48)
-#define D_PEDSTD_BP_A1                 (768 + 0x4C)
-#define D_PEDSTD_SB                    (768 + 0x28)
-#define D_PEDSTD_SB_TIME               (768 + 0x2C)
-#define D_PEDSTD_PEAKTHRSH             (768 + 0x98)
-#define D_PEDSTD_TIML                  (768 + 0x2A)
-#define D_PEDSTD_TIMH                  (768 + 0x2E)
-#define D_PEDSTD_PEAK                  (768 + 0x94)
-#define D_PEDSTD_STEPCTR               (768 + 0x60)
-#define D_PEDSTD_STEPCTR2              (58 * 16 + 8)
+#define D_PEDSTD_BP_B                  (768 + 0x1C)    /* 0x031C */
+#define D_PEDSTD_BP_A4                 (768 + 0x40)    /* 0x0340 */
+#define D_PEDSTD_BP_A3                 (768 + 0x44)    /* 0x0344 */
+#define D_PEDSTD_BP_A2                 (768 + 0x48)    /* 0x0348 */
+#define D_PEDSTD_BP_A1                 (768 + 0x4C)    /* 0x034C */
+#define D_PEDSTD_SB                    (768 + 0x28)    /* 0x0328 */
+#define D_PEDSTD_SB_TIME               (768 + 0x2C)    /* 0x032C */
+#define D_PEDSTD_PEAKTHRSH             (768 + 0x98)    /* 0x0398 */
+#define D_PEDSTD_TIML                  (768 + 0x2A)    /* 0x032A */
+#define D_PEDSTD_TIMH                  (768 + 0x2E)    /* 0x032E */
+#define D_PEDSTD_PEAK                  (768 + 0x94)    /* 0x0394 */
+#define D_PEDSTD_STEPCTR               (768 + 0x60)    /* 0x0360 */
+#define D_PEDSTD_STEPCTR2              (58 * 16 + 8)   /* 0x03A8 */
 #define D_PEDSTD_TIMECTR               (964)
-#define D_PEDSTD_DECI                  (768 + 0xA0)
-#define D_PEDSTD_SB2                   (60 * 16 + 14)
-#define D_STPDET_TIMESTAMP             (28 * 16 + 8)
+#define D_PEDSTD_DECI                  (768 + 0xA0)    /* 0x03A0 */
+#define D_PEDSTD_SB2                   (60 * 16 + 14)  /* 0x03CE */
+#define D_STPDET_TIMESTAMP             (28 * 16 + 8)   /* 0x01C8 */
 #define D_PEDSTD_DRIVE_STATE           (58)
 
 #define D_HOST_NO_MOT                  (976)
 #define D_ACCEL_BIAS                   (660)
 
-#define D_BM_BATCH_CNTR                        (27 * 16 + 4)
-#define D_BM_BATCH_THLD                        (27 * 16 + 12)
-#define D_BM_ENABLE                    (28 * 16 + 6)
-#define D_BM_NUMWORD_TOFILL            (28 * 16 + 4)
+#define D_BM_BATCH_CNTR                        (27 * 16 + 4)   /* 0x01B4 */
+#define D_BM_BATCH_THLD                        (27 * 16 + 12)  /* 0x01BC */
+#define D_BM_ENABLE                    (28 * 16 + 6)   /* 0x01C6 */
+#define D_BM_NUMWORD_TOFILL            (28 * 16 + 4)   /* 0x01C4 */
 
-#define D_SO_DATA                      (4 * 16 + 2)
+#define D_SO_DATA                      (4 * 16 + 2)    /* 0x0042 */
 
-#define D_P_HW_ID                      (22 * 16 + 10)
-#define D_P_INIT                       (22 * 16 + 2)
+#define D_P_HW_ID                      (22 * 16 + 10)  /* 0x016A */
+#define D_P_INIT                       (22 * 16 + 2)   /* 0x0162 */
 
 #define D_DMP_RUN_CNTR                 (24 * 16)       /* 0x0180 */
 
-#define D_ODR_S0                       (45 * 16 + 8)
-#define D_ODR_S1                       (45 * 16 + 12)
-#define D_ODR_S2                       (45 * 16 + 10)
-#define D_ODR_S3                       (45 * 16 + 14)
-#define D_ODR_S4                       (46 * 16 + 8)
-#define D_ODR_S5                       (46 * 16 + 12)
+#define D_ODR_S0                       (45 * 16 + 8)   /* 0x02D8 */
+#define D_ODR_S1                       (45 * 16 + 12)  /* 0x02DC */
+#define D_ODR_S2                       (45 * 16 + 10)  /* 0x02DA */
+#define D_ODR_S3                       (45 * 16 + 14)  /* 0x02DE */
+#define D_ODR_S4                       (46 * 16 + 8)   /* 0x02E8 */
+#define D_ODR_S5                       (46 * 16 + 12)  /* 0x02EC */
 #define D_ODR_S6                       (46 * 16 + 10)  /* 0x02EA */
-#define D_ODR_S7                       (46 * 16 + 14)
-#define D_ODR_S8                       (42 * 16 + 8)
-#define D_ODR_S9                       (42 * 16 + 12)
+#define D_ODR_S7                       (46 * 16 + 14)  /* 0x02EE */
+#define D_ODR_S8                       (42 * 16 + 8)   /* 0x02A8 */
+#define D_ODR_S9                       (42 * 16 + 12)  /* 0x02AC */
 
-#define D_ODR_CNTR_S0                  (45 * 16)
-#define D_ODR_CNTR_S1                  (45 * 16 + 4)
-#define D_ODR_CNTR_S2                  (45 * 16 + 2)
-#define D_ODR_CNTR_S3                  (45 * 16 + 6)
-#define D_ODR_CNTR_S4                  (46 * 16)
-#define D_ODR_CNTR_S5                  (46 * 16 + 4)
+#define D_ODR_CNTR_S0                  (45 * 16)       /* 0x02D0 */
+#define D_ODR_CNTR_S1                  (45 * 16 + 4)   /* 0x02D4 */
+#define D_ODR_CNTR_S2                  (45 * 16 + 2)   /* 0x02D2 */
+#define D_ODR_CNTR_S3                  (45 * 16 + 6)   /* 0x02D6 */
+#define D_ODR_CNTR_S4                  (46 * 16)       /* 0x02E0 */
+#define D_ODR_CNTR_S5                  (46 * 16 + 4)   /* 0x02E4 */
 #define D_ODR_CNTR_S6                  (46 * 16 + 2)   /* 0x02E2 */
-#define D_ODR_CNTR_S7                  (46 * 16 + 6)
-#define D_ODR_CNTR_S8                  (42 * 16)
-#define D_ODR_CNTR_S9                  (42 * 16 + 4)
+#define D_ODR_CNTR_S7                  (46 * 16 + 6)   /* 0x02E6 */
+#define D_ODR_CNTR_S8                  (42 * 16)       /* 0x02A0 */
+#define D_ODR_CNTR_S9                  (42 * 16 + 4)   /* 0x02A4 */
 
-#define D_FS_LPQ0                      (59 * 16)
-#define D_FS_LPQ1                      (59 * 16 + 4)
-#define D_FS_LPQ2                      (59 * 16 + 8)
-#define D_FS_LPQ3                      (59 * 16 + 12)
+#define D_FS_LPQ0                      (59 * 16)       /* 0x03B0 */
+#define D_FS_LPQ1                      (59 * 16 + 4)   /* 0x03B4 */
+#define D_FS_LPQ2                      (59 * 16 + 8)   /* 0x03B8 */
+#define D_FS_LPQ3                      (59 * 16 + 12)  /* 0x03BC */
 
-#define D_FS_Q0                                (12 * 16)
-#define D_FS_Q1                                (12 * 16 + 4)
-#define D_FS_Q2                                (12 * 16 + 8)
-#define D_FS_Q3                                (12 * 16 + 12)
+#define D_FS_Q0                                (12 * 16)       /* 0x00C0 */
+#define D_FS_Q1                                (12 * 16 + 4)   /* 0x00C4 */
+#define D_FS_Q2                                (12 * 16 + 8)   /* 0x00C8 */
+#define D_FS_Q3                                (12 * 16 + 12)  /* 0x00CC */
 
-#define D_FS_9Q0                       (2 * 16)
-#define D_FS_9Q1                       (2 * 16 + 4)
-#define D_FS_9Q2                       (2 * 16 + 8)
-#define D_FS_9Q3                       (2 * 16 + 12)
+#define D_FS_9Q0                       (2 * 16)        /* 0x0020 */
+#define D_FS_9Q1                       (2 * 16 + 4)    /* 0x0024 */
+#define D_FS_9Q2                       (2 * 16 + 8)    /* 0x0028 */
+#define D_FS_9Q3                       (2 * 16 + 12)   /* 0x002C */
 
 #define KEY_CFG_OUT_ACCL               CFG_OUT_ACCL
 #define KEY_CFG_OUT_GYRO               CFG_OUT_GYRO