diff mbox series

[5/8] dt-bindings: iio: add sigma delta modulator backend

Message ID 20240618160836.945242-6-olivier.moysan@foss.st.com
State Superseded
Headers show
Series iio: adc: dfsdm: add scaling support | expand

Checks

Context Check Description
robh/checkpatch success
robh/patch-applied success
robh/dtbs-check warning build log
robh/dt-meta-schema success

Commit Message

Olivier Moysan June 18, 2024, 4:08 p.m. UTC
Add documentation of device tree bindings to support
sigma delta modulator backend in IIO framework.

Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com>
---
 .../iio/adc/sd-modulator-backend.yaml         | 43 +++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml

Comments

Conor Dooley June 18, 2024, 6:13 p.m. UTC | #1
On Tue, Jun 18, 2024 at 06:08:31PM +0200, Olivier Moysan wrote:
> Add documentation of device tree bindings to support
> sigma delta modulator backend in IIO framework.
> 
> Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com>
> ---
>  .../iio/adc/sd-modulator-backend.yaml         | 43 +++++++++++++++++++
>  1 file changed, 43 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
> 
> diff --git a/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
> new file mode 100644
> index 000000000000..b0fa71b75cd0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
> @@ -0,0 +1,43 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/adc/sd-modulator-backend.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Sigma delta modulator backend
> +
> +maintainers:
> +  - Olivier Moysan <olivier.moysan@foss.st.com>
> +
> +properties:
> +  compatible:
> +    description: |
> +      "sd-backend" can be used as a generic SD modulator backend,
> +      if the modulator is not specified in the compatible list.
> +    enum:
> +      - sd-backend

I'd rather not have a generic compatible like this. Something generic as
a fallback for the driver to binding against I would be fine with, but
not something that avoids people documenting their devices.

Also, I think "backend" should be dropped from the
filename/title/descriptions, the ads1201 is "just" an delta-sigma
modulator.:wq

> +      - ads1201

Missing vendor prefix.

Thanks,
Conor.


> +
> +  '#io-backend-cells':
> +    const: 0
> +
> +  reg:
> +    maxItems: 1
> +
> +  vref-supply:
> +    description: Phandle to the vref input analog reference voltage.
> +
> +required:
> +  - compatible
> +  - '#io-backend-cells'
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    ads1201: adc {
> +      compatible = "sd-backend";
> +      #io-backend-cells = <0>;
> +    };
> +
> +...
> -- 
> 2.25.1
>
Olivier Moysan June 25, 2024, 9:26 a.m. UTC | #2
Hi Conor,

On 6/18/24 20:13, Conor Dooley wrote:
> On Tue, Jun 18, 2024 at 06:08:31PM +0200, Olivier Moysan wrote:
>> Add documentation of device tree bindings to support
>> sigma delta modulator backend in IIO framework.
>>
>> Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com>
>> ---
>>   .../iio/adc/sd-modulator-backend.yaml         | 43 +++++++++++++++++++
>>   1 file changed, 43 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
>> new file mode 100644
>> index 000000000000..b0fa71b75cd0
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
>> @@ -0,0 +1,43 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/iio/adc/sd-modulator-backend.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Sigma delta modulator backend
>> +
>> +maintainers:
>> +  - Olivier Moysan <olivier.moysan@foss.st.com>
>> +
>> +properties:
>> +  compatible:
>> +    description: |
>> +      "sd-backend" can be used as a generic SD modulator backend,
>> +      if the modulator is not specified in the compatible list.
>> +    enum:
>> +      - sd-backend
> 
> I'd rather not have a generic compatible like this. Something generic as
> a fallback for the driver to binding against I would be fine with, but
> not something that avoids people documenting their devices.
> 

This binding was modeled on the following binding
Documentation/devicetree/bindings/iio/adc/sigma-delta-modulator.yaml
But, I understand that we need to encourage people to use a real 
compatible. So, I will remove this generic compatible from the binding 
in v2.

> Also, I think "backend" should be dropped from the
> filename/title/descriptions, the ads1201 is "just" an delta-sigma
> modulator.:wq
> 

There is already a generic sigma delta modulator driver: 
"sd_adc_modulator.c"
This driver follows a different approach, as it registers an IIO device. 
It has to be kept for backward compatibility.
The current patch introduces a new sigma delta modulator generic driver
based on the new IIO backend framework.
So, we have two drivers dedicated to the same type of hardware, but 
intented to be used with different topologies in IIO.
I used "backend" suffix as a differentiator here.
I did not find a better alternative to manage this diversity.
If, you have another suggestion please let me know.

>> +      - ads1201
> 
> Missing vendor prefix.
> 

Ack

BRs
Olivier

> Thanks,
> Conor.
> 
> 
>> +
>> +  '#io-backend-cells':
>> +    const: 0
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  vref-supply:
>> +    description: Phandle to the vref input analog reference voltage.
>> +
>> +required:
>> +  - compatible
>> +  - '#io-backend-cells'
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> +  - |
>> +    ads1201: adc {
>> +      compatible = "sd-backend";
>> +      #io-backend-cells = <0>;
>> +    };
>> +
>> +...
>> -- 
>> 2.25.1
>>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
new file mode 100644
index 000000000000..b0fa71b75cd0
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/adc/sd-modulator-backend.yaml
@@ -0,0 +1,43 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/adc/sd-modulator-backend.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Sigma delta modulator backend
+
+maintainers:
+  - Olivier Moysan <olivier.moysan@foss.st.com>
+
+properties:
+  compatible:
+    description: |
+      "sd-backend" can be used as a generic SD modulator backend,
+      if the modulator is not specified in the compatible list.
+    enum:
+      - sd-backend
+      - ads1201
+
+  '#io-backend-cells':
+    const: 0
+
+  reg:
+    maxItems: 1
+
+  vref-supply:
+    description: Phandle to the vref input analog reference voltage.
+
+required:
+  - compatible
+  - '#io-backend-cells'
+
+additionalProperties: false
+
+examples:
+  - |
+    ads1201: adc {
+      compatible = "sd-backend";
+      #io-backend-cells = <0>;
+    };
+
+...