Linux IIO development
 help / color / mirror / Atom feed
* [PATCH v2 0/7] iio: Rework i2c_device_id initialisation
@ 2026-05-19  8:13 Uwe Kleine-König (The Capable Hub)
  2026-05-19  8:13 ` [PATCH v2 1/7] iio: Drop unused driver_data in four i2c drivers Uwe Kleine-König (The Capable Hub)
                   ` (6 more replies)
  0 siblings, 7 replies; 17+ messages in thread
From: Uwe Kleine-König (The Capable Hub) @ 2026-05-19  8:13 UTC (permalink / raw)
  To: Jonathan Cameron
  Cc: Matteo Martelli, David Lechner, Nuno Sá, Andy Shevchenko,
	Mikael Gonella-Bolduc, Sakari Ailus, Linus Walleij, linux-iio,
	linux-kernel, Marcelo Schmitt, Lars-Peter Clausen,
	Michael Hennerich, Shi Hao, Puranjay Mohan, Cosmin Tanislav,
	Antoniu Miclaus, Ramona Gradinariu, Petre Rodan, Dan Robertson,
	Herve Codina, Matti Vaittinen, Francesco Dolcini,
	João Paulo Gonçalves, Hugo Villeneuve, Anshul Dalal,
	Gustavo Silva, Andreas Klinger, Tomasz Duszynski, Ariana Lazar,
	Rui Miguel Silva, Javier Carrasco, Li peiyu, Lorenzo Bianconi,
	Alex Lanzano, Jagath Jog J, Jean-Baptiste Maneyrol, Remi Buisson,
	Christian Eggers, Mudit Sharma, Kevin Tsai, Ondřej Jirman,
	Dixit Parmar, Gerald Loacker, Akhilesh Patil, Eddie James,
	Petar Stoykov, Song Qiang, Siratul Islam, Crt Mori, Waqar Hameed,
	Sebastian Andrzej Siewior, Gustavo Vaz, Marcus Folkesson,
	Guenter Roeck, Bartosz Golaszewski, Chuang Zhu, Kyle Hsieh,
	Giorgi Tchankvetadze, Chen-Yu Tsai, Oleksij Rempel,
	Romain Gantois, Sander Vanheule, David Jander, Andrew Davis,
	chuguangqing, Shrikant Raskar, Kurt Borja, Denis Benato,
	Ethan Tidmore, Tomas Borquez, Srinivas Pandruvada, Xichao Zhao,
	Erikas Bitovtas, Aldo Conte, Colin Ian King, Gabriel Almeida,
	Gabriela Victor, Beatriz Viana Costa, Frank Li, Adrian Fluturel,
	Antoni Pokusinski, Yasin Lee, Felix Gu, Ben Collins

Hello,

the objective of this series is to convert all i2c_device_id arrays to
use named initialization. This is better readable and a prepartion for
further cleanups involving changes to i2c_device_id.

Changes since v1:

 - Drop driver data from more drivers, v1 only had the first patch that
   is unmodified. Patches #2 to #6 are new and are handling more complex
   simplifications in one driver per patch.
 - Also convert i2c_device_id entries that don't have assignments for
   .driver_data in patch #7.

Patch #1 was already applied to the testing branch, I included it here
again for completeness.

Patch #7 got a Reviewed-by tag by Linus Walleij. Given the changes in
that patch I didn't apply it here.

There is still the patch opportunity in the sx9310 driver pointed out by
Jonathan in the v1 thread. I considered that too complex to include it
in this cleanup series and wasn't confident to not break the driver
given I don't have a device to test. I think the whole .check_whoami()
callback should be dropped from all drivers using sx_common and if the
whoami register should be checked, just do it in .probe().

Best regards
Uwe

