OSDN Git Service

tomoyo/tomoyo-test1.git
19 months agoiio: chemical: ams-iaq-core: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:47 +0000 (23:36 +0100)]
iio: chemical: ams-iaq-core: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-74-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: cdc: ad7746: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:46 +0000 (23:36 +0100)]
iio: cdc: ad7746: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-73-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: cdc: ad7150: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:45 +0000 (23:36 +0100)]
iio: cdc: ad7150: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-72-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ti-ads1015: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:44 +0000 (23:36 +0100)]
iio: adc: ti-ads1015: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-71-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ti-adc081c: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:43 +0000 (23:36 +0100)]
iio: adc: ti-adc081c: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-70-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: mcp3422: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:42 +0000 (23:36 +0100)]
iio: adc: mcp3422: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-69-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: max9611: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:41 +0000 (23:36 +0100)]
iio: adc: max9611: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-68-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: max1363: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:40 +0000 (23:36 +0100)]
iio: adc: max1363: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-67-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ltc2497: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:39 +0000 (23:36 +0100)]
iio: adc: ltc2497: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-66-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ltc2485: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:38 +0000 (23:36 +0100)]
iio: adc: ltc2485: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-65-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ltc2471: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:37 +0000 (23:36 +0100)]
iio: adc: ltc2471: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-64-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ina2xx-adc: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:36 +0000 (23:36 +0100)]
iio: adc: ina2xx-adc: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-63-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ad799x: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:35 +0000 (23:36 +0100)]
iio: adc: ad799x: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-62-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ad7291: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:34 +0000 (23:36 +0100)]
iio: adc: ad7291: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-61-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ad7091r5: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:33 +0000 (23:36 +0100)]
iio: adc: ad7091r5: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-60-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mma9553: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:32 +0000 (23:36 +0100)]
iio: accel: mma9553: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-59-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mma9551: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:31 +0000 (23:36 +0100)]
iio: accel: mma9551: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-58-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mma8452: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:30 +0000 (23:36 +0100)]
iio: accel: mma8452: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-57-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mma7455_i2c: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:29 +0000 (23:36 +0100)]
iio: accel: mma7455_i2c: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-56-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: kxcjk-1013: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:28 +0000 (23:36 +0100)]
iio: accel: kxcjk-1013: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-55-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: da280: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:27 +0000 (23:36 +0100)]
iio: accel: da280: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-54-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: bmc150: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:26 +0000 (23:36 +0100)]
iio: accel: bmc150: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-53-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: bma400: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:25 +0000 (23:36 +0100)]
iio: accel: bma400: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-52-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: bma180: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:24 +0000 (23:36 +0100)]
iio: accel: bma180: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-51-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: adxl372_i2c: Convert to i2c's .probe_new()
Uwe Kleine-König [Fri, 18 Nov 2022 22:36:23 +0000 (23:36 +0100)]
iio: accel: adxl372_i2c: Convert to i2c's .probe_new()

.probe_new() doesn't get the i2c_device_id * parameter, so determine
that explicitly in the probe function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20221118224540.619276-50-uwe@kleine-koenig.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: pressure: bmp280: convert to i2c's .probe_new()
Angel Iglesias [Sun, 13 Nov 2022 17:54:46 +0000 (18:54 +0100)]
iio: pressure: bmp280: convert to i2c's .probe_new()

Use i2c_client_get_device_id() to get the i2c_device_id* parameter in the
.new_probe() callback.

Signed-off-by: Angel Iglesias <ang.iglesiasg@gmail.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/5dcaa389ea2ffe7050091b07a3bc4b0c1c9d586b.1668361368.git.ang.iglesiasg@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoMerge remote-tracking branch 'i2c/i2c/client_device_id_helper-immutable' into togreg
Jonathan Cameron [Mon, 14 Nov 2022 20:38:30 +0000 (20:38 +0000)]
Merge remote-tracking branch 'i2c/i2c/client_device_id_helper-immutable' into togreg

19 months agoiio: imu: st_lsm6dsx: fix LSM6DSV sensor description
Lorenzo Bianconi [Mon, 14 Nov 2022 09:25:34 +0000 (10:25 +0100)]
iio: imu: st_lsm6dsx: fix LSM6DSV sensor description

