summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-09-06 17:47:45 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-09-06 17:47:55 +0200
commite2664d0870bbbf9df2513ed9870003a70bdb0e8e (patch)
tree406b03b0d9ece5c35c9e6f9068846cbdcab146c6
parent76f50ad9b1503bc5bd2eb80c1e97149cbbf1d3f1 (diff)
parent2f0472a1f80e6230f126aa0af76e89f85abc37bd (diff)
downloadlinux-e2664d0870bbbf9df2513ed9870003a70bdb0e8e.tar.gz
linux-e2664d0870bbbf9df2513ed9870003a70bdb0e8e.tar.bz2
linux-e2664d0870bbbf9df2513ed9870003a70bdb0e8e.zip
Merge tag 'iio-for-5.10a-take2' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
Jonathan writes: First set of new device support, features and cleanup for IIO in 5.10 cycle, take 2 A few changes to how I write this cover letter. * Started to use manufacturer prefixes to group changes better. * Stop list minor formatting etc changes. * Whilst I appreciate those changes, we don't need to call them out here. New device support: * adi,adxrs290 - New driver for this gyroscope with dt bindings. One fix follows. * ams,as73211 - New driver for this colour sensor with dt bindings. Also includes docs for XYZ modifiers as used for the CIE colour space. Sysfs docs. * atlas,atlas-ezo-sensor - Support O_2 sensor, includes new modifier for concentration. - Support humidity sensor. * ti,hdc2010 - New driver support hdc2010 and hdc2080 humidity sensors. Includes dt bindings. Cleanup, minor fixes and features * core - Make the trigger related stub functions static inline, avoiding some build warnings. - buffer-dmaengine. Allow adjusting bytes_used with residue info. * dev_error_probe to replace open coded equivalent in many drivers. * docs and comment fixes - Fix some typos, doubled words, capitalisation and punctuation. * dt binding conversions to yaml - lltc,ltc2497 - lltc,ltc2632 - maxim,max11100 - maxim,max1118 - maxim,max9611 - microchip,mcp3201 - microchip,mcp342x (add to trivial devices) - ti,adc0832 - ti,adc108s102 - ti,adc128s052 - ti,adc161s626 - ti,ads8344 - ti,tlc4541 (includes adding an accidentally dropped original binding doc) * adi,adi-axi-adc - Use kobj_to_dev instead of open coding. * adi,ad5686 - Constify iio_chan_spec * adi,ad8366 - Add HMC1119 to kconfig help text as the driver supports it. * adi,ad9523 - Use devm for reset of probe and drop remove. * adi,adxl372 - Tidy up alignment - Add OF table - Add peak mode support with some docs. * bosch,bma220 (general tidy up) - Fix some return codes. - Use read_avail callback rather than open coding attrs. - Use dev_get_drvdata rather than dance via to_spi_device() - Mark PM functions as __maybe_unused rather than #ifdef fun. - Drop ACPI_PTR protections and ifdefs. - Tidy up header ordering. - BIT and GENMASK * broadcom,bcm_iproc - Drop of_match_ptr protection and switch to mod_devicetable.h Part of general move to get this anti-pattern out of IIO. * melexis,mlx90614 - Simplify some calculations. - Add some kernel_doc - Use regmap poll loop rather than open coding. - Add extended calibration option. * sensortec,sx9310, wide ranging set of fixes and cleanups. - Document dt-binding. - Rename some macros to align better with spec sheet - Fix some issues with irq handling. - Drop of_match_ptr and ACPI_PTR macros to avoid unused warnings etc. - Switch to probe_new - Fix memory alignment for iio_push_to_buffers_with_timestamp() - Use long for bitmaps to allow use of for_each_bit_set() - Use regmap_read_poll instead of opencoding. - Simplify error paths - Enabled regulators at probe. - Use trigger flags from firmware rather than forcing them in the driver. * ti,adc081c - Drop ACPI IDs that are not likely to be official ones and we don't believe anyone is using. * ti,adc108s102 - Drop CONFIG_OF and of_match_ptr protections. * ti,adc128s052 - Drop of_match_ptr protection and include mod_devicetable.h * ti,dac5571 - Support powerdown for mutlichannel usecases. * xpowers,axp20x - Convert from OF to generic fw / device properties. Unlikely anyone will use this with anything other than devicetree, but this is part of a general move across IIO. * tag 'iio-for-5.10a-take2' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (96 commits) drivers/iio/humidity/hdc2010.c:305:2-3: Unneeded semicolon iio: accel: bma220: Remove unneeded blank lines iio: accel: bma220: Use BIT() and GENMASK() macros iio: accel: bma220: Group IIO headers together iio: accel: bma220: Drop ACPI_PTR() and accompanying ifdeffery iio: accel: bma220: Mark PM functions as __maybe_unused iio: accel: bma220: Use dev_get_drvdata() directly iio: accel: bma220: Convert to use ->read_avail() iio: accel: bma220: Fix returned codes from bma220_init(), bma220_deinit() dt-bindings: iio: adc: microchip,mcp3201 yaml conversion. iio: buffer-dmaengine: adjust `bytes_used` with residue info dt-bindings: iio: adc: ti,tlc4541 binding conversion dt-bindings: iio: adc: tlc4541 - recover accidentally dropped binding doc dt-bindings: iio: adc: ti,ads8344 yaml conversion dt-bindings: iio: adc: ti,adc128s052 yaml conversion. dt-bindings: iio: adc: ti,adc0832 yaml conversion. dt-bindings: iio: adc: ti,adc161s626 yaml conversion. dt-bindings: iio: adc: lltc,ltc2497 yaml conversion. dt-bindings: iio: adc: ti,adc108s102 yaml conversion dt-bindings: trivial-devices: Add mcp342x ADCs and drop separate binding doc. ...
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio82
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-accel-adxl3727
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-humidity-hdc20109
-rw-r--r--Documentation/devicetree/bindings/iio/adc/lltc,ltc2497.yaml44
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ltc2497.txt13
-rw-r--r--Documentation/devicetree/bindings/iio/adc/max11100.txt18
-rw-r--r--Documentation/devicetree/bindings/iio/adc/max1118.txt21
-rw-r--r--Documentation/devicetree/bindings/iio/adc/max9611.txt27
-rw-r--r--Documentation/devicetree/bindings/iio/adc/maxim,max11100.yaml49
-rw-r--r--Documentation/devicetree/bindings/iio/adc/maxim,max1118.yaml62
-rw-r--r--Documentation/devicetree/bindings/iio/adc/maxim,max9611.yaml51
-rw-r--r--Documentation/devicetree/bindings/iio/adc/mcp320x.txt57
-rw-r--r--Documentation/devicetree/bindings/iio/adc/mcp3422.txt19
-rw-r--r--Documentation/devicetree/bindings/iio/adc/microchip,mcp3201.yaml77
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,adc0832.yaml56
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,adc108s102.yaml47
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,adc128s052.yaml59
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,adc161s626.yaml51
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,ads8344.yaml51
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti,tlc4541.yaml52
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti-adc0832.txt19
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti-adc108s102.txt18
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti-adc128s052.txt25
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti-adc161s626.txt18
-rw-r--r--Documentation/devicetree/bindings/iio/adc/ti-ads8344.txt19
-rw-r--r--Documentation/devicetree/bindings/iio/chemical/atlas,sensor.yaml4
-rw-r--r--Documentation/devicetree/bindings/iio/dac/lltc,ltc2632.yaml77
-rw-r--r--Documentation/devicetree/bindings/iio/dac/ltc2632.txt49
-rw-r--r--Documentation/devicetree/bindings/iio/gyroscope/adi,adxrs290.yaml53
-rw-r--r--Documentation/devicetree/bindings/iio/humidity/ti,hdc2010.yaml45
-rw-r--r--Documentation/devicetree/bindings/iio/light/ams,as73211.yaml54
-rw-r--r--Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml65
-rw-r--r--Documentation/devicetree/bindings/trivial-devices.yaml16
-rw-r--r--MAINTAINERS14
-rw-r--r--drivers/iio/accel/adxl372.c311
-rw-r--r--drivers/iio/accel/adxl372_i2c.c8
-rw-r--r--drivers/iio/accel/adxl372_spi.c4
-rw-r--r--drivers/iio/accel/bma180.c20
-rw-r--r--drivers/iio/accel/bma220_spi.c85
-rw-r--r--drivers/iio/accel/mma8452.c20
-rw-r--r--drivers/iio/adc/Kconfig2
-rw-r--r--drivers/iio/adc/adi-axi-adc.c2
-rw-r--r--drivers/iio/adc/axp20x_adc.c14
-rw-r--r--drivers/iio/adc/bcm_iproc_adc.c4
-rw-r--r--drivers/iio/adc/envelope-detector.c16
-rw-r--r--drivers/iio/adc/exynos_adc.c10
-rw-r--r--drivers/iio/adc/ltc2497-core.c10
-rw-r--r--drivers/iio/adc/meson_saradc.c7
-rw-r--r--drivers/iio/adc/rcar-gyroadc.c9
-rw-r--r--drivers/iio/adc/stm32-adc-core.c75
-rw-r--r--drivers/iio/adc/stm32-adc.c10
-rw-r--r--drivers/iio/adc/stm32-dfsdm-adc.c10
-rw-r--r--drivers/iio/adc/stm32-dfsdm-core.c9
-rw-r--r--drivers/iio/adc/ti-adc081c.c24
-rw-r--r--drivers/iio/adc/ti-adc108s102.c5
-rw-r--r--drivers/iio/adc/ti-adc128s052.c3
-rw-r--r--drivers/iio/afe/iio-rescale.c8
-rw-r--r--drivers/iio/amplifiers/Kconfig1
-rw-r--r--drivers/iio/amplifiers/hmc425a.c9
-rw-r--r--drivers/iio/buffer/industrialio-buffer-dmaengine.c6
-rw-r--r--drivers/iio/chemical/atlas-ezo-sensor.c88
-rw-r--r--drivers/iio/chemical/scd30_core.c9
-rw-r--r--drivers/iio/dac/ad5686.c8
-rw-r--r--drivers/iio/dac/ad5686.h2
-rw-r--r--drivers/iio/dac/dpot-dac.c16
-rw-r--r--drivers/iio/dac/stm32-dac-core.c5
-rw-r--r--drivers/iio/dac/ti-dac5571.c29
-rw-r--r--drivers/iio/frequency/ad9523.c60
-rw-r--r--drivers/iio/gyro/Kconfig10
-rw-r--r--drivers/iio/gyro/Makefile1
-rw-r--r--drivers/iio/gyro/adxrs290.c446
-rw-r--r--drivers/iio/health/max30102.c4
-rw-r--r--drivers/iio/humidity/Kconfig10
-rw-r--r--drivers/iio/humidity/Makefile1
-rw-r--r--drivers/iio/humidity/hdc2010.c353
-rw-r--r--drivers/iio/iio_core_trigger.h4
-rw-r--r--drivers/iio/imu/inv_mpu6050/inv_mpu_core.c20
-rw-r--r--drivers/iio/industrialio-core.c1
-rw-r--r--drivers/iio/light/Kconfig15
-rw-r--r--drivers/iio/light/Makefile1
-rw-r--r--drivers/iio/light/as73211.c801
-rw-r--r--drivers/iio/light/isl29018.c9
-rw-r--r--drivers/iio/light/tsl2772.c10
-rw-r--r--drivers/iio/magnetometer/ak8974.c11
-rw-r--r--drivers/iio/magnetometer/mag3110.c20
-rw-r--r--drivers/iio/multiplexer/iio-mux.c8
-rw-r--r--drivers/iio/proximity/sx9310.c420
-rw-r--r--drivers/iio/temperature/mlx90632.c274
-rw-r--r--drivers/staging/iio/Documentation/overview.txt4
-rw-r--r--drivers/staging/iio/frequency/ad9834.c1
-rw-r--r--include/linux/platform_data/ad7793.h2
-rw-r--r--include/uapi/linux/iio/types.h1
-rw-r--r--tools/iio/iio_event_monitor.c2
93 files changed, 3696 insertions, 960 deletions
diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio
index 5c62bfb0f3f5..c20334454dbf 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio
+++ b/Documentation/ABI/testing/sysfs-bus-iio
@@ -40,6 +40,7 @@ Description:
buffered samples and events for device X.
What: /sys/bus/iio/devices/iio:deviceX/sampling_frequency
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency
What: /sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency
What: /sys/bus/iio/devices/triggerX/sampling_frequency
KernelVersion: 2.6.35
@@ -49,12 +50,13 @@ Description:
resulting sampling frequency. In many devices this
parameter has an effect on input filters etc. rather than
simply controlling when the input is sampled. As this
- effects data ready triggers, hardware buffers and the sysfs
+ affects data ready triggers, hardware buffers and the sysfs
direct access interfaces, it may be found in any of the
- relevant directories. If it effects all of the above
+ relevant directories. If it affects all of the above
then it is to be found in the base device directory.
What: /sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available
What: /sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available
What: /sys/.../iio:deviceX/buffer/sampling_frequency_available
What: /sys/bus/iio/devices/triggerX/sampling_frequency_available
@@ -374,6 +376,9 @@ What: /sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
What: /sys/bus/iio/devices/iio:deviceX/in_illuminance_scale
What: /sys/bus/iio/devices/iio:deviceX/in_countY_scale
What: /sys/bus/iio/devices/iio:deviceX/in_angl_scale
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale
KernelVersion: 2.6.35
Contact: linux-iio@vger.kernel.org
Description:
@@ -401,21 +406,21 @@ Description:
Hardware applied calibration offset (assumed to fix production
inaccuracies).
-What /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
-What /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
-what /sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
-what /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
+What: /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
What: /sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
What: /sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale
@@ -483,7 +488,8 @@ Description:
If a discrete set of scale values is available, they
are listed in this attribute.
-What /sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
+What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
@@ -494,6 +500,13 @@ Description:
Hardware applied gain factor. If shared across all channels,
<type>_hardwaregain is used.
+What: /sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available
+KernelVersion: 5.10
+Contact: linux-iio@vger.kernel.org
+Description:
+ Lists all available hardware applied gain factors. Shared across all
+ channels.
+
What: /sys/.../in_accel_filter_low_pass_3db_frequency
What: /sys/.../in_magn_filter_low_pass_3db_frequency
What: /sys/.../in_anglvel_filter_low_pass_3db_frequency
@@ -750,9 +763,9 @@ What: /sys/.../events/in_voltageY_raw_thresh_falling_value
What: /sys/.../events/in_tempY_raw_thresh_rising_value
What: /sys/.../events/in_tempY_raw_thresh_falling_value
What: /sys/.../events/in_illuminance0_thresh_falling_value
-what: /sys/.../events/in_illuminance0_thresh_rising_value
-what: /sys/.../events/in_proximity0_thresh_falling_value
-what: /sys/.../events/in_proximity0_thresh_rising_value
+What: /sys/.../events/in_illuminance0_thresh_rising_value
+What: /sys/.../events/in_proximity0_thresh_falling_value
+What: /sys/.../events/in_proximity0_thresh_rising_value
What: /sys/.../events/in_illuminance_thresh_rising_value
What: /sys/.../events/in_illuminance_thresh_falling_value
KernelVersion: 2.6.37
@@ -832,11 +845,11 @@ What: /sys/.../events/in_tempY_thresh_rising_hysteresis
What: /sys/.../events/in_tempY_thresh_falling_hysteresis
What: /sys/.../events/in_tempY_thresh_either_hysteresis
What: /sys/.../events/in_illuminance0_thresh_falling_hysteresis
-what: /sys/.../events/in_illuminance0_thresh_rising_hysteresis
-what: /sys/.../events/in_illuminance0_thresh_either_hysteresis
-what: /sys/.../events/in_proximity0_thresh_falling_hysteresis
-what: /sys/.../events/in_proximity0_thresh_rising_hysteresis
-what: /sys/.../events/in_proximity0_thresh_either_hysteresis
+What: /sys/.../events/in_illuminance0_thresh_rising_hysteresis
+What: /sys/.../events/in_illuminance0_thresh_either_hysteresis
+What: /sys/.../events/in_proximity0_thresh_falling_hysteresis
+What: /sys/.../events/in_proximity0_thresh_rising_hysteresis
+What: /sys/.../events/in_proximity0_thresh_either_hysteresis
KernelVersion: 3.13
Contact: linux-iio@vger.kernel.org
Description:
@@ -1013,7 +1026,7 @@ What: /sys/.../events/in_activity_running_thresh_falling_en
KernelVersion: 3.19
Contact: linux-iio@vger.kernel.org
Description:
- Enables or disables activitity events. Depending on direction
+ Enables or disables activity events. Depending on direction
an event is generated when sensor ENTERS or LEAVES a given state.
What: /sys/.../events/in_activity_still_thresh_rising_value
@@ -1333,6 +1346,7 @@ Description:
standardised CIE Erythemal Action Spectrum. UV index values range
from 0 (low) to >=11 (extreme).
+What: /sys/.../iio:deviceX/in_intensity_integration_time
What: /sys/.../iio:deviceX/in_intensity_red_integration_time
What: /sys/.../iio:deviceX/in_intensity_green_integration_time
What: /sys/.../iio:deviceX/in_intensity_blue_integration_time
@@ -1342,7 +1356,8 @@ KernelVersion: 3.12
Contact: linux-iio@vger.kernel.org
Description:
This attribute is used to get/set the integration time in
- seconds.
+ seconds. If shared across all channels of a given type,
+ <type>_integration_time is used.
What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
KernelVersion: 4.0
@@ -1564,6 +1579,8 @@ What: /sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw
What: /