Uwe Kleine-König (The Capable Hub) (7):
  iio: Drop unused driver_data in four i2c drivers
  iio: accel: bmc150: Explicitly set .driver_data
  iio: adc: ad7091r5: Simplify driver_data handling
  iio: dac: max5821: Drop unused i2c driver data
  iio: proximity: sx9324: Drop unused driver data
  iio: proximity: sx9360: Drop unused driver data
  iio: Initialize i2c_device_id arrays using member names

 drivers/iio/accel/adxl345_i2c.c               |  4 +-
 drivers/iio/accel/adxl355_i2c.c               |  4 +-
 drivers/iio/accel/adxl367_i2c.c               |  2 +-
 drivers/iio/accel/adxl372_i2c.c               |  4 +-
 drivers/iio/accel/adxl380_i2c.c               |  8 +-
 drivers/iio/accel/bma180.c                    | 10 +-
 drivers/iio/accel/bma220_i2c.c                |  2 +-
 drivers/iio/accel/bma400_i2c.c                |  2 +-
 drivers/iio/accel/bmc150-accel-i2c.c          | 20 ++--
 drivers/iio/accel/bmi088-accel-i2c.c          |  6 +-
 drivers/iio/accel/da280.c                     |  6 +-
 drivers/iio/accel/da311.c                     |  2 +-
 drivers/iio/accel/dmard06.c                   |  6 +-
 drivers/iio/accel/dmard09.c                   |  2 +-
 drivers/iio/accel/dmard10.c                   |  2 +-
 drivers/iio/accel/fxls8962af-i2c.c            |  8 +-
 drivers/iio/accel/kxcjk-1013.c                | 10 +-
 drivers/iio/accel/kxsd9-i2c.c                 |  2 +-
 drivers/iio/accel/mc3230.c                    |  4 +-
 drivers/iio/accel/mma7455_i2c.c               |  4 +-
 drivers/iio/accel/mma7660.c                   |  2 +-
 drivers/iio/accel/mma8452.c                   | 12 +--
 drivers/iio/accel/mma9551.c                   |  2 +-
 drivers/iio/accel/mma9553.c                   |  2 +-
 drivers/iio/accel/mxc4005.c                   |  4 +-
 drivers/iio/accel/mxc6255.c                   |  4 +-
 drivers/iio/accel/st_accel_i2c.c              | 52 +++++-----
 drivers/iio/accel/stk8312.c                   |  4 +-
 drivers/iio/accel/stk8ba50.c                  |  2 +-
 drivers/iio/adc/ad7091r5.c                    | 12 +--
 drivers/iio/adc/ad7291.c                      |  2 +-
 drivers/iio/adc/ad799x.c                      | 16 ++--
 drivers/iio/adc/gehc-pmc-adc.c                |  2 +-
 drivers/iio/adc/ina2xx-adc.c                  | 12 +--
 drivers/iio/adc/ltc2309.c                     |  4 +-
 drivers/iio/adc/ltc2471.c                     |  4 +-
 drivers/iio/adc/ltc2485.c                     |  2 +-
 drivers/iio/adc/ltc2497.c                     |  4 +-
 drivers/iio/adc/max34408.c                    |  4 +-
 drivers/iio/adc/mcp3422.c                     | 16 ++--
 drivers/iio/adc/nau7802.c                     |  2 +-
 drivers/iio/adc/pac1921.c                     |  2 +-
 drivers/iio/adc/rohm-bd79124.c                |  2 +-
 drivers/iio/adc/ti-adc081c.c                  |  6 +-
 drivers/iio/adc/ti-ads1015.c                  |  6 +-
 drivers/iio/adc/ti-ads1100.c                  |  4 +-
 drivers/iio/adc/ti-ads1119.c                  |  2 +-
 drivers/iio/adc/ti-ads7138.c                  |  4 +-
 drivers/iio/adc/ti-ads7924.c                  |  2 +-
 drivers/iio/cdc/ad7150.c                      |  6 +-
 drivers/iio/cdc/ad7746.c                      |  6 +-
 drivers/iio/chemical/ags02ma.c                |  2 +-
 drivers/iio/chemical/ams-iaq-core.c           |  2 +-
 drivers/iio/chemical/atlas-ezo-sensor.c       |  6 +-
 drivers/iio/chemical/atlas-sensor.c           | 10 +-
 drivers/iio/chemical/bme680_i2c.c             |  2 +-
 drivers/iio/chemical/ccs811.c                 |  4 +-
 drivers/iio/chemical/ens160_i2c.c             |  2 +-
 drivers/iio/chemical/sgp30.c                  |  4 +-
 drivers/iio/chemical/sgp40.c                  |  2 +-
 drivers/iio/chemical/sps30_i2c.c              |  2 +-
 drivers/iio/chemical/vz89x.c                  |  4 +-
 drivers/iio/dac/ad5064.c                      | 94 +++++++++----------
 drivers/iio/dac/ad5380.c                      | 32 +++----
 drivers/iio/dac/ad5446-i2c.c                  | 12 +--
 drivers/iio/dac/ad5696-i2c.c                  | 32 +++----
 drivers/iio/dac/ds4424.c                      |  8 +-
 drivers/iio/dac/m62332.c                      |  2 +-
 drivers/iio/dac/max517.c                      | 10 +-
 drivers/iio/dac/max5821.c                     |  6 +-
 drivers/iio/dac/mcp4725.c                     |  4 +-
 drivers/iio/dac/mcp4728.c                     |  2 +-
 drivers/iio/dac/mcp47feb02.c                  | 48 +++++-----
 drivers/iio/dac/ti-dac5571.c                  | 22 ++---
 drivers/iio/gyro/bmg160_i2c.c                 |  6 +-
 drivers/iio/gyro/fxas21002c_i2c.c             |  2 +-
 drivers/iio/gyro/itg3200_core.c               |  2 +-
 drivers/iio/gyro/mpu3050-i2c.c                |  2 +-
 drivers/iio/gyro/st_gyro_i2c.c                | 18 ++--
 drivers/iio/health/afe4404.c                  |  2 +-
 drivers/iio/health/max30100.c                 |  2 +-
 drivers/iio/health/max30102.c                 |  6 +-
 drivers/iio/humidity/am2315.c                 |  2 +-
 drivers/iio/humidity/ens210.c                 | 12 +--
 drivers/iio/humidity/hdc100x.c                | 12 +--
 drivers/iio/humidity/hdc2010.c                |  4 +-
 drivers/iio/humidity/hdc3020.c                |  6 +-
 drivers/iio/humidity/hts221_i2c.c             |  2 +-
 drivers/iio/humidity/htu21.c                  |  4 +-
 drivers/iio/humidity/si7005.c                 |  4 +-
 drivers/iio/humidity/si7020.c                 |  4 +-
 drivers/iio/imu/bmi160/bmi160_i2c.c           |  4 +-
 drivers/iio/imu/bmi270/bmi270_i2c.c           |  4 +-
 drivers/iio/imu/bmi323/bmi323_i2c.c           |  2 +-
 drivers/iio/imu/bno055/bno055_i2c.c           |  2 +-
 drivers/iio/imu/fxos8700_i2c.c                |  2 +-
 .../iio/imu/inv_icm42600/inv_icm42600_i2c.c   | 14 +--
 .../iio/imu/inv_icm45600/inv_icm45600_i2c.c   | 16 ++--
 drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c     | 36 +++----
 drivers/iio/imu/kmx61.c                       |  2 +-
 drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_i2c.c   | 48 +++++-----
 drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c   |  4 +-
 drivers/iio/light/adjd_s311.c                 |  2 +-
 drivers/iio/light/adux1020.c                  |  2 +-
 drivers/iio/light/al3000a.c                   |  2 +-
 drivers/iio/light/al3010.c                    |  2 +-
 drivers/iio/light/al3320a.c                   |  2 +-
 drivers/iio/light/apds9160.c                  |  2 +-
 drivers/iio/light/apds9300.c                  |  2 +-
 drivers/iio/light/apds9960.c                  |  2 +-
 drivers/iio/light/as73211.c                   |  4 +-
 drivers/iio/light/bh1745.c                    |  2 +-
 drivers/iio/light/bh1750.c                    | 10 +-
 drivers/iio/light/bh1780.c                    |  2 +-
 drivers/iio/light/cm3232.c                    |  2 +-
 drivers/iio/light/cm3323.c                    |  2 +-
 drivers/iio/light/cm36651.c                   |  2 +-
 drivers/iio/light/gp2ap002.c                  |  2 +-
 drivers/iio/light/gp2ap020a00f.c              |  2 +-
 drivers/iio/light/isl29018.c                  |  6 +-
 drivers/iio/light/isl29028.c                  |  4 +-
 drivers/iio/light/isl29125.c                  |  2 +-
 drivers/iio/light/isl76682.c                  |  2 +-
 drivers/iio/light/jsa1212.c                   |  2 +-
 drivers/iio/light/ltr390.c                    |  2 +-
 drivers/iio/light/ltr501.c                    |  8 +-
 drivers/iio/light/ltrf216a.c                  |  4 +-
 drivers/iio/light/lv0104cs.c                  |  2 +-
 drivers/iio/light/max44000.c                  |  2 +-
 drivers/iio/light/max44009.c                  |  2 +-
 drivers/iio/light/noa1305.c                   |  2 +-
 drivers/iio/light/opt3001.c                   |  4 +-
 drivers/iio/light/opt4001.c                   |  4 +-
 drivers/iio/light/opt4060.c                   |  2 +-
 drivers/iio/light/pa12203001.c                |  2 +-
 drivers/iio/light/rpr0521.c                   |  2 +-
 drivers/iio/light/si1133.c                    |  2 +-
 drivers/iio/light/si1145.c                    | 14 +--
 drivers/iio/light/st_uvis25_i2c.c             |  2 +-
 drivers/iio/light/stk3310.c                   |  8 +-
 drivers/iio/light/tcs3414.c                   |  2 +-
 drivers/iio/light/tcs3472.c                   |  2 +-
 drivers/iio/light/tsl2563.c                   |  8 +-
 drivers/iio/light/tsl2583.c                   |  6 +-
 drivers/iio/light/tsl2772.c                   | 22 ++---
 drivers/iio/light/tsl4531.c                   |  2 +-
 drivers/iio/light/us5182d.c                   |  2 +-
 drivers/iio/light/vcnl4000.c                  | 14 +--
 drivers/iio/light/vcnl4035.c                  |  2 +-
 drivers/iio/light/veml3235.c                  |  2 +-
 drivers/iio/light/veml6030.c                  |  6 +-
 drivers/iio/light/veml6040.c                  |  2 +-
 drivers/iio/light/veml6046x00.c               |  2 +-
 drivers/iio/light/veml6070.c                  |  2 +-
 drivers/iio/light/veml6075.c                  |  2 +-
 drivers/iio/light/vl6180.c                    |  2 +-
 drivers/iio/light/zopt2201.c                  |  2 +-
 drivers/iio/magnetometer/af8133j.c            |  2 +-
 drivers/iio/magnetometer/ak8974.c             |  8 +-
 drivers/iio/magnetometer/ak8975.c             | 14 +--
 drivers/iio/magnetometer/bmc150_magn_i2c.c    |  6 +-
 drivers/iio/magnetometer/hmc5843_i2c.c        |  8 +-
 drivers/iio/magnetometer/mag3110.c            |  2 +-
 drivers/iio/magnetometer/mmc35240.c           |  2 +-
 drivers/iio/magnetometer/mmc5633.c            |  4 +-
 drivers/iio/magnetometer/si7210.c             |  2 +-
 drivers/iio/magnetometer/st_magn_i2c.c        | 18 ++--
 drivers/iio/magnetometer/tlv493d.c            |  2 +-
 drivers/iio/magnetometer/tmag5273.c           |  2 +-
 drivers/iio/magnetometer/yamaha-yas530.c      |  8 +-
 drivers/iio/potentiometer/ad5272.c            | 10 +-
 drivers/iio/potentiometer/ds1803.c            |  8 +-
 drivers/iio/potentiometer/tpl0102.c           |  8 +-
 drivers/iio/potentiostat/lmp91000.c           |  4 +-
 drivers/iio/pressure/abp060mg.c               | 90 +++++++++++-------
 drivers/iio/pressure/abp2030pa_i2c.c          |  2 +-
 drivers/iio/pressure/adp810.c                 |  2 +-
 drivers/iio/pressure/bmp280-i2c.c             | 12 +--
 drivers/iio/pressure/dlhl60d.c                |  4 +-
 drivers/iio/pressure/dps310.c                 |  2 +-
 drivers/iio/pressure/hp03.c                   |  2 +-
 drivers/iio/pressure/hp206c.c                 |  2 +-
 drivers/iio/pressure/hsc030pa_i2c.c           |  2 +-
 drivers/iio/pressure/icp10100.c               |  2 +-
 drivers/iio/pressure/mpl115_i2c.c             |  2 +-
 drivers/iio/pressure/mpl3115.c                |  2 +-
 drivers/iio/pressure/mprls0025pa_i2c.c        |  2 +-
 drivers/iio/pressure/ms5611_i2c.c             |  4 +-
 drivers/iio/pressure/ms5637.c                 |  8 +-
 drivers/iio/pressure/rohm-bm1390.c            |  2 +-
 drivers/iio/pressure/sdp500.c                 |  2 +-
 drivers/iio/pressure/st_pressure_i2c.c        | 16 ++--
 drivers/iio/pressure/t5403.c                  |  2 +-
 drivers/iio/pressure/zpa2326_i2c.c            |  2 +-
 drivers/iio/proximity/aw96103.c               |  4 +-
 drivers/iio/proximity/hx9023s.c               |  2 +-
 drivers/iio/proximity/isl29501.c              |  2 +-
 drivers/iio/proximity/mb1232.c                | 14 +--
 .../iio/proximity/pulsedlight-lidar-lite-v2.c |  4 +-
 drivers/iio/proximity/rfd77402.c              |  2 +-
 drivers/iio/proximity/srf08.c                 |  6 +-
 drivers/iio/proximity/sx9310.c                |  4 +-
 drivers/iio/proximity/sx9324.c                |  6 +-
 drivers/iio/proximity/sx9360.c                |  8 +-
 drivers/iio/proximity/sx9500.c                |  2 +-
 drivers/iio/proximity/vl53l0x-i2c.c           |  2 +-
 drivers/iio/proximity/vl53l1x-i2c.c           |  2 +-
 drivers/iio/temperature/max30208.c            |  2 +-
 drivers/iio/temperature/mcp9600.c             |  4 +-
 drivers/iio/temperature/mlx90614.c            |  4 +-
 drivers/iio/temperature/mlx90632.c            |  2 +-
 drivers/iio/temperature/mlx90635.c            |  2 +-
 drivers/iio/temperature/tmp006.c              |  2 +-
 drivers/iio/temperature/tmp007.c              |  2 +-
 drivers/iio/temperature/tmp117.c              |  4 +-
 drivers/iio/temperature/tsys01.c              |  2 +-
 drivers/iio/temperature/tsys02d.c             |  2 +-
 217 files changed, 708 insertions(+), 696 deletions(-)