Fix sensor ODR description for LSM6DSV/LSM6DSVX

Fixes: a1c6d631ff12 ("iio: imu: st_lsm6dsx: add support to LSM6DSV")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/653e14bf79bb88d8581d2bc42da2f784caaf3776.1668417770.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ad4130: depend on GPIOLIB
Cosmin Tanislav [Mon, 14 Nov 2022 13:36:49 +0000 (15:36 +0200)]
iio: adc: ad4130: depend on GPIOLIB

Fixes undefined references to 'gpiochip_get_data' and
'devm_gpiochip_add_data_with_key'.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reported-by: kernel test robot <lkp@intel.com>
Fixes: 62094060cf3a ("iio: adc: ad4130: add AD4130 driver")
Link: https://lore.kernel.org/r/20221114133649.1737027-1-cosmin.tanislav@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agostaging: iio: meter: replace ternary operator by if condition
Deepak R Varma [Sun, 13 Nov 2022 05:28:20 +0000 (10:58 +0530)]
staging: iio: meter: replace ternary operator by if condition

Replace ternary operator by simple if based evaluation of the return
value. Issue identified using coccicheck.

Signed-off-by: Deepak R Varma <drv@mailo.com>
Link: https://lore.kernel.org/r/Y3CAdCa17WdWDYUa@qemulion
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: light: apds9960: Fix iio_event_spec structures
Subhajit Ghosh [Thu, 10 Nov 2022 10:12:41 +0000 (18:12 +0800)]
iio: light: apds9960: Fix iio_event_spec structures

There is only one interrupt enable option for both ALS low and high
thresholds, and one for both Proximity low and high thresholds.

Signed-off-by: Subhajit Ghosh <subhajit.ghosh@vixtechnology.com>
Reviewed-by: Matt Ranostay <matt.ranostay@konsulko.com>
Link: https://lore.kernel.org/r/20221110101241.10576-1-subhajit.ghosh@vixtechnology.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: imu: Add inv_icm42600 documentation
Jay Greco [Thu, 10 Nov 2022 19:29:33 +0000 (19:29 +0000)]
dt-bindings: iio: imu: Add inv_icm42600 documentation

Update the required documentation for the icm42631.

Signed-off-by: Jay Greco <grecojay@amazon.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@tdk.com>
Link: https://lore.kernel.org/r/20221110192933.13616-3-grecojay@amazon.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: imu: inv_icm42600: Add support for icm42631
Jay Greco [Thu, 10 Nov 2022 19:29:32 +0000 (19:29 +0000)]
iio: imu: inv_icm42600: Add support for icm42631

Add the required WHOAMI and device_id definitions to support the
icm42631.

Signed-off-by: Jay Greco <grecojay@amazon.com>
Acked-by: Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@tdk.com>
Link: https://lore.kernel.org/r/20221110192933.13616-2-grecojay@amazon.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: adc: rockchip-saradc: Add saradc for rv1126
Jagan Teki [Tue, 8 Nov 2022 04:13:53 +0000 (09:43 +0530)]
dt-bindings: iio: adc: rockchip-saradc: Add saradc for rv1126

Add saradc compatible string for rockchip rv1126.

Cc: linux-iio@vger.kernel.org
Cc: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221108041400.157052-4-jagan@edgeble.ai
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: dac: adi,ad5758: Drop 'contains' from 'adi,dc-dc-mode'
Rob Herring [Fri, 11 Nov 2022 21:28:46 +0000 (15:28 -0600)]
dt-bindings: iio: dac: adi,ad5758: Drop 'contains' from 'adi,dc-dc-mode'

'contains' applies to arrays, but 'adi,dc-dc-mode' is a scalar. So drop
'contains' from the 'if' schema.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221111212846.4104059-1-robh@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: imu: st_lsm6dsx: add lsm6dsv16x
Lorenzo Bianconi [Sun, 6 Nov 2022 14:36:54 +0000 (15:36 +0100)]
dt-bindings: iio: imu: st_lsm6dsx: add lsm6dsv16x

Add device bindings for lsm6dsv16x IMU sensor.
Use lsm6dsv as fallback device for lsm6dsv16x since it implements all the
features currently supported by lsm6dsv16x.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/8d10a63ec6abd22863ab25addd8c2f578dbc9cd9.1667745215.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: imu: st_lsm6dsx: add support to LSM6DSV16X
Lorenzo Bianconi [Sun, 6 Nov 2022 14:36:53 +0000 (15:36 +0100)]
iio: imu: st_lsm6dsx: add support to LSM6DSV16X

Add support to STM LSM6DSV16X (accelerometer and gyroscope) Mems sensor.
The LSM6DSV16X sensor can use LSM6DSV as fallback device since it
implements all the LSM6DSV16X features currently implemented in
st_lsm6dsx.

Datasheet: https://www.st.com/resource/en/datasheet/lsm6dsv16x.pdf
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/284b251f861dff30c399e5736a843c8e3a497249.1667745215.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: proximity: sx9360: Add a new ACPI hardware ID
Gwendal Grignou [Sat, 5 Nov 2022 22:51:57 +0000 (15:51 -0700)]
iio: proximity: sx9360: Add a new ACPI hardware ID

From
https://treexy.com/products/driver-fusion/database/sensors/semtech/sx9360-proximity/

sx9360 SAR sensor can be presented with ACPI ID SAMM0208.

Whilst this does not appear to be an official ACPI ID, it is in the wild
(perhaps due to a typo on the SAM PnP ID).

Reported-by: Jordi Torres <majosamaso@gmail.com>
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Link: https://lore.kernel.org/r/20221105225157.10081-1-gwendal@chromium.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: temperature: mlx90632: Add missing static marking on devm_pm_ops
Jonathan Cameron [Sat, 5 Nov 2022 12:51:08 +0000 (12:51 +0000)]
iio: temperature: mlx90632: Add missing static marking on devm_pm_ops

Only used within this file, so should be marked static.

Fixes: 2aebc223fc7c ("iio: temperature: mlx90632 Add runtime powermanagement modes")
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-off-by: Crt Mori <cmo@melexis.com>
Link: https://lore.kernel.org/r/20221105125108.383193-3-jic23@kernel.org
19 months agoiio: temperature: mlx90632: Add error handling for devm_pm_runtime_enable()
Jonathan Cameron [Sat, 5 Nov 2022 12:51:07 +0000 (12:51 +0000)]
iio: temperature: mlx90632: Add error handling for devm_pm_runtime_enable()

This call can fail so handling is necessary even if it is very unlikely.

Reported-by: coverity-bot <keescook+coverity-bot@chromium.org>
Addresses-Coverity-ID: 1527134 ("Error handling issues")
Fixes: 2aebc223fc7c ("iio: temperature: mlx90632 Add runtime powermanagement modes")
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-off-by: Crt Mori <cmo@melexis.com>
Link: https://lore.kernel.org/r/20221105125108.383193-2-jic23@kernel.org
19 months agoiio: temperature: ltc2983: support more parts
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:41 +0000 (15:00 +0200)]
iio: temperature: ltc2983: support more parts

Add support for the following parts:
 * LTC2984
 * LTC2986
 * LTM2985

The LTC2984 is a variant of the LTC2983 with EEPROM.
The LTC2986 is a variant of the LTC2983 with only 10 channels,
EEPROM and support for active analog temperature sensors.
The LTM2985 is software-compatible with the LTC2986.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Link: https://lore.kernel.org/r/20221103130041.2153295-14-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: support more parts
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:40 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: support more parts

Add support for the following parts:
 * LTC2984
 * LTC2986
 * LTM2985

The LTC2984 is a variant of the LTC2983 with EEPROM.
The LTC2986 is a variant of the LTC2983 with only 10 channels,
EEPROM and support for active analog temperature sensors.
The LTM2985 is software-compatible with the LTC2986.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-13-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: use generic node name in example
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:39 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: use generic node name in example

Examples should use the generic IIO node name of temperature-sensor.
Fix it.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Link: https://lore.kernel.org/r/20221103130041.2153295-12-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: describe broken mux delay property
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:38 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: describe broken mux delay property

The 'adi,mux-delay-config-us' property is broken. It was supposed to
be in us, but the value is actually written directly to the register.
Describe the fact that it is broken and how it actually works.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-11-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: refine descriptions
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:37 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: refine descriptions

Some descriptions are too verbose, while others are too succint.
Rewrite them all.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-10-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: change default excitation for custom thermistors
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:36 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: change default excitation for custom thermistors

