2024-04-12 03:22:37

by Paller, Kim Seer

[permalink] [raw]
Subject: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC

Define the sysfs interface for toggle capable channels.

Toggle enabled channels will have:

* out_currentY_toggle_en
* out_currentY_raw0
* out_currentY_raw1
* out_currentY_symbol

The common interface present in all channels is:

* out_currentY_raw (not present in toggle enabled channels)
* out_currentY_raw_available
* out_currentY_powerdown
* out_currentY_scale
* out_currentY_offset

Co-developed-by: Michael Hennerich <[email protected]>
Signed-off-by: Michael Hennerich <[email protected]>
Signed-off-by: Kim Seer Paller <[email protected]>
---
.../ABI/testing/sysfs-bus-iio-dac-ltc2672 | 30 +++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 31 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672

diff --git a/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672 b/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
new file mode 100644
index 000000000..b984d92f7
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
@@ -0,0 +1,30 @@
+What: /sys/bus/iio/devices/iio:deviceX/out_currentY_toggle_en
+KernelVersion: 5.18
+Contact: [email protected]
+Description:
+ Toggle enable. Write 1 to enable toggle or 0 to disable it. This is
+ useful when one wants to change the DAC output codes. The way it should
+ be done is:
+
+ - disable toggle operation;
+ - change out_currentY_raw0 and out_currentY_raw1;
+ - enable toggle operation.
+
+What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw0
+What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw1
+KernelVersion: 5.18
+Contact: [email protected]
+Description:
+ It has the same meaning as out_currentY_raw. This attribute is
+ specific to toggle enabled channels and refers to the DAC output
+ code in INPUT_A (_raw0) and INPUT_B (_raw1). The same scale and offset
+ as in out_currentY_raw applies.
+
+What: /sys/bus/iio/devices/iio:deviceX/out_currentY_symbol
+KernelVersion: 5.18
+Contact: [email protected]
+Description:
+ Performs a SW toggle. This attribute is specific to toggle
+ enabled channels and allows to toggle between out_currentY_raw0
+ and out_currentY_raw1 through software. Writing 0 will select
+ out_currentY_raw0 while 1 selects out_currentY_raw1.
diff --git a/MAINTAINERS b/MAINTAINERS
index 9ed00b364..fba8bacc0 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -12843,6 +12843,7 @@ L: [email protected]
S: Supported
W: https://ez.analog.com/linux-software-drivers
F: Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2664
+F: Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
F: Documentation/devicetree/bindings/iio/dac/adi,ltc2664.yaml

LTC2688 IIO DAC DRIVER
--
2.34.1



2024-04-13 15:27:07

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC

On Fri, 12 Apr 2024 11:21:01 +0800
Kim Seer Paller <[email protected]> wrote:

> Define the sysfs interface for toggle capable channels.
>
> Toggle enabled channels will have:
>
> * out_currentY_toggle_en
> * out_currentY_raw0
> * out_currentY_raw1
> * out_currentY_symbol
>
> The common interface present in all channels is:
>
> * out_currentY_raw (not present in toggle enabled channels)
> * out_currentY_raw_available
> * out_currentY_powerdown
> * out_currentY_scale
> * out_currentY_offset
>
> Co-developed-by: Michael Hennerich <[email protected]>
> Signed-off-by: Michael Hennerich <[email protected]>
> Signed-off-by: Kim Seer Paller <[email protected]>
> ---
> .../ABI/testing/sysfs-bus-iio-dac-ltc2672 | 30 +++++++++++++++++++

You can only have per device ABI defined if that is the only user
of the ABI. That may actually be true here but given I've asked you to generalize
the voltage equivalent, I think we've shown this is general enough that the current
version should also be raised to sysfs-bus-iio-dac

> MAINTAINERS | 1 +
> 2 files changed, 31 insertions(+)
> create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
>
> diff --git a/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672 b/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
> new file mode 100644
> index 000000000..b984d92f7
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
> @@ -0,0 +1,30 @@
> +What: /sys/bus/iio/devices/iio:deviceX/out_currentY_toggle_en
> +KernelVersion: 5.18
> +Contact: [email protected]
> +Description:
> + Toggle enable. Write 1 to enable toggle or 0 to disable it. This is
> + useful when one wants to change the DAC output codes. The way it should
> + be done is:
> +
> + - disable toggle operation;
> + - change out_currentY_raw0 and out_currentY_raw1;
> + - enable toggle operation.
> +
> +What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw0
> +What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw1
> +KernelVersion: 5.18
> +Contact: [email protected]
> +Description:
> + It has the same meaning as out_currentY_raw. This attribute is
> + specific to toggle enabled channels and refers to the DAC output
> + code in INPUT_A (_raw0) and INPUT_B (_raw1). The same scale and offset
> + as in out_currentY_raw applies.
> +
> +What: /sys/bus/iio/devices/iio:deviceX/out_currentY_symbol
> +KernelVersion: 5.18
> +Contact: [email protected]
> +Description:
> + Performs a SW toggle. This attribute is specific to toggle
> + enabled channels and allows to toggle between out_currentY_raw0
> + and out_currentY_raw1 through software. Writing 0 will select
> + out_currentY_raw0 while 1 selects out_currentY_raw1.
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9ed00b364..fba8bacc0 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -12843,6 +12843,7 @@ L: [email protected]
> S: Supported
> W: https://ez.analog.com/linux-software-drivers
> F: Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2664
> +F: Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2672
> F: Documentation/devicetree/bindings/iio/dac/adi,ltc2664.yaml
>
> LTC2688 IIO DAC DRIVER