base-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731
-- 
2.47.3


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2026-05-19 19:51 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-19  8:13 [PATCH v2 0/7] iio: Rework i2c_device_id initialisation Uwe Kleine-König (The Capable Hub)
2026-05-19  8:13 ` [PATCH v2 1/7] iio: Drop unused driver_data in four i2c drivers Uwe Kleine-König (The Capable Hub)
2026-05-19  8:13 ` [PATCH v2 2/7] iio: accel: bmc150: Explicitly set .driver_data Uwe Kleine-König (The Capable Hub)
2026-05-19 18:42   ` Jonathan Cameron
2026-05-19  8:13 ` [PATCH v2 3/7] iio: adc: ad7091r5: Simplify driver_data handling Uwe Kleine-König (The Capable Hub)
2026-05-19 18:49   ` Jonathan Cameron
2026-05-19  8:13 ` [PATCH v2 4/7] iio: dac: max5821: Drop unused i2c driver data Uwe Kleine-König (The Capable Hub)
2026-05-19 19:06   ` Jonathan Cameron
2026-05-19  8:13 ` [PATCH v2 5/7] iio: proximity: sx9324: Drop unused " Uwe Kleine-König (The Capable Hub)
2026-05-19 19:08   ` Jonathan Cameron
2026-05-19  8:13 ` [PATCH v2 6/7] iio: proximity: sx9360: " Uwe Kleine-König (The Capable Hub)
2026-05-19 19:09   ` Jonathan Cameron
2026-05-19  8:13 ` [PATCH v2 7/7] iio: Initialize i2c_device_id arrays using member names Uwe Kleine-König (The Capable Hub)
2026-05-19 11:35   ` Matti Vaittinen
2026-05-19 15:46   ` Sirat
2026-05-19 18:39   ` Jonathan Cameron
2026-05-19 19:51     ` Uwe Kleine-König (The Capable Hub)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox