summaryrefslogtreecommitdiff
path: root/driver/accelgyro_bmi3xx.h
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2022-09-21 14:08:36 -0700
committerTom Hughes <tomhughes@chromium.org>2022-09-22 12:59:38 -0700
commitc453fd704268ef72de871b0c5ac7a989de662334 (patch)
treefcf6ce5810f9ff9e3c8cce434812dd75492269ed /driver/accelgyro_bmi3xx.h
parent6c1587ca70f558b4f96b3f0b18ad8b027d3ba99d (diff)
parent28712dae9d7ed1e694f7622cc083afa71090d4d5 (diff)
downloadchrome-ec-c453fd704268ef72de871b0c5ac7a989de662334.tar.gz
Merge remote-tracking branch cros/main into firmware-fpmcu-dartmonkey-releasefirmware-fpmcu-dartmonkey-release
Generated by: ./util/update_release_branch.py --board dartmonkey --relevant_paths_file ./util/fingerprint-relevant-paths.txt firmware-fpmcu-dartmonkey-release Relevant changes: git log --oneline 6c1587ca70..28712dae9d -- board/nocturne_fp board/dartmonkey common/fpsensor docs/fingerprint driver/fingerprint util/getversion.sh ded9307b79 util/getversion.sh: Fix version when not in a git repo 956055e692 board: change Google USB vendor info 71b2ef709d Update license boilerplate text in source code files 33e11afda0 Revert "fpsensor: Build fpsensor source file with C++" c8d0360723 fpsensor: Build fpsensor source file with C++ bc113abd53 fpsensor: Fix g++ compiler error 150a58a0dc fpsensor: Fix fp_set_sensor_mode return type b33b5ce85b fpsensor: Remove nested designators for C++ compatibility 2e864b2539 tree-wide: const-ify argv for console commands 56d8b360f9 test: Add test for get ikm failure when seed not set 3a3d6c3690 test: Add test for fpsensor trivial key failure 233e6bbd08 fpsensor_crypto: Abstract calls to hmac_SHA256 0a041b285b docs/fingerprint: Typo correction c03fab67e2 docs/fingerprint: Fix the path of fputils.py 0b5d4baf5a util/getversion.sh: Fix empty file list handling 6e128fe760 FPMCU dev board environment with Satlab 3eb29b6aa5 builtin: Move ssize_t to sys/types.h 345d62ebd1 docs/fingerprint: Update power numbers for latest dartmonkey release c25ffdb316 common: Conditionally support printf %l and %i modifiers 9a3c514b45 test: Add a test to check if the debugger is connected 54e603413f Move standard library tests to their own file 43fa6b4bf8 docs/fingerprint: Update power numbers for latest bloonchipper release 25536f9a84 driver/fingerprint/fpc/bep/fpc_sensor_spi.c: Format with clang-format 4face99efd driver/fingerprint/fpc/libfp/fpc_sensor_pal.h: Format with clang-format 738de2b575 trng: Rename rand to trng_rand 14b8270edd docs/fingerprint: Update dragonclaw power numbers 0b268f93d1 driver/fingerprint/fpc/libfp/fpc_private.c: Format with clang-format f80da163f2 driver/fingerprint/fpc/libfp/fpc_private.h: Format with clang-format a0751778f4 board/nocturne_fp/ro_workarounds.c: Format with clang-format 5e9c85c9b1 driver/fingerprint/fpc/libfp/fpc_sensor_pal.c: Format with clang-format c1f9dd3cf8 driver/fingerprint/fpc/libfp/fpc_bio_algorithm.h: Format with clang-format eb1e1bed8d driver/fingerprint/fpc/libfp/fpc1145_private.h: Format with clang-format 6e7b611821 driver/fingerprint/fpc/bep/fpc_bio_algorithm.h: Format with clang-format e0589cd5e2 driver/fingerprint/fpc/bep/fpc1035_private.h: Format with clang-format 58f0246dbe board/nocturne_fp/board_ro.c: Format with clang-format 7905e556a0 common/fpsensor/fpsensor_crypto.c: Format with clang-format 21289d170c driver/fingerprint/fpc/bep/fpc1025_private.h: Format with clang-format 98a20f937e common/fpsensor/fpsensor_state.c: Format with clang-format a2d255d8af common/fpsensor/fpsensor.c: Format with clang-format 84e53a65da board/nocturne_fp/board.h: Format with clang-format 73055eeb3f driver/fingerprint/fpc/bep/fpc_private.c: Format with clang-format 0f7b5cb509 common/fpsensor/fpsensor_private.h: Format with clang-format 1ceade6e65 driver/fingerprint/fpc/bep/fpc_private.h: Format with clang-format dca9d74321 Revert "trng: Rename rand to trng_rand" a6b0b3554f trng: Rename rand to trng_rand 28d0b75b70 third_party/boringssl: Remove unused header BRANCH=None BUG=b:244387210 b:242720240 b:215613183 b:242720910 b:236386294 BUG=b:234181908 b:244781166 b:234781655 b:234143158 b:234181908 BUG=b:237344361 b:236025198 b:234181908 b:180945056 chromium:1098010 BUG=b:246424843 b:234181908 b:131913998 TEST=`make -j buildall` TEST=./util/run_device_tests.py --board dartmonkey Test "aes": PASSED Test "cec": PASSED Test "cortexm_fpu": PASSED Test "crc": PASSED Test "flash_physical": PASSED Test "flash_write_protect": PASSED Test "fpsensor_hw": PASSED Test "fpsensor_spi_ro": PASSED Test "fpsensor_spi_rw": PASSED Test "fpsensor_uart_ro": PASSED Test "fpsensor_uart_rw": PASSED Test "mpu_ro": PASSED Test "mpu_rw": PASSED Test "mutex": PASSED Test "pingpong": PASSED Test "printf": PASSED Test "queue": PASSED Test "rollback_region0": PASSED Test "rollback_region1": PASSED Test "rollback_entropy": PASSED Test "rtc": PASSED Test "sha256": PASSED Test "sha256_unrolled": PASSED Test "static_if": PASSED Test "stdlib": PASSED Test "system_is_locked_wp_on": PASSED Test "system_is_locked_wp_off": PASSED Test "timer_dos": PASSED Test "utils": PASSED Test "utils_str": PASSED Test "panic_data_dartmonkey_v2.0.2887": PASSED Test "panic_data_nocturne_fp_v2.2.64": PASSED Test "panic_data_nami_fp_v2.2.144": PASSED Force-Relevant-Builds: all Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: I2c312583a709fedae8fe11d92c22328c3b634bc7
Diffstat (limited to 'driver/accelgyro_bmi3xx.h')
-rw-r--r--driver/accelgyro_bmi3xx.h308
1 files changed, 155 insertions, 153 deletions
diff --git a/driver/accelgyro_bmi3xx.h b/driver/accelgyro_bmi3xx.h
index 13037fbe51..e128b8381c 100644
--- a/driver/accelgyro_bmi3xx.h
+++ b/driver/accelgyro_bmi3xx.h
@@ -1,4 +1,4 @@
-/* Copyright 2021 The Chromium OS Authors. All rights reserved.
+/* Copyright 2021 The ChromiumOS Authors
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
@@ -9,199 +9,201 @@
#define __CROS_EC_ACCELGYRO_BMI3XX_H
/* Sensor Specific macros */
-#define BMI3_ADDR_I2C_PRIM 0x68
-#define BMI3_ADDR_I2C_SEC 0x69
-#define BMI3_16_BIT_RESOLUTION 16
+#define BMI3_ADDR_I2C_PRIM 0x68
+#define BMI3_ADDR_I2C_SEC 0x69
+#define BMI3_16_BIT_RESOLUTION 16
/* Chip-specific registers */
-#define BMI3_REG_CHIP_ID 0x00
-
-#define BMI3_REG_STATUS 0x02
-#define BMI3_STAT_DATA_RDY_ACCEL_POS 7
-#define BMI3_STAT_DATA_RDY_ACCEL_MSK 0x80
-
-#define BMI3_REG_ACC_DATA_X 0x03
-#define BMI3_ACC_RANGE_2G 0x00
-#define BMI3_ACC_RANGE_4G 0x01
-#define BMI3_ACC_RANGE_8G 0x02
-#define BMI3_ACC_RANGE_16G 0x03
-#define BMI3_ACC_MODE_DISABLE 0x00
-#define BMI3_ACC_MODE_LOW_PWR 0x03
-#define BMI3_ACC_MODE_NORMAL 0X04
-#define BMI3_ACC_MODE_HIGH_PERF 0x07
-
-#define BMI3_REG_GYR_DATA_X 0x06
-#define BMI3_GYR_RANGE_125DPS 0x00
-#define BMI3_GYR_RANGE_250DPS 0x01
-#define BMI3_GYR_RANGE_500DPS 0x02
-#define BMI3_GYR_RANGE_1000DPS 0x03
-#define BMI3_GYR_RANGE_2000DPS 0x04
-#define BMI3_GYR_MODE_DISABLE 0x00
-#define BMI3_GYR_MODE_SUSPEND 0X01
-#define BMI3_GYR_MODE_ULTRA_LOW_PWR 0X02
-#define BMI3_GYR_MODE_LOW_PWR 0x03
-#define BMI3_GYR_MODE_NORMAL 0X04
-#define BMI3_GYR_MODE_HIGH_PERF 0x07
-
-#define BMI3_REG_INT_STATUS_INT1 0x0D
-#define BMI3_REG_FIFO_FILL_LVL 0x15
-#define BMI3_REG_FIFO_DATA 0x16
-#define BMI3_REG_ACC_CONF 0x20
-#define BMI3_REG_GYR_CONF 0x21
-#define BMI3_REG_INT_MAP1 0x3A
-#define BMI3_REG_FIFO_WATERMARK 0x35
-#define BMI3_REG_UGAIN_OFF_SEL 0x3F
-#define BMI3_REG_FIFO_CONF 0x36
-#define BMI3_FIFO_STOP_ON_FULL 0x01
-#define BMI3_FIFO_TIME_EN 0x01
-#define BMI3_FIFO_ACC_EN 0x02
-#define BMI3_FIFO_GYR_EN 0x04
-#define BMI3_FIFO_TEMP_EN 0x08
-#define BMI3_FIFO_ALL_EN 0x0F
-
-#define BMI3_REG_FIFO_CTRL 0x37
-#define BMI3_REG_IO_INT_CTRL 0x38
-#define BMI3_INT1_LVL_MASK 0x01
-#define BMI3_INT1_OD_MASK 0x02
-#define BMI3_INT1_OD_POS 1
-#define BMI3_INT1_OUTPUT_EN_MASK 0x04
-#define BMI3_INT1_OUTPUT_EN_POS 2
-#define BMI3_INT_PUSH_PULL 0
-#define BMI3_INT_OPEN_DRAIN 1
-#define BMI3_INT_ACTIVE_LOW 0
-#define BMI3_INT_ACTIVE_HIGH 1
-
-#define BMI3_REG_IO_INT_CONF 0x39
-#define BMI3_INT_LATCH_EN 1
-#define BMI3_INT_LATCH_DISABLE 0
-
-#define BMI3_REG_FEATURE_ENGINE_GLOB_CTRL 0x40
-
-#define BMI3_FEATURE_EVENT_EXT 0x47
-#define BMI3_PORTRAIT_LANDSCAPE_MASK 0x03
-#define BMI3_PORTRAIT 0
-#define BMI3_LANDSCAPE 1
-#define BMI3_PORTRAIT_INVERT 2
-#define BMI3_LANDSCAPE_INVERT 3
-
-#define ACC_DP_OFF_X 0x60
-#define GYR_DP_OFF_X 0x66
-
-#define BMI3_REG_CMD 0x7E
-#define BMI3_CMD_SOFT_RESET 0xDEAF
+#define BMI3_REG_CHIP_ID 0x00
+
+#define BMI3_REG_STATUS 0x02
+#define BMI3_STAT_DATA_RDY_ACCEL_POS 7
+#define BMI3_STAT_DATA_RDY_ACCEL_MSK 0x80
+
+#define BMI3_REG_ACC_DATA_X 0x03
+#define BMI3_ACC_RANGE_2G 0x00
+#define BMI3_ACC_RANGE_4G 0x01
+#define BMI3_ACC_RANGE_8G 0x02
+#define BMI3_ACC_RANGE_16G 0x03
+#define BMI3_ACC_MODE_DISABLE 0x00
+#define BMI3_ACC_MODE_LOW_PWR 0x03
+#define BMI3_ACC_MODE_NORMAL 0X04
+#define BMI3_ACC_MODE_HIGH_PERF 0x07
+
+#define BMI3_REG_GYR_DATA_X 0x06
+#define BMI3_GYR_RANGE_125DPS 0x00
+#define BMI3_GYR_RANGE_250DPS 0x01
+#define BMI3_GYR_RANGE_500DPS 0x02
+#define BMI3_GYR_RANGE_1000DPS 0x03
+#define BMI3_GYR_RANGE_2000DPS 0x04
+#define BMI3_GYR_MODE_DISABLE 0x00
+#define BMI3_GYR_MODE_SUSPEND 0X01
+#define BMI3_GYR_MODE_ULTRA_LOW_PWR 0X02
+#define BMI3_GYR_MODE_LOW_PWR 0x03
+#define BMI3_GYR_MODE_NORMAL 0X04
+#define BMI3_GYR_MODE_HIGH_PERF 0x07
+
+#define BMI3_REG_INT_STATUS_INT1 0x0D
+#define BMI3_REG_FIFO_FILL_LVL 0x15
+#define BMI3_REG_FIFO_DATA 0x16
+#define BMI3_REG_ACC_CONF 0x20
+#define BMI3_REG_GYR_CONF 0x21
+#define BMI3_REG_INT_MAP1 0x3A
+#define BMI3_REG_FIFO_WATERMARK 0x35
+#define BMI3_REG_UGAIN_OFF_SEL 0x3F
+#define BMI3_REG_FIFO_CONF 0x36
+#define BMI3_FIFO_STOP_ON_FULL 0x01
+#define BMI3_FIFO_TIME_EN 0x01
+#define BMI3_FIFO_ACC_EN 0x02
+#define BMI3_FIFO_GYR_EN 0x04
+#define BMI3_FIFO_TEMP_EN 0x08
+#define BMI3_FIFO_ALL_EN 0x0F
+
+#define BMI3_REG_FIFO_CTRL 0x37
+#define BMI3_REG_IO_INT_CTRL 0x38
+#define BMI3_INT1_LVL_MASK 0x01
+#define BMI3_INT1_OD_MASK 0x02
+#define BMI3_INT1_OD_POS 1
+#define BMI3_INT1_OUTPUT_EN_MASK 0x04
+#define BMI3_INT1_OUTPUT_EN_POS 2
+#define BMI3_INT_PUSH_PULL 0
+#define BMI3_INT_OPEN_DRAIN 1
+#define BMI3_INT_ACTIVE_LOW 0
+#define BMI3_INT_ACTIVE_HIGH 1
+
+#define BMI3_REG_IO_INT_CONF 0x39
+#define BMI3_INT_LATCH_EN 1
+#define BMI3_INT_LATCH_DISABLE 0
+
+#define BMI3_REG_FEATURE_ENGINE_GLOB_CTRL 0x40
+
+#define BMI3_FEATURE_EVENT_EXT 0x47
+#define BMI3_PORTRAIT_LANDSCAPE_MASK 0x03
+#define BMI3_PORTRAIT 0
+#define BMI3_LANDSCAPE 1
+#define BMI3_PORTRAIT_INVERT 2
+#define BMI3_LANDSCAPE_INVERT 3
+
+#define BMI3_ACC_DP_OFF_X 0x60
+#define BMI3_ACC_DP_OFF_Y 0x62
+#define BMI3_ACC_DP_OFF_Z 0x64
+
+#define BMI3_GYR_DP_OFF_X 0x66
+#define BMI3_GYR_DP_OFF_Y 0x68
+#define BMI3_GYR_DP_OFF_Z 0x6A
+
+#define BMI3_REG_CMD 0x7E
+#define BMI3_CMD_SOFT_RESET 0xDEAF
/* BMI3 Interrupt Output Enable */
-#define BMI3_INT_OUTPUT_DISABLE 0
-#define BMI3_INT_OUTPUT_ENABLE 1
+#define BMI3_INT_OUTPUT_DISABLE 0
+#define BMI3_INT_OUTPUT_ENABLE 1
/* FIFO sensor data length (in word), Accel or Gyro */
-#define BMI3_FIFO_ENTRY 0x3
+#define BMI3_FIFO_ENTRY 0x3
/* Macro to define accelerometer configuration value for FOC */
-#define BMI3_FOC_ACC_CONF_VAL_LSB 0xB7
-#define BMI3_FOC_ACC_CONF_VAL_MSB 0x40
+#define BMI3_FOC_ACC_CONF_VAL_LSB 0xB7
+#define BMI3_FOC_ACC_CONF_VAL_MSB 0x40
/* Macro to define the accel FOC range */
-#define BMI3_ACC_FOC_2G_REF 16384
-#define BMI3_ACC_FOC_4G_REF 8192
-#define BMI3_ACC_FOC_8G_REF 4096
-#define BMI3_ACC_FOC_16G_REF 2048
-#define BMI3_FOC_SAMPLE_LIMIT 32
+#define BMI3_ACC_FOC_2G_REF 16384
+#define BMI3_ACC_FOC_4G_REF 8192
+#define BMI3_ACC_FOC_8G_REF 4096
+#define BMI3_ACC_FOC_16G_REF 2048
+#define BMI3_FOC_SAMPLE_LIMIT 32
-#define FOC_TRY_COUNT 5
+#define FOC_TRY_COUNT 5
/* 20ms delay for 50Hz ODR */
-#define FOC_DELAY 20
-#define OFFSET_UPDATE_DELAY 120
-#define BMI3_INT_STATUS_FWM 0x4000
-#define BMI3_INT_STATUS_FFULL 0x8000
-#define BMI3_INT_STATUS_ORIENTATION 0x0008
+#define FOC_DELAY 20
+#define OFFSET_UPDATE_DELAY 120
+#define BMI3_INT_STATUS_FWM 0x4000
+#define BMI3_INT_STATUS_FFULL 0x8000
+#define BMI3_INT_STATUS_ORIENTATION 0x0008
-
-#define BMI3_FIFO_GYRO_I2C_SYNC_FRAME 0x7f02
-#define BMI3_FIFO_ACCEL_I2C_SYNC_FRAME 0x7f01
+#define BMI3_FIFO_GYRO_I2C_SYNC_FRAME 0x7f02
+#define BMI3_FIFO_ACCEL_I2C_SYNC_FRAME 0x7f01
/* Gyro self calibration address */
-#define BMI3_BASE_ADDR_SC 0x26
-#define BMI3_CMD_SELF_CALIB 0x0101
+#define BMI3_BASE_ADDR_SC 0x26
+#define BMI3_CMD_SELF_CALIB 0x0101
/* Feature engine General purpose register 1. */
-#define BMI3_FEATURE_IO_0 0x10
-#define BMI3_ANY_MOTION_X_EN_MASK 0x08
+#define BMI3_FEATURE_IO_0 0x10
+#define BMI3_ANY_MOTION_X_EN_MASK 0x08
-#define BMI3_FEATURE_IO_1 0x11
-#define BMI3_FEATURE_IO_1_ERROR_MASK 0x0F
-#define BMI3_FEATURE_IO_1_NO_ERROR 0x05
-#define BMI3_SC_ST_STATUS_MASK 0x10
-#define BMI3_SC_RESULT_MASK 0x20
-#define BMI3_UGAIN_OFFS_UPD_COMPLETE 0x01
+#define BMI3_FEATURE_IO_1 0x11
+#define BMI3_FEATURE_IO_1_ERROR_MASK 0x0F
+#define BMI3_FEATURE_IO_1_NO_ERROR 0x05
+#define BMI3_SC_ST_STATUS_MASK 0x10
+#define BMI3_SC_RESULT_MASK 0x20
+#define BMI3_UGAIN_OFFS_UPD_COMPLETE 0x01
-#define BMI3_FEATURE_IO_STATUS 0x14
+#define BMI3_FEATURE_IO_STATUS 0x14
/*
* The max positive value of accel data is 0x7FFF, equal to range(g)
* So, in order to get +1g, divide the 0x7FFF by range
*/
-#define BMI3_ACC_DATA_PLUS_1G(range) (0x7FFF / (range))
+#define BMI3_ACC_DATA_PLUS_1G(range) (0x7FFF / (range))
#define BMI3_ACC_DATA_MINUS_1G(range) (-BMI3_ACC_DATA_PLUS_1G(range))
/* Offset DMA registers */
-#define BMI3_ACC_OFFSET_ADDR 0x40
-#define BMI3_GYRO_OFFSET_ADDR 0x46
+#define BMI3_ACC_OFFSET_ADDR 0x40
+#define BMI3_GYRO_OFFSET_ADDR 0x46
/*
* Start address of the DMA transaction. Has to be written to initiate a
* transaction.
*/
-#define BMI3_FEATURE_ENGINE_DMA_TX 0x41
+#define BMI3_FEATURE_ENGINE_DMA_TX 0x41
/* DMA read/write data. On read transaction expect first word to be zero. */
-#define BMI3_FEATURE_ENGINE_DMA_TX_DATA 0x42
+#define BMI3_FEATURE_ENGINE_DMA_TX_DATA 0x42
/* Command for offset update */
-#define BMI3_CMD_USR_GAIN_OFFS_UPDATE 0x301
+#define BMI3_CMD_USR_GAIN_OFFS_UPDATE 0x301
/* 1LSB - 31 Micro-G */
-#define BMI3_OFFSET_ACC_MULTI_MG (31 * 1000)
+#define BMI3_OFFSET_ACC_MULTI_MG (31 * 1000)
/* 1LSB = 61 milli-dps*/
-#define BMI3_OFFSET_GYR_MDPS (61 * 1000)
+#define BMI3_OFFSET_GYR_MDPS (61 * 1000)
-#define BMI3_FIFO_BUFFER 32
+#define BMI3_FIFO_BUFFER 32
/* General Macro Definitions */
/* LSB and MSB mask definitions */
-#define BMI3_SET_LOW_BYTE 0x00FF
-#define BMI3_SET_HIGH_BYTE 0xFF00
+#define BMI3_SET_LOW_BYTE 0x00FF
+#define BMI3_SET_HIGH_BYTE 0xFF00
/* For enable and disable */
-#define BMI3_ENABLE 0x1
-#define BMI3_DISABLE 0x0
+#define BMI3_ENABLE 0x1
+#define BMI3_DISABLE 0x0
/* Defines mode of operation for Accelerometer */
-#define BMI3_POWER_MODE_MASK 0x70
-#define BMI3_POWER_MODE_POS 4
+#define BMI3_POWER_MODE_MASK 0x70
+#define BMI3_POWER_MODE_POS 4
-#define BMI3_SENS_ODR_MASK 0x0F
+#define BMI3_SENS_ODR_MASK 0x0F
/* Full scale, Resolution */
-#define BMI3_SENS_RANGE_MASK 0x70
-#define BMI3_SENS_RANGE_POS 4
+#define BMI3_SENS_RANGE_MASK 0x70
+#define BMI3_SENS_RANGE_POS 4
-#define BMI3_CHIP_ID_MASK 0xFF
+#define BMI3_CHIP_ID_MASK 0xFF
/* Map FIFO water-mark interrupt to either INT1 or INT2 or IBI */
-#define BMI3_FWM_INT_MASK 0x30
-#define BMI3_FWM_INT_POS 4
+#define BMI3_FWM_INT_MASK 0x30
+#define BMI3_FWM_INT_POS 4
/* Map FIFO full interrupt to either INT1 or INT2 or IBI */
-#define BMI3_FFULL_INT_MASK 0xC0
-#define BMI3_FFULL_INT_POS 6
-
-#define BMI3_ORIENT_INT_MASK 0xC0
-#define BMI3_ORIENT_INT_POS 6
-
+#define BMI3_FFULL_INT_MASK 0xC0
+#define BMI3_FFULL_INT_POS 6
+#define BMI3_ORIENT_INT_MASK 0xC0
+#define BMI3_ORIENT_INT_POS 6
/* Mask definitions for interrupt pin configuration */
-#define BMI3_INT_LATCH_MASK 0x0001
+#define BMI3_INT_LATCH_MASK 0x0001
/**
* Current fill level of FIFO buffer
@@ -210,7 +212,10 @@
* fifo_flush. The word counter is updated each time a complete frame was read
* or written.
*/
-#define BMI3_FIFO_FILL_LVL_MASK 0x07FF
+#define BMI3_FIFO_FILL_LVL_MASK 0x07FF
+
+/* Root mean square noise of 100 Hz accelerometer, units: ug */
+#define BMI3_ACCEL_RMS_NOISE_100HZ 1200
/* Enum to define interrupt lines */
enum bmi3_hw_int_pin {
@@ -236,24 +241,21 @@ enum sensor_index_t {
NUM_OF_PRIMARY_SENSOR,
};
-#define BMI3_DRDY_OFF(_sensor) (7 - (_sensor))
-#define BMI3_DRDY_MASK(_sensor) (1 << BMI3_DRDY_OFF(_sensor))
+#define BMI3_DRDY_OFF(_sensor) (7 - (_sensor))
+#define BMI3_DRDY_MASK(_sensor) (1 << BMI3_DRDY_OFF(_sensor))
/* Utility macros */
-#define BMI3_SET_BITS(reg_data, bitname, data) \
- ((reg_data & ~(bitname##_MASK)) | \
- ((data << bitname##_POS) & bitname##_MASK))
+#define BMI3_SET_BITS(reg_data, bitname, data) \
+ ((reg_data & ~(bitname##_MASK)) | \
+ ((data << bitname##_POS) & bitname##_MASK))
-#define BMI3_GET_BITS(reg_data, bitname) \
- ((reg_data & (bitname##_MASK)) >> \
- (bitname##_POS))
+#define BMI3_GET_BITS(reg_data, bitname) \
+ ((reg_data & (bitname##_MASK)) >> (bitname##_POS))
-#define BMI3_SET_BIT_POS0(reg_data, bitname, data) \
- ((reg_data & ~(bitname##_MASK)) | \
- (data & bitname##_MASK))
+#define BMI3_SET_BIT_POS0(reg_data, bitname, data) \
+ ((reg_data & ~(bitname##_MASK)) | (data & bitname##_MASK))
-#define BMI3_GET_BIT_POS0(reg_data, bitname) \
- (reg_data & (bitname##_MASK))
+#define BMI3_GET_BIT_POS0(reg_data, bitname) (reg_data & (bitname##_MASK))
extern const struct accelgyro_drv bmi3xx_drv;
@@ -274,9 +276,9 @@ void bmi3xx_interrupt(enum gpio_signal signal);
* bmi3xx-int = &base_accel;
* };
*/
-#define CONFIG_ACCELGYRO_BMI3XX_INT_EVENT \
+#define CONFIG_ACCELGYRO_BMI3XX_INT_EVENT \
TASK_EVENT_MOTION_SENSOR_INTERRUPT(SENSOR_ID(DT_ALIAS(bmi3xx_int)))
#endif
-#endif /* CONFIG_ZEPHYR */
+#endif /* CONFIG_ZEPHYR */
#endif /* __CROS_EC_ACCELGYRO_BMI3XX_H */