2024-04-16 14:29:03

by Paller, Kim Seer

[permalink] [raw]
Subject: RE: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC

> -----Original Message-----
> From: Jonathan Cameron <[email protected]>
> Sent: Saturday, April 13, 2024 11:27 PM
> To: Paller, Kim Seer <[email protected]>
> Cc: [email protected]; [email protected]; linux-
> [email protected]; Lars-Peter Clausen <[email protected]>; Rob Herring
> <[email protected]>; Krzysztof Kozlowski <[email protected]>;
> Conor Dooley <[email protected]>; Liam Girdwood
> <[email protected]>; Mark Brown <[email protected]>; David Lechner
> <[email protected]>; Hennerich, Michael
> <[email protected]>
> Subject: Re: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC
>
> [External]
>
> On Fri, 12 Apr 2024 11:21:01 +0800
> Kim Seer Paller <[email protected]> wrote:
>
> > Define the sysfs interface for toggle capable channels.
> >
> > Toggle enabled channels will have:
> >
> > * out_currentY_toggle_en
> > * out_currentY_raw0
> > * out_currentY_raw1
> > * out_currentY_symbol
> >
> > The common interface present in all channels is:
> >
> > * out_currentY_raw (not present in toggle enabled channels)
> > * out_currentY_raw_available
> > * out_currentY_powerdown
> > * out_currentY_scale
> > * out_currentY_offset
> >
> > Co-developed-by: Michael Hennerich <[email protected]>
> > Signed-off-by: Michael Hennerich <[email protected]>
> > Signed-off-by: Kim Seer Paller <[email protected]>
> > ---
> > .../ABI/testing/sysfs-bus-iio-dac-ltc2672 | 30 +++++++++++++++++++
>
> You can only have per device ABI defined if that is the only user
> of the ABI. That may actually be true here but given I've asked you to
> generalize
> the voltage equivalent, I think we've shown this is general enough that the
> current
> version should also be raised to sysfs-bus-iio-dac

I'm still getting familiar with ABI documentation. If I understand correctly,
generalizing the documentation to cover both parts would also mean we remove
the overlapping sections from the ltc2688 ABI. Is that the correct approach?



2024-04-20 10:24:10

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC

On Tue, 16 Apr 2024 14:18:23 +0000
"Paller, Kim Seer" <[email protected]> wrote:

> > -----Original Message-----
> > From: Jonathan Cameron <[email protected]>
> > Sent: Saturday, April 13, 2024 11:27 PM
> > To: Paller, Kim Seer <[email protected]>
> > Cc: [email protected]; [email protected]; linux-
> > [email protected]; Lars-Peter Clausen <[email protected]>; Rob Herring
> > <[email protected]>; Krzysztof Kozlowski <[email protected]>;
> > Conor Dooley <[email protected]>; Liam Girdwood
> > <[email protected]>; Mark Brown <[email protected]>; David Lechner
> > <[email protected]>; Hennerich, Michael
> > <[email protected]>
> > Subject: Re: [PATCH 3/4] iio: ABI: add ABI file for the LTC2672 DAC
> >
> > [External]
> >
> > On Fri, 12 Apr 2024 11:21:01 +0800
> > Kim Seer Paller <[email protected]> wrote:
> >
> > > Define the sysfs interface for toggle capable channels.
> > >
> > > Toggle enabled channels will have:
> > >
> > > * out_currentY_toggle_en
> > > * out_currentY_raw0
> > > * out_currentY_raw1
> > > * out_currentY_symbol
> > >
> > > The common interface present in all channels is:
> > >
> > > * out_currentY_raw (not present in toggle enabled channels)
> > > * out_currentY_raw_available
> > > * out_currentY_powerdown
> > > * out_currentY_scale
> > > * out_currentY_offset
> > >
> > > Co-developed-by: Michael Hennerich <[email protected]>
> > > Signed-off-by: Michael Hennerich <[email protected]>
> > > Signed-off-by: Kim Seer Paller <[email protected]>
> > > ---
> > > .../ABI/testing/sysfs-bus-iio-dac-ltc2672 | 30 +++++++++++++++++++
> >
> > You can only have per device ABI defined if that is the only user
> > of the ABI. That may actually be true here but given I've asked you to
> > generalize
> > the voltage equivalent, I think we've shown this is general enough that the
> > current
> > version should also be raised to sysfs-bus-iio-dac
>
> I'm still getting familiar with ABI documentation. If I understand correctly,
> generalizing the documentation to cover both parts would also mean we remove
> the overlapping sections from the ltc2688 ABI. Is that the correct approach?
>
>

Yes. To test this build the html docs. IIRC that will complain about duplicate
ABI definitions. I'm sure there is a way to test just ABI docs build but
I've never really looked into it.

Jonathan