Excitation cannot be set to auto-range when using a custom thermistor
or Steinhart sensor type. Default it to 1000nA to match the driver
and remove the auto-range value from the enum.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-9-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: require 4 wire rtd for current rotate
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:35 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: require 4 wire rtd for current rotate

The driver will error out when current rotation is enabled but the RTD
is not 4-wire. Require it in the binding too.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-8-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: require custom sensor tables
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:34 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: require custom sensor tables

The driver will error out when a custom sensor type is used but a
custom sensor table is not provided. Require it in the binding too.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-7-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: describe matrix items
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:33 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: describe matrix items

Give a little bit of information on what each item in the matrix is
supposed to be.

Also, some matrices put the 'minItems' and 'maxItems' keywords in the
wrong level. They should be on the same level as the 'items' keyword.
Fix it.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-6-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: remove qutations from phandle ref
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:32 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: remove qutations from phandle ref

Not needed, so why have them?

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-5-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: use hex for sensor address
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:31 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: use hex for sensor address

Addresses should be in hex, fix it.

Although the driver initially specified 1-20, it can be made free-range
since the address is supposed to match reg, onto which we can impose
restrictions based on the compatible property value.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-4-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: temperature: ltc2983: add default values
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:30 +0000 (15:00 +0200)]
dt-bindings: iio: temperature: ltc2983: add default values

Binding properties should have default values to let the reader
know if they should change it. Add them based on driver logic.

Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221103130041.2153295-3-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: temperature: ltc2983: make bulk write buffer DMA-safe
Cosmin Tanislav [Thu, 3 Nov 2022 13:00:29 +0000 (15:00 +0200)]
iio: temperature: ltc2983: make bulk write buffer DMA-safe

regmap_bulk_write() does not guarantee implicit DMA-safety,
even though the current implementation duplicates the given
buffer. Do not rely on it.

Fixes: f110f3188e56 ("iio: temperature: Add support for LTC2983")
Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com>
Link: https://lore.kernel.org/r/20221103130041.2153295-2-demonsingur@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoDocumentation: ad4130: format list of in_voltage-voltage_filter_mode_available modes
Bagas Sanjaya [Sun, 6 Nov 2022 14:02:33 +0000 (21:02 +0700)]
Documentation: ad4130: format list of in_voltage-voltage_filter_mode_available modes

Sphinx reports two warnings on sysfs documentation for AD4130 driver:

Documentation/ABI/testing/sysfs-bus-iio-adc-ad4130:2: WARNING: Unexpected indentation.
Documentation/ABI/testing/sysfs-bus-iio-adc-ad4130:2: WARNING: Block quote ends without a blank line; unexpected unindent.

These are due to misformatting of sinc* modes list. Format it with bullet
list. Since each entry spans multiple lines, separate each with a blank
line.

Fixes: 62094060cf3a ("iio: adc: ad4130: add AD4130 driver")
Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
Link: https://lore.kernel.org/r/20221106140233.74112-1-bagasdotme@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodrivers: iio: accel: Add support for ADXL359 device
Ramona Bolboaca [Mon, 31 Oct 2022 10:51:29 +0000 (12:51 +0200)]
drivers: iio: accel: Add support for ADXL359 device

Add support for ADXL359 device in already existing ADXL355 driver.

Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/adxl359.pdf
Signed-off-by: Ramona Bolboaca <ramona.bolboaca@analog.com>
Link: https://lore.kernel.org/r/20221031105129.47740-4-ramona.bolboaca@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: accel: Add docs for ADXL359
Ramona Bolboaca [Mon, 31 Oct 2022 10:51:28 +0000 (12:51 +0200)]
dt-bindings: iio: accel: Add docs for ADXL359

Update ADXL355 existing documentation with documentation
for ADXL359 device.

Signed-off-by: Ramona Bolboaca <ramona.bolboaca@analog.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221031105129.47740-3-ramona.bolboaca@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodrivers: iio: accel: Use warning if invalid device id is detected
Ramona Bolboaca [Mon, 31 Oct 2022 10:51:27 +0000 (12:51 +0200)]
drivers: iio: accel: Use warning if invalid device id is detected

Use warning instead of failing driver probe if invalid device id is
detected for ADXL355 device.

