From 83cfcd41fcacbb5b1ff6a0809922899d53d334d0 Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Fri, 18 Jun 2021 10:36:06 -0500 Subject: [PATCH] drivers: sensor: icm42605: Fix build issues If CONFIG_ICM42605_TRIGGER is not set the driver doesn't build. There are a few places that need ifdefs based on CONFIG_ICM42605_TRIGGER for the driver to build correctly. Signed-off-by: Kumar Gala --- drivers/sensor/icm42605/icm42605.c | 4 ++++ drivers/sensor/icm42605/icm42605.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/drivers/sensor/icm42605/icm42605.c b/drivers/sensor/icm42605/icm42605.c index 1801488f40a..df572fab330 100644 --- a/drivers/sensor/icm42605/icm42605.c +++ b/drivers/sensor/icm42605/icm42605.c @@ -421,10 +421,12 @@ static int icm42605_init(const struct device *dev) drv_data->accel_sensitivity_shift = 14 - 3; drv_data->gyro_sensitivity_x10 = icm42605_gyro_sensitivity_x10[3]; +#ifdef CONFIG_ICM42605_TRIGGER if (icm42605_init_interrupt(dev) < 0) { LOG_ERR("Failed to initialize interrupts."); return -EIO; } +#endif LOG_DBG("Initialize interrupt done"); @@ -432,7 +434,9 @@ static int icm42605_init(const struct device *dev) } static const struct sensor_driver_api icm42605_driver_api = { +#ifdef CONFIG_ICM42605_TRIGGER .trigger_set = icm42605_trigger_set, +#endif .sample_fetch = icm42605_sample_fetch, .channel_get = icm42605_channel_get, .attr_set = icm42605_attr_set, diff --git a/drivers/sensor/icm42605/icm42605.h b/drivers/sensor/icm42605/icm42605.h index 8d8c6ec9f99..a5d7b5b6ad9 100644 --- a/drivers/sensor/icm42605/icm42605.h +++ b/drivers/sensor/icm42605/icm42605.h @@ -58,9 +58,11 @@ struct icm42605_data { struct sensor_trigger double_tap_trigger; sensor_trigger_handler_t double_tap_handler; +#ifdef CONFIG_ICM42605_TRIGGER K_KERNEL_STACK_MEMBER(thread_stack, CONFIG_ICM42605_THREAD_STACK_SIZE); struct k_thread thread; struct k_sem gpio_sem; +#endif struct spi_cs_control spi_cs; struct spi_config spi_cfg;