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

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: iio: add backend support to sd modulator

The legacy sd modulator driver registers the sigma delta modulator as
an IIO channel provider. This implementation is not convenient when the
SD modulator has to be cascaded with another IIO device. The scaling
information is distributed across devices, which makes it difficult to
report consistent scaling data on IIO devices.

The solution is to expose these cascaded IIO devices as an aggregate
device, which report global scaling information.
Add IIO backend support to SD modulator to allow scaling information
management.

Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patch.msgid.link/20240730084640.1307938-6-olivier.moysan@foss.st.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

authored by

Olivier Moysan and committed by
Jonathan Cameron
281b4318 b8f31b1d

+16 -2
+16 -2
Documentation/devicetree/bindings/iio/adc/sigma-delta-modulator.yaml
··· 18 18 - sd-modulator 19 19 - ads1201 20 20 21 + '#io-backend-cells': 22 + const: 0 23 + 21 24 '#io-channel-cells': 22 25 const: 0 23 26 24 27 required: 25 28 - compatible 26 - - '#io-channel-cells' 29 + 30 + anyOf: 31 + - required: ['#io-backend-cells'] 32 + - required: ['#io-channel-cells'] 27 33 28 34 additionalProperties: false 29 35 30 36 examples: 31 37 - | 32 - ads1202: adc { 38 + // Backend binding example. SD modulator configured as an IIO backend device 39 + ads1201_0: adc { 40 + compatible = "sd-modulator"; 41 + #io-backend-cells = <0>; 42 + }; 43 + 44 + - | 45 + // Legacy binding example. SD modulator configured as an IIO channel provider 46 + ads1201_1: adc { 33 47 compatible = "sd-modulator"; 34 48 #io-channel-cells = <0>; 35 49 };