Jonathan Cameron
abce31c33d
iio: light: tcs3472: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-17-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
65a6ce5aeb
iio: light: tcs3414: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-16-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
565e9c17e4
iio: light: st_uvis25: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-15-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
43622f88b0
iio: light: si1145: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-14-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
e0dc0feb99
iio: light: rpr0521: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-13-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
9c97c7d2a9
iio: light: rpr0521: Factor out handling of IIO_INFO_RAW and use guard()
...
Factor out the code which is only called with the direct mode claimed.
This and the use of guard(mutex) allows direct returns simplifying
code flow.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-12-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
e08acc4c82
iio: light: rohm-bu27034: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Acked-by: Matti Vaittinen <mazziesaccount@gmail.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-11-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
7e8c0ec196
iio: light: opt4060: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated. This is a case where the code
is pinning down the mode so also has a claim on buffered mode.
A follow up set may move those calls over to a sparse friendly
form as well.
Tested-by: Per-Daniel Olsson <perdaniel.olsson@axis.com >
Reviewed-by: Per-Daniel Olsson <perdaniel.olsson@axis.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-10-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
2983ad971d
iio: light: ltr501: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-9-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
5a7387f208
iio: light: ltr501: Factor out core of write_raw() where direct mode claim is held.
...
Factoring this code out allows for direct returns on error simplifying code
flow.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-8-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
05e50a1da5
iio: light: ltr501: Factor out IIO_INFO_RAW leg of read_raw() callback.
...
Factoring this code out allows for direct returns, simplifying code flow.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-7-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
6025d20bc3
iio: light: as73211: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated
Cc: Javier Carrasco <javier.carrasco.cruz@gmail.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-6-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:56 +01:00
Jonathan Cameron
8dd92667f0
iio: light: as73211: Use guard() and move mode switch into inner write_raw fucntion
...
By using guard(mutex) and moving code that switches the device to config
mode into _as73211_write_raw() the error flow is simplified.
Cc: Javier Carrasco <javier.carrasco.cruz@gmail.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-5-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
d793d614dc
iio: light: isl29125: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-4-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
403443117b
iio: light: gp2ap020a00f: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-3-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
354eedf008
iio: light: apds9306: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Acked-by: Subhajit Ghosh <subhajit.ghosh@tweaklogic.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309170633.1347476-2-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
c86f8e8f9f
iio: adc: rcar: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Cc: Marek Vasut <marek.vasut+renesas@gmail.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-9-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
e6d364b408
iio: adc: mxs-lradc: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-8-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
ee4ef2cbf4
iio: adc: ti-ads1015: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Cc: Marek Vasut <marex@denx.de >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-7-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
5655ba5ada
iio: adc: ti-ads1015: Use guard(mutex) and factor out code for INFO_RAW
...
By use of automatic lock release and introducing a new utility
function to handle the core activity of reading the ADC channel,
many more complex code flows can be replaced by direct returns.
Cc: Marek Vasut <marex@denx.de >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-6-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
3ba3800286
iio: adc: ti-ads1100: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Cc: Mike Looijmans <mike.looijmans@topic.nl >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-5-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
d36adc77ee
iio: adc: ti-ads1100: Use guard(mutex) to allow direct returns
...
Use of automated lock release simplifies the code.
Cc: Mike Looijmans <mike.looijmans@topic.nl >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-4-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
5fe8331928
iio: adc: vf610: Switch to sparse friendly iio_device_claim/release_direct()
...
These new functions allow sparse to find failures to release
direct mode reducing chances of bugs over the claim_direct_mode()
functions that are deprecated.
Cc: Frank Li <Frank.Li@nxp.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-3-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Jonathan Cameron
16d92b70b2
iio: adc: vf610: Move claim of direct mode to caller of vf610_read_sample and use guard(mutex)
...
These two changes allow direct returns in all paths, improving code
readablity.
Cc: Frank Li <Frank.Li@nxp.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250309165819.1346684-2-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:55 +01:00
Olivier Moysan
cfed1969fc
iio: trigger: stm32-lptimer: add support for stm32mp25
...
Add support for STM32MP25 SoC. Use newly introduced compatible to handle
this new HW variant. Add new trigger definitions that can be used by the
stm32 analog-to-digital converter. Use compatible data to identify them.
Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com >
Signed-off-by: Fabrice Gasnier <fabrice.gasnier@foss.st.com >
Link: https://patch.msgid.link/20250314171451.3497789-4-fabrice.gasnier@foss.st.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
Gustavo A. R. Silva
0d0f3bfb47
iio: cros_ec: Avoid -Wflex-array-member-not-at-end warning
...
-Wflex-array-member-not-at-end was introduced in GCC-14, and we are
getting ready to enable it, globally.
Use the `DEFINE_RAW_FLEX()` helper for an on-stack definition of
a flexible structure where the size of the flexible-array member
is known at compile-time, and refactor the rest of the code,
accordingly.
So, with these changes, fix the following warning:
drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c:39:40: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org >
Reviewed-by: Tzung-Bi Shih <tzungbi@kernel.org >
Link: https://patch.msgid.link/Z9lE6IVDeC5lnChN@kspp
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
Gustavo A. R. Silva
c72ada9978
iio: proximity: cros_ec_mkbp_proximity: Avoid -Wflex-array-member-not-at-end warning
...
-Wflex-array-member-not-at-end was introduced in GCC-14, and we are
getting ready to enable it, globally.
Use the `DEFINE_RAW_FLEX()` helper for an on-stack definition of
a flexible structure where the size of the flexible-array member
is known at compile-time, and refactor the rest of the code,
accordingly.
So, with these changes, fix the following warning:
drivers/iio/proximity/cros_ec_mkbp_proximity.c:63:40: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org >
Reviewed-by: Tzung-Bi Shih <tzungbi@kernel.org >
Link: https://patch.msgid.link/Z9lEYdPPIyiRGm36@kspp
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
dc0e07126e
iio: adc: ad7606_par: add ad7606c chips
...
Add lookup table entries for ad7606c-16 and ad7606c-18 chips.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-10-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
3b5b55ca94
iio: adc: ad7606: dynamically allocate channel info
...
Refactor the ad7606 drivers to dynamically allocate the channel info.
The channel info was getting a bit unwieldy. In some cases, the
indio_dev->channels field was getting assigned up to 3 different times,
each in a different function, making it difficult to see where the info
was coming from. This problem stems from the number of permutations of
the channel array needed to support various modes of operation and data
buses. We already have 4 per chip (hardware mode, software mode, AXI ADC
backend and AXI ADC backend with software mode) and we intend to add two
more per chip when adding SPI offload support.
To make it easier to read and maintain, move all of the channel setup
to a single function that dynamically allocates and fills in the channel
info.
Additionally, this lets us remove some hacks where we had to compute an
offset due to the fact that sometimes there was a soft timestamp channel
at the start of the array. Now the timestamp channel is always at the
end of the array as is typical in other drivers.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-9-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
c1f571c3ca
iio: adc: ad7606: drop ch param from ad7606_scale_setup_cb_t
...
Drop the ch parameter from the ad7606_scale_setup_cb_t functions. The
same info is already available from the chan param via chan->scan_type
and chan->channel, so the parameter is redundant.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-8-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
f504e35293
iio: adc: ad7606: don't use address field
...
Drop use of the address field in the ad7606 driver. This field was
duplicating the same info that was already in the channel and scan_index
fields. This is one less thing to have to hold in your mind when reading
the code.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-7-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
050cf84f0b
iio: adc: ad7606: use kernel identifier name style
...
Use lower_snake_case for the identifier names as that is the usual
kernel code style.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-6-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
450f44b71a
iio: adc: ad7606: fix kernel-doc comments
...
Fix several issues with kernel-doc comments in ad7606.h:
* Add missing ":" to @param names.
* Fix order of @param names.
* Add some missing parameters.
* Remove some non-existent parameters.
* Fix alignment and wrapping.
* Fix some spelling.
`./scripts/kernel-doc -v -none drivers/iio/adc/ad7606*` is happy now.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-5-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
37fd5e6e0f
iio: adc: ad7606: use devm_mutex_init()
...
Use devm_mutex_init() in ad7606_probe(). Mutexes should be cleaned up
on driver removal.
Also add missing include while we are touching this.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-4-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
40fa5f535d
iio: adc: ad7606: add missing max sample rates
...
Add max sample rates for all of the chips. Previously, only one chip had
this field populated. The fallback value for the initial sampling
frequency can be removed now that all chips have a max sample rate
defined.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-3-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Lechner
4d71bf6021
iio: adc: ad7606_spi: check error in ad7606B_sw_mode_config()
...
Add missing error check in ad7606B_sw_mode_config().
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250318-iio-adc-ad7606-improvements-v2-2-4b605427774c@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Heidelberg
868fb07080
iio: light: al3320a: Split set_pwr function into set_pwr_on and _off
...
Simplifies later conversion to the regmap framework.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-8-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:54 +01:00
David Heidelberg
2eaf77b464
iio: light: al3010: Split set_pwr function into set_pwr_on and _off
...
Simplifies later conversion to the regmap framework.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-7-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
26763a3481
iio: light: al3320a: Abstract device reference in the probe function
...
Introduce a local variable reducing redundancy and improving readability.
No functional changes.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-6-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
861cc66854
iio: light: al3010: Abstract device reference in the probe function
...
Introduce a local variable reducing redundancy and improving readability.
No functional changes.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-5-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
dd3f76931e
iio: light: al3320a: Remove DRV_NAME definition
...
The driver name should be passed directly.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-4-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
58c8c655f4
iio: light: al3010: Remove DRV_NAME definition
...
The driver name should be passed directly.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-3-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
cddd6a959c
iio: light: al3320a: Use unsigned int for the indexing
...
The integer is used as array index which cannot be negative.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-2-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
David Heidelberg
a29542e614
iio: light: al3010: Use unsigned int for the indexing
...
The integer is used as array index which cannot be negative.
Signed-off-by: David Heidelberg <david@ixit.cz >
Link: https://patch.msgid.link/20250319-al3010-iio-regmap-v2-1-1310729d0543@ixit.cz
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Jorge Marques
ba25cbf5fe
Documentation: ABI: add events sampling frequency in sysfs-bus-iio
...
Some devices have an internal clock used by the events to space the
conversions.
The max1363 introduced the option in
commit 168c9d95a9 ("iio:adc:max1363 move from staging.")
and ad799x in
commit ba1d79613d ("staging:iio:ad799x: Use event spec for threshold
hysteresis")
Signed-off-by: Jorge Marques <jorge.marques@analog.com >
Link: https://patch.msgid.link/20250321-abi-oversampling-events-frequency-v1-1-794c1ab2f079@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Angelo Dureghello
3c8fd200a7
iio: dac: ad3552r-hs: add debugfs reg access
...
Add debugfs register access.
Reviewed-by: Nuno Sá <nuno.sa@analog.com >
Signed-off-by: Angelo Dureghello <adureghello@baylibre.com >
Reviewed-by: David Lechner <dlechner@baylibre.com >
Link: https://patch.msgid.link/20250319-wip-bl-ad3552r-fixes-v3-1-9975b38c0082@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Matti Vaittinen
d9848cb632
MAINTAINERS: Add ROHM BD79124 ADC/GPO
...
Add undersigned as a maintainer for the ROHM BD79124 ADC/GPO driver.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com >
Link: https://patch.msgid.link/fa3b65599592c1685230a5fa95aea6ed12b0b504.1742560649.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Matti Vaittinen
96f0f0e3ac
MAINTAINERS: Add IIO ADC helpers
...
Add undersigned as a maintainer for the IIO ADC helpers.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com >
Link: https://patch.msgid.link/1263c954cfb74223f322a9c31bd57f13d5516680.1742560649.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Matti Vaittinen
3f57a3b9ab
iio: adc: Support ROHM BD79124 ADC
...
The ROHM BD79124 is a 12-bit, 8-channel, SAR ADC. The ADC supports
an automatic measurement mode, with an alarm interrupt for out-of-window
measurements. The window is configurable for each channel.
The I2C protocol for manual start of the measurement and data reading is
somewhat peculiar. It requires the master to do clock stretching after
sending the I2C slave-address until the slave has captured the data.
Needless to say this is not well suopported by the I2C controllers.
Thus do not support the BD79124's manual measurement mode but implement
the measurements using automatic measurement mode, relying on the
BD79124's ability of storing latest measurements into register.
Support also configuring the threshold events for detecting the
out-of-window events.
The BD79124 keeps asserting IRQ for as long as the measured voltage is
out of the configured window. Thus, prevent the user-space from choking
on the events and mask the received event for a fixed duration (1 second)
when an event is handled.
The ADC input pins can be also configured as general purpose outputs.
Make those pins which don't have corresponding ADC channel node in the
device-tree controllable as GPO.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com >
Link: https://patch.msgid.link/ca3886c9abcb268ca976e62cd7da28bf5d6e6382.1742560649.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:53 +01:00
Matti Vaittinen
19d8a86918
iio: adc: sun20i-gpadc: Use adc-helpers
...
The new devm_iio_adc_device_alloc_chaninfo_se() -helper is intended to
help drivers avoid open-coding the for_each_node -loop for getting the
channel IDs. The helper provides standard way to detect the ADC channel
nodes (by the node name), and a standard way to convert the "reg"
-properties to channel identification numbers, used in the struct
iio_chan_spec. Furthermore, the helper can optionally check the found
channel IDs are smaller than given maximum. This is useful for callers
which later use the IDs for example for indexing a channel data array.
The original driver treated all found child nodes as channel nodes. The
new helper requires channel nodes to be named channel[@N]. This should
help avoid problems with devices which may contain also other but ADC
child nodes. Quick grep from arch/* with the sun20i-gpadc's compatible
string didn't reveal any in-tree .dts with channel nodes named
otherwise. Also, same grep shows all the in-tree .dts seem to have
channel IDs between 0..num of channels.
Use the new helper.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com >
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Link: https://patch.msgid.link/e367a803c0d625e60c9fca16c55a25eee06b5a89.1742560649.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2025-04-22 19:09:52 +01:00