Signed-off-by: Ramona Bolboaca <ramona.bolboaca@analog.com>
Link: https://lore.kernel.org/r/20221031105129.47740-2-ramona.bolboaca@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: imu: st_lsm6dsx: add lsm6dsv device bindings
Lorenzo Bianconi [Mon, 31 Oct 2022 11:41:26 +0000 (12:41 +0100)]
dt-bindings: iio: imu: st_lsm6dsx: add lsm6dsv device bindings

Introduce device bindings for LSM6DSV IMU sensor.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/c34cea4468dc26050dff812f47e1a21f8e544758.1667216004.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: imu: st_lsm6dsx: add support to LSM6DSV
Lorenzo Bianconi [Mon, 31 Oct 2022 11:41:25 +0000 (12:41 +0100)]
iio: imu: st_lsm6dsx: add support to LSM6DSV

Add support to STM LSM6DSV (accelerometer and gyroscope)
Mems sensor.

Datasheet: https://www.st.com/resource/en/datasheet/lsm6dsv.pdf
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/aad879e7af0fe583bbf043a2b93e32fade79fa19.1667216004.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: imu: st_lsm6dsx: introduce sw trigger support
Lorenzo Bianconi [Fri, 28 Oct 2022 11:23:42 +0000 (13:23 +0200)]
iio: imu: st_lsm6dsx: introduce sw trigger support

There are some hw configuration where irq0 and/or irq1 pins are not
connected to the SPI or I2C/I3C controller. In order to avoid polling
the output register introduce iio-sw trigger support when irq line is
not available (or hw FIFO is not supported).

Suggested-by: Mario Tesi <mario.tesi@st.com>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/r/93ae6ff1150b531a9d7a4d3d1b1adb8383613717.1666955685.git.lorenzo@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: adc: qcom,spmi-vadc: extend example
Krzysztof Kozlowski [Thu, 27 Oct 2022 14:34:11 +0000 (10:34 -0400)]
dt-bindings: iio: adc: qcom,spmi-vadc: extend example

Cleanup existing example (generic node name for spmi, use 4-space
indentation) and add example for ADCv7 copied from
Documentation/devicetree/bindings/thermal/qcom-spmi-adc-tm5.yaml.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221027143411.277980-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: adc: qcom,spmi-vadc: simplify compatible enum
Krzysztof Kozlowski [Thu, 27 Oct 2022 14:34:10 +0000 (10:34 -0400)]
dt-bindings: iio: adc: qcom,spmi-vadc: simplify compatible enum

The second compatible item in oneOf is just an enum, not a list.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221027143411.277980-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: cc10001: Switch remaining IIO calls in probe to devm_ forms.
Jonathan Cameron [Sun, 16 Oct 2022 17:09:50 +0000 (18:09 +0100)]
iio: adc: cc10001: Switch remaining IIO calls in probe to devm_ forms.

As everything else is now handled by devm managed releases the
triggered buffer setup and IIO device registration can also be
moved over to their devm forms allowing dropping of remove().

Only user of drvdata associated with the struct device was the
remove function, so also drop the platform_set_drvdata() call.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016170950.387751-6-jic23@kernel.org
19 months agoiio: adc: cc10001: Use devm_ to call device power down.
Jonathan Cameron [Sun, 16 Oct 2022 17:09:49 +0000 (18:09 +0100)]
iio: adc: cc10001: Use devm_ to call device power down.

It is presumably safe to call the powerdown whether or not we are
in the commented shared state (the driver always did this).

The power down was previously out of order wrt to the probe() function
so move using devm_ will ensure it occurs after the userspace interfaces
are removed.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016170950.387751-5-jic23@kernel.org
19 months agoiio: adc: cc10001: Use devm_clk_get_enabled() to avoid boilerplate.
Jonathan Cameron [Sun, 16 Oct 2022 17:09:48 +0000 (18:09 +0100)]
iio: adc: cc10001: Use devm_clk_get_enabled() to avoid boilerplate.

As this driver just enables clock in probe() and disables in remove()
we can use this new function to replace boilerplate and simplify
error paths.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016170950.387751-4-jic23@kernel.org
19 months agoiio: adc: cc10001: Add devm_add_action_or_reset() to disable regulator.
Jonathan Cameron [Sun, 16 Oct 2022 17:09:47 +0000 (18:09 +0100)]
iio: adc: cc10001: Add devm_add_action_or_reset() to disable regulator.

As the voltage of this regulator is queried, we cannot use the
devm_regulator_get_enable() call and have to role our own disable.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016170950.387751-3-jic23@kernel.org
19 months agoiio: adc: cc10001: Add local struct device *dev variable to avoid repitition
Jonathan Cameron [Sun, 16 Oct 2022 17:09:46 +0000 (18:09 +0100)]
iio: adc: cc10001: Add local struct device *dev variable to avoid repitition

There are lots of uses of this in probe() and we are about to introduce
some more, so add a local variable to simplify this.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016170950.387751-2-jic23@kernel.org
19 months agoiio: Don't silently expect attribute types
Matti Vaittinen [Mon, 3 Oct 2022 08:13:53 +0000 (11:13 +0300)]
iio: Don't silently expect attribute types

The iio_triggered_buffer_setup_ext() and the
devm_iio_kfifo_buffer_setup_ext() were changed by
commit 15097c7a1adc ("iio: buffer: wrap all buffer attributes into iio_dev_attr")
to silently expect that all attributes given in buffer_attrs array are
device-attributes. This expectation was not forced by the API - and some
drivers did register attributes created by IIO_CONST_ATTR().

When using IIO_CONST_ATTRs the added attribute "wrapping" does not copy
the pointer to stored string constant and when the sysfs file is read the
kernel will access to invalid location.

Change the function signatures to expect an array of iio_dev_attrs to
avoid similar errors in the future.

Merge conflict resolved whilst applying due to patch crossing with
two new drivers (kx022a accelerometer and ad4130 ADC).

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/63f54787a684eb1232f1c5d275a09c786987fe4a.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: at91-sama5d2_adc: Use IIO_STATIC_CONST_DEVICE_ATTR()
Matti Vaittinen [Mon, 3 Oct 2022 08:13:31 +0000 (11:13 +0300)]
iio: at91-sama5d2_adc: Use IIO_STATIC_CONST_DEVICE_ATTR()

Slightly simplify by dropping open-coded constant data iio_dev_attr
functions and using the IIO_STATIC_CONST_DEVICE_ATTR() instead.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/4476a4ce852febb3eb863878e66751c787195b18.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: bmc150-accel-core: Use IIO_STATIC_CONST_DEVICE_ATTR()
Matti Vaittinen [Mon, 3 Oct 2022 08:13:10 +0000 (11:13 +0300)]
iio: bmc150-accel-core: Use IIO_STATIC_CONST_DEVICE_ATTR()

Slightly simplify by dropping open-coded constant data iio_dev_attr
functions and using the IIO_STATIC_CONST_DEVICE_ATTR() instead.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/b1b0d662705b43d68594639fb7719bc431101f79.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adxl372: Use IIO_STATIC_CONST_DEVICE_ATTR()
Matti Vaittinen [Mon, 3 Oct 2022 08:12:48 +0000 (11:12 +0300)]
iio: adxl372: Use IIO_STATIC_CONST_DEVICE_ATTR()

Slightly simplify by dropping open-coded constant data iio_dev_attr
functions and using the IIO_STATIC_CONST_DEVICE_ATTR() instead.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/3632af8849ef101c54ec1f739596f22c773b067c.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adxl367: Use IIO_STATIC_CONST_DEVICE_ATTR()
Matti Vaittinen [Mon, 3 Oct 2022 08:12:25 +0000 (11:12 +0300)]
iio: adxl367: Use IIO_STATIC_CONST_DEVICE_ATTR()

Slightly simplify by dropping open-coded constant data iio_dev_attr
functions and using the IIO_STATIC_CONST_DEVICE_ATTR() instead.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/c96c55363b8f36017ef7f18fdfe810cd3990e2a4.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: Add IIO_STATIC_CONST_DEVICE_ATTR
Matti Vaittinen [Mon, 3 Oct 2022 08:12:04 +0000 (11:12 +0300)]
iio: Add IIO_STATIC_CONST_DEVICE_ATTR

