Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iio:st_sensors fix build when !CONFIG_IIO_TRIGGER

Partly a case of removing unused headers and partly a case
of ifdefing out the iio_trigger_ops structures. This has
come about because of an 'unusual' separation of code in this
driver.

Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Denis Ciocca <denis.ciocca@st.com>

+14 -11
+7 -2
drivers/iio/accel/st_accel_core.c
··· 20 20 #include <linux/irq.h> 21 21 #include <linux/iio/iio.h> 22 22 #include <linux/iio/sysfs.h> 23 - #include <linux/iio/trigger_consumer.h> 23 + #include <linux/iio/trigger.h> 24 24 #include <linux/iio/buffer.h> 25 25 26 26 #include <linux/iio/common/st_sensors.h> ··· 419 419 .write_raw = &st_accel_write_raw, 420 420 }; 421 421 422 + #ifdef CONFIG_IIO_TRIGGER 422 423 static const struct iio_trigger_ops st_accel_trigger_ops = { 423 424 .owner = THIS_MODULE, 424 425 .set_trigger_state = ST_ACCEL_TRIGGER_SET_STATE, 425 426 }; 427 + #define ST_ACCEL_TRIGGER_OPS (&st_accel_trigger_ops) 428 + #else 429 + #define ST_ACCEL_TRIGGER_OPS NULL 430 + #endif 426 431 427 432 int st_accel_common_probe(struct iio_dev *indio_dev) 428 433 { ··· 460 455 goto st_accel_common_probe_error; 461 456 462 457 err = st_sensors_allocate_trigger(indio_dev, 463 - &st_accel_trigger_ops); 458 + ST_ACCEL_TRIGGER_OPS); 464 459 if (err < 0) 465 460 goto st_accel_probe_trigger_error; 466 461 }
-1
drivers/iio/accel/st_accel_i2c.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/i2c.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_i2c.h>
-1
drivers/iio/accel/st_accel_spi.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/spi/spi.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_spi.h>
+7 -2
drivers/iio/gyro/st_gyro_core.c
··· 21 21 #include <linux/delay.h> 22 22 #include <linux/iio/iio.h> 23 23 #include <linux/iio/sysfs.h> 24 - #include <linux/iio/trigger_consumer.h> 24 + #include <linux/iio/trigger.h> 25 25 #include <linux/iio/buffer.h> 26 26 27 27 #include <linux/iio/common/st_sensors.h> ··· 287 287 .write_raw = &st_gyro_write_raw, 288 288 }; 289 289 290 + #ifdef CONFIG_IIO_TRIGGER 290 291 static const struct iio_trigger_ops st_gyro_trigger_ops = { 291 292 .owner = THIS_MODULE, 292 293 .set_trigger_state = ST_GYRO_TRIGGER_SET_STATE, 293 294 }; 295 + #define ST_GYRO_TRIGGER_OPS (&st_gyro_trigger_ops) 296 + #else 297 + #define ST_GYRO_TRIGGER_OPS NULL 298 + #endif 294 299 295 300 int st_gyro_common_probe(struct iio_dev *indio_dev) 296 301 { ··· 328 323 goto st_gyro_common_probe_error; 329 324 330 325 err = st_sensors_allocate_trigger(indio_dev, 331 - &st_gyro_trigger_ops); 326 + ST_GYRO_TRIGGER_OPS); 332 327 if (err < 0) 333 328 goto st_gyro_probe_trigger_error; 334 329 }
-1
drivers/iio/gyro/st_gyro_i2c.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/i2c.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_i2c.h>
-1
drivers/iio/gyro/st_gyro_spi.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/spi/spi.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_spi.h>
-1
drivers/iio/magnetometer/st_magn_core.c
··· 21 21 #include <linux/delay.h> 22 22 #include <linux/iio/iio.h> 23 23 #include <linux/iio/sysfs.h> 24 - #include <linux/iio/trigger_consumer.h> 25 24 #include <linux/iio/buffer.h> 26 25 27 26 #include <linux/iio/common/st_sensors.h>
-1
drivers/iio/magnetometer/st_magn_i2c.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/i2c.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_i2c.h>
-1
drivers/iio/magnetometer/st_magn_spi.c
··· 13 13 #include <linux/slab.h> 14 14 #include <linux/spi/spi.h> 15 15 #include <linux/iio/iio.h> 16 - #include <linux/iio/trigger.h> 17 16 18 17 #include <linux/iio/common/st_sensors.h> 19 18 #include <linux/iio/common/st_sensors_spi.h>