summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGwendal Grignou <gwendal@chromium.org>2020-10-20 23:45:19 -0700
committerCommit Bot <commit-bot@chromium.org>2021-10-12 15:10:49 +0000
commit5538f961c1c9146c93ed7b3da0fe6447202090dc (patch)
tree4a21051dd068baa3782c7fcdc6a40998c85bd95d
parent240efa3893bb7b8d5e1cbef288d18cb963866466 (diff)
downloadchrome-ec-5538f961c1c9146c93ed7b3da0fe6447202090dc.tar.gz
driver: bmi260: Use IS_ENABLED()
Add IS_ENABLED() instead of #ifdef when possible in bmi260 and bmi_common. BUG=chromium:1140877 BRANCH=none TEST=buildall Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: If8e36ed2a527e8a4ac9582a7b30fe7f7ff589a30 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2489461 Reviewed-by: Ching-Kang Yen <chingkang@chromium.org> (cherry picked from commit 2d900dc16b610703296803e438a8728036c06ea4) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3214011 Tested-by: Rong Chang <rongchang@chromium.org> Auto-Submit: Rong Chang <rongchang@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Rong Chang <rongchang@chromium.org>
-rw-r--r--driver/accelgyro_bmi260.c50
-rw-r--r--driver/accelgyro_bmi_common.c20
-rw-r--r--driver/accelgyro_bmi_common.h5
3 files changed, 32 insertions, 43 deletions
diff --git a/driver/accelgyro_bmi260.c b/driver/accelgyro_bmi260.c
index 9ebd7bfa7e..d7264d4512 100644
--- a/driver/accelgyro_bmi260.c
+++ b/driver/accelgyro_bmi260.c
@@ -292,18 +292,17 @@ static int config_interrupt(const struct motion_sensor_t *s)
ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
BMI260_INT1_IO_CTRL,
BMI260_INT1_OUTPUT_EN);
-#ifdef CONFIG_ACCELGYRO_BMI260_INT2_OUTPUT
- /* TODO(chingkang): Test it if we want int2 as an interrupt */
- /* configure int2 as an interrupt */
- ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
- BMI260_INT2_IO_CTRL,
- BMI260_INT2_OUTPUT_EN);
-#else
- /* configure int2 as an external input. */
- ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
- BMI260_INT2_IO_CTRL,
- BMI260_INT2_INPUT_EN);
-#endif
+ if (IS_ENABLED(CONFIG_ACCELGYRO_BMI260_INT2_OUTPUT))
+ /* TODO(chingkang): Test it if we want int2 as an interrupt */
+ /* configure int2 as an interrupt */
+ ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
+ BMI260_INT2_IO_CTRL,
+ BMI260_INT2_OUTPUT_EN);
+ else
+ /* configure int2 as an external input. */
+ ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
+ BMI260_INT2_IO_CTRL,
+ BMI260_INT2_INPUT_EN);
if (IS_ENABLED(CONFIG_ACCEL_FIFO)) {
/* map fifo water mark to int 1 */
@@ -320,17 +319,16 @@ static int config_interrupt(const struct motion_sensor_t *s)
BMI260_FIFO_WTM_0, 1);
ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
BMI260_FIFO_WTM_1, 0);
-#ifdef CONFIG_ACCELGYRO_BMI260_INT2_OUTPUT
- ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
- BMI260_FIFO_CONFIG_1,
- BMI260_FIFO_HEADER_EN);
-#else
- ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
- BMI260_FIFO_CONFIG_1,
- (BMI260_FIFO_TAG_INT_LEVEL <<
- BMI260_FIFO_TAG_INT2_EN_OFFSET) |
- BMI260_FIFO_HEADER_EN);
-#endif
+ if (IS_ENABLED(CONFIG_ACCELGYRO_BMI260_INT2_OUTPUT))
+ ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
+ BMI260_FIFO_CONFIG_1,
+ BMI260_FIFO_HEADER_EN);
+ else
+ ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
+ BMI260_FIFO_CONFIG_1,
+ (BMI260_FIFO_TAG_INT_LEVEL <<
+ BMI260_FIFO_TAG_INT2_EN_OFFSET) |
+ BMI260_FIFO_HEADER_EN);
/* disable FIFO sensortime frame */
ret = bmi_write8(s->port, s->i2c_spi_addr_flags,
BMI260_FIFO_CONFIG_0, 0);
@@ -539,11 +537,9 @@ static int init(const struct motion_sensor_t *s)
saved_data->odr = 0;
bmi_set_range(s, s->default_range, 0);
- if (s->type == MOTIONSENSE_TYPE_ACCEL) {
-#ifdef CONFIG_ACCEL_INTERRUPTS
+ if (IS_ENABLED(CONFIG_ACCEL_INTERRUPTS) &&
+ (s->type == MOTIONSENSE_TYPE_ACCEL))
ret = config_interrupt(s);
-#endif
- }
return sensor_init_done(s);
}
diff --git a/driver/accelgyro_bmi_common.c b/driver/accelgyro_bmi_common.c
index e721544b5d..b031d1a1a7 100644
--- a/driver/accelgyro_bmi_common.c
+++ b/driver/accelgyro_bmi_common.c
@@ -12,6 +12,8 @@
#include "accelgyro.h"
#include "console.h"
#include "driver/accelgyro_bmi_common.h"
+#include "driver/mag_bmm150.h"
+#include "driver/mag_lis2mdl.h"
#include "i2c.h"
#include "math_util.h"
#include "motion_sense_fifo.h"
@@ -141,7 +143,7 @@ int bmi_get_engineering_val(const int reg_val,
}
#ifdef CONFIG_SPI_ACCEL_PORT
-int bmi_spi_raw_read(const int addr, const uint8_t reg,
+static int bmi_spi_raw_read(const int addr, const uint8_t reg,
uint8_t *data, const int len)
{
uint8_t cmd = 0x80 | reg;
@@ -361,17 +363,13 @@ void bmi_normalize(const struct motion_sensor_t *s, intv3_t v, uint8_t *input)
int i;
struct accelgyro_saved_data_t *data = BMI_GET_SAVED_DATA(s);
-#ifdef CONFIG_MAG_BMI_BMM150
- if (s->type == MOTIONSENSE_TYPE_MAG)
+ if (IS_ENABLED(CONFIG_MAG_BMI_BMM150) &&
+ (s->type == MOTIONSENSE_TYPE_MAG)) {
bmm150_normalize(s, v, input);
- else
-#endif
-#ifdef CONFIG_MAG_BMI_LIS2MDL
- if (s->type == MOTIONSENSE_TYPE_MAG)
- lis2mdl_normalize(s, v, data);
- else
-#endif
- {
+ } else if (IS_ENABLED(CONFIG_MAG_BMI_LIS2MDL) &&
+ (s->type == MOTIONSENSE_TYPE_MAG)) {
+ lis2mdl_normalize(s, v, input);
+ } else {
v[0] = ((int16_t)((input[1] << 8) | input[0]));
v[1] = ((int16_t)((input[3] << 8) | input[2]));
v[2] = ((int16_t)((input[5] << 8) | input[4]));
diff --git a/driver/accelgyro_bmi_common.h b/driver/accelgyro_bmi_common.h
index 1186ab8ef2..9f082e85f1 100644
--- a/driver/accelgyro_bmi_common.h
+++ b/driver/accelgyro_bmi_common.h
@@ -189,11 +189,6 @@ int bmi_get_engineering_val(const int reg_val,
const struct bmi_accel_param_pair *pairs,
const int size);
-#ifdef CONFIG_SPI_ACCEL_PORT
-int bmi_spi_raw_read(const int addr, const uint8_t reg,
- uint8_t *data, const int len);
-#endif
-
/**
* Read 8bit register from accelerometer.
*/