Add IIO_STATIC_CONST_DEVICE_ATTR macro for creating an read-only
iio_dev_attr which returns constant value. This macro is intended to be
used when replacing the IIO_CONST_ATTR - attributes for triggered
buffers because the triggered buffer attributes must be of type
iio_dev_attr.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/8dd853dd0ef8eb40cb980cc6f6e7a43166de3afb.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: adc: ad4130: Fix spelling mistake "diffreential" -> "differential"
Colin Ian King [Fri, 4 Nov 2022 09:31:48 +0000 (09:31 +0000)]
iio: adc: ad4130: Fix spelling mistake "diffreential" -> "differential"

There is a spelling mistake in an error message. Fix it.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Link: https://lore.kernel.org/r/20221104093148.167765-1-colin.i.king@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoMAINTAINERS: Add KX022A maintainer entry
Matti Vaittinen [Mon, 24 Oct 2022 12:40:58 +0000 (15:40 +0300)]
MAINTAINERS: Add KX022A maintainer entry

Add maintainer entry for ROHM/Kionix KX022A accelerometer sensor driver.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/7895435f7fd31a3b576fc6a59b01eb3202c85d36.1666614295.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: Support Kionix/ROHM KX022A accelerometer
Matti Vaittinen [Mon, 24 Oct 2022 12:40:29 +0000 (15:40 +0300)]
iio: accel: Support Kionix/ROHM KX022A accelerometer

KX022A is a 3-axis accelerometer from ROHM/Kionix. The sensor features
include variable ODRs, I2C and SPI control, FIFO/LIFO with watermark IRQ,
tap/motion detection, wake-up & back-to-sleep events, four acceleration
ranges (2, 4, 8 and 16g), and probably some other cool features.

Add support for the basic accelerometer features such as getting the
acceleration data via IIO. (raw reads, triggered buffer [data-ready] or
using the WMI IRQ).

Important things to be added include the double-tap, motion
detection and wake-up as well as the runtime power management.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/758b00d6aea0a6431a5a3a78d557d449c113b21e.1666614295.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agodt-bindings: iio: Add KX022A accelerometer
Matti Vaittinen [Mon, 24 Oct 2022 12:40:11 +0000 (15:40 +0300)]
dt-bindings: iio: Add KX022A accelerometer

KX022A is a 3-axis Accelerometer from ROHM/Kionix. The sensor features
include variable ODRs, I2C and SPI control, FIFO/LIFO with watermark IRQ,
tap/motion detection, wake-up & back-to-sleep events, four acceleration
ranges (2, 4, 8 and 16g) and probably some other cool features.

Add the basic device tree description for the accelerometer. Only basic
accelerometer features are considered as of now - new properties may or
may not be needed in the future when rest of the features are supported.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/06f8e1ab29d02ed216db10091a269df4b6abad9a.1666614295.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: trigger: sysfs: rename error label in iio_sysfs_trigger_probe()
Yang Yingliang [Mon, 24 Oct 2022 10:52:50 +0000 (18:52 +0800)]
iio: trigger: sysfs: rename error label in iio_sysfs_trigger_probe()

Rename error label in iio_sysfs_trigger_probe() to make more readable.

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Link: https://lore.kernel.org/r/20221024105250.873394-1-yangyingliang@huawei.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: temperature: mlx90632 Style alignment for the driver
Crt Mori [Mon, 24 Oct 2022 10:22:05 +0000 (12:22 +0200)]
iio: temperature: mlx90632 Style alignment for the driver

Changing and aligning the overall style of the driver with the recent
reviews. There is no functional change, only type generalization and
moving to the reverse Christmas tree for variable declarations.

Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Crt Mori <cmo@melexis.com>
Link: https://lore.kernel.org/r/d59aad00891c1a64e044a0f5bc7d40e42d47e9c7.1666606912.git.cmo@melexis.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: vl6180: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:23:02 +0000 (15:23 +0200)]
iio: accel: vl6180: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-24-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: st_magn: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:23:01 +0000 (15:23 +0200)]
iio: accel: st_magn: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-23-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: stk8ba50: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:23:00 +0000 (15:23 +0200)]
iio: accel: stk8ba50: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-22-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: stk8312: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:59 +0000 (15:22 +0200)]
iio: accel: stk8312: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-21-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mxc6255: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:58 +0000 (15:22 +0200)]
iio: accel: mxc6255: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-20-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mxc4005: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:57 +0000 (15:22 +0200)]
iio: accel: mxc4005: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-19-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mma7660: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:53 +0000 (15:22 +0200)]
iio: accel: mma7660: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-15-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: mc3230: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:51 +0000 (15:22 +0200)]
iio: accel: mc3230: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-13-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: kxsd9: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:50 +0000 (15:22 +0200)]
iio: accel: kxsd9: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-12-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: dmard10: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:48 +0000 (15:22 +0200)]
iio: accel: dmard10: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-10-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: dmard09: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:47 +0000 (15:22 +0200)]
iio: accel: dmard09: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-9-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: dmard06: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:46 +0000 (15:22 +0200)]
iio: accel: dmard06: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-8-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: da311: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:45 +0000 (15:22 +0200)]
iio: accel: da311: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-7-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: accel: adxl367: Convert to i2c's .probe_new()
Uwe Kleine-König [Sun, 23 Oct 2022 13:22:40 +0000 (15:22 +0200)]
iio: accel: adxl367: Convert to i2c's .probe_new()

The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20221023132302.911644-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
19 months agoiio: proximity: sx_common: Use devm_regulator_bulk_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:07 +0000 (17:34 +0100)]
iio: proximity: sx_common: Use devm_regulator_bulk_get_enable()

This driver only turns the power for some regulators on at probe and off
via a custom devm_add_action_or_reset() callback. The new
devm_regulator_bulk_get_enable() replaces all this boilerplate code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Gwendal Grignou <gwendal@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-13-jic23@kernel.org
19 months agoiio: light: noa1305: Use devm_regulator_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:06 +0000 (17:34 +0100)]
iio: light: noa1305: Use devm_regulator_get_enable()

This driver only turns the power on at probe and off via a custom
devm_add_action_or_reset() callback. The new devm_regulator_get_enable()
replaces this boilerplate code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Martyn Welch <martyn.welch@collabora.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-12-jic23@kernel.org
19 months agoiio: light: ltr501: Use devm_regulator_bulk_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:05 +0000 (17:34 +0100)]
iio: light: ltr501: Use devm_regulator_bulk_get_enable()

This driver only turns the power for some regulators on at probe and off
via a custom devm_add_action_or_reset() callback. The new
devm_regulator_bulk_get_enable() replaces all this boilerplate code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-11-jic23@kernel.org
19 months agoiio: humidity: hts211: Use devm_regulator_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:04 +0000 (17:34 +0100)]
iio: humidity: hts211: Use devm_regulator_get_enable()

This driver only turns the power on at probe and off via a custom
devm_add_action_or_reset() callback. The new devm_regulator_get_enable()
replaces this boilerplate code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-10-jic23@kernel.org
19 months agoiio: frequency: ad9523: Use devm_regulator_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:03 +0000 (17:34 +0100)]
iio: frequency: ad9523: Use devm_regulator_get_enable()

This driver only turns the power on at probe and off via a custom
devm_add_action_or_reset() callback. The new devm_regulator_get_enable()
replaces this boilerplate code.

Note that in event of an error on the devm_regulator_get() the driver
would have continued without enabling the regulator which is probably
not a good idea.  So here we handle any error as a reason to fail the
probe(). In theory this may expose breakage on a platform that was
previously papered over but it seems low risk.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Michael Hennerich <michael.hennerich@analog.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-9-jic23@kernel.org
19 months agoiio: st_sensors: core and lsm9ds0 switch to devm_regulator_bulk_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:02 +0000 (17:34 +0100)]
iio: st_sensors: core and lsm9ds0 switch to devm_regulator_bulk_get_enable()

These drivers only turns the power on at probe and off via a custom
devm_add_action_or_reset() callback. The two regulators were handled
separately so also switch to bulk registration.
The new devm_regulator_bulk_get_enable() replaces all this boilerplate
code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-8-jic23@kernel.org
19 months agoiio: cdc: ad7150: Use devm_regulator_get_enable()
Jonathan Cameron [Sun, 16 Oct 2022 16:34:01 +0000 (17:34 +0100)]
iio: cdc: ad7150: Use devm_regulator_get_enable()

This driver only turns the power on at probe and off via a custom
devm_add_action_or_reset() callback. The new devm_regulator_get_enable()
replaces this boilerplate code.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20221016163409.320197-7-jic23@kernel.org