lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250714192433.4bc7785d@jic23-huawei>
Date: Mon, 14 Jul 2025 19:24:33 +0100
From: Jonathan Cameron <jic23@...nel.org>
To: Nuno Sá <noname.nuno@...il.com>
Cc: David Lechner <dlechner@...libre.com>, Nuno Sá	
 <nuno.sa@...log.com>, Andy Shevchenko <andy@...nel.org>,
 linux-kernel@...r.kernel.org, linux-iio@...r.kernel.org
Subject: Re: [PATCH] iio: ABI: fix correctness of I and Q modifiers

On Mon, 14 Jul 2025 12:23:54 +0100
Nuno Sá <noname.nuno@...il.com> wrote:

> On Fri, 2025-07-11 at 15:44 -0500, David Lechner wrote:
> > Update the IIO ABI documentation to reflect the actual usage of channels
> > with I and Q modifiers. These are currently only used in a few drivers:
> > 
> > frequency/admv1013 (kernel v5.17):
> > - in_altvoltageY-altvoltageZ_i_calibphase
> > - in_altvoltageY-altvoltageZ_q_calibphase
> > - in_altvoltageY_i_calibbias
> > - in_altvoltageY_q_calibbias
> > frequency/admv1014 (kernel v5.18):
> > - in_altvoltageY_i_phase
> > - in_altvoltageY_q_phase
> > - in_altvoltageY_i_offset
> > - in_altvoltageY_q_offset
> > - in_altvoltageY_i_calibscale_course
> > - in_altvoltageY_i_calibscale_fine
> > - in_altvoltageY_q_calibscale_course
> > - in_altvoltageY_q_calibscale_fine
> > frequency/adrf6780 (kernel v5.16):
> > - out_altvoltageY_i_phase
> > - out_altvoltageY_q_phase
> > 
> > There are no _raw or _scale attributes in use, so those are all removed.
> > There are no currentY attributes in use with these modifiers, so those
> > are also removed. All of the voltageY are changed to altvoltageY since
> > that is how they are actually used. None of these channels are used
> > with scan buffers, so all of those attributes are removed as well. And
> > the {in,out}_altvoltageY_{i,q}_phase attributes were missing so those
> > are added.
> > 
> > The differential channel names for admv1013 are fixed.
> > 
> > Signed-off-by: David Lechner <dlechner@...libre.com>
> > ---  
> 
> LGTM
> 
> Reviewed-by: Nuno Sá <nuno.sa@...log.com>
Applied.

> 
> > Note: the admv1013 calibscale_{course,fine} attributes are already
> > documented in a device-specific file as they should be since we don't
> > want to make those standard attributes.
> > ---
> >  Documentation/ABI/obsolete/sysfs-bus-iio           | 12 -------
> >  Documentation/ABI/testing/sysfs-bus-iio            | 38 ++++-----------------
> > -
> >  .../ABI/testing/sysfs-bus-iio-frequency-admv1013   |  4 +--
> >  3 files changed, 8 insertions(+), 46 deletions(-)
> > 
> > diff --git a/Documentation/ABI/obsolete/sysfs-bus-iio
> > b/Documentation/ABI/obsolete/sysfs-bus-iio
> > index
> > b64394b0b374f2479bab69218f6ad17c6ac651f2..a13523561958b7faf85ac42d965f78b99993
> > ffda 100644
> > --- a/Documentation/ABI/obsolete/sysfs-bus-iio
> > +++ b/Documentation/ABI/obsolete/sysfs-bus-iio
> > @@ -48,10 +48,6 @@
> > What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_en
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_en
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_en
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
> >  What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
> > @@ -73,10 +69,6 @@
> > What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_type
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_type
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_type
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
> >  What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
> > @@ -110,10 +102,6 @@ Description:
> >  
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
> >  What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_index
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_index
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_index
> > -What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_index
> >  What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
> >  What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
> >  What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
> > diff --git a/Documentation/ABI/testing/sysfs-bus-iio
> > b/Documentation/ABI/testing/sysfs-bus-iio
> > index
> > fcc40d211ddf388ad70f489177ba2fcebdb9f8dc..7e31b8cd49b32ea5b58bd99afc2e8105314d
> > 7a39 100644
> > --- a/Documentation/ABI/testing/sysfs-bus-iio
> > +++ b/Documentation/ABI/testing/sysfs-bus-iio
> > @@ -141,8 +141,6 @@ Description:
> >  
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_raw
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_raw
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_raw
> >  KernelVersion:	2.6.35
> >  Contact:	linux-iio@...r.kernel.org
> >  Description:
> > @@ -417,18 +415,14 @@
> > What:		/sys/bus/iio/devices/iio:deviceX/in_accel_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_q_offset
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_i_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_q_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_i_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_current_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_i_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_q_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_current_q_offset
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_current_i_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_temp_offset
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_offset
> > @@ -456,21 +450,15 @@ Description:
> >  		to the _raw output.
> >  
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_i_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_q_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_current_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_i_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_q_scale
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_current_i_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_current_q_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
> > @@ -603,11 +591,7 @@
> > What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_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_voltageY_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_voltageY_supply_calibscal
> > e
> >  What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_calibscale
> >  What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibscale
> > @@ -829,7 +813,11 @@ Description:
> >  		all the other channels, since it involves changing the VCO
> >  		fundamental output frequency.
> >  
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_i_phase
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_q_phase
> >  What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
> > +What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_i_phase
> > +What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_q_phase
> >  KernelVersion:	3.4.0
> >  Contact:	linux-iio@...r.kernel.org
> >  Description:
> > @@ -1458,10 +1446,6 @@
> > What:		/sys/.../iio:deviceX/bufferY/in_timestamp_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_en
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_en
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_en
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_incli_x_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_incli_y_en
> >  What:		/sys/.../iio:deviceX/bufferY/in_pressureY_en
> > @@ -1482,10 +1466,6 @@
> > What:		/sys/.../iio:deviceX/bufferY/in_incli_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltage_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_type
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_type
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_type
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_type
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_timestamp_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_pressureY_type
> >  What:		/sys/.../iio:deviceX/bufferY/in_pressure_type
> > @@ -1523,10 +1503,6 @@ Description:
> >  
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_index
> >  What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_index
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_index
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_index
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_index
> > -What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_index
> >  What:		/sys/.../iio:deviceX/bufferY/in_accel_x_index
> >  What:		/sys/.../iio:deviceX/bufferY/in_accel_y_index
> >  What:		/sys/.../iio:deviceX/bufferY/in_accel_z_index
> > @@ -1716,8 +1692,6 @@ Description:
> >  
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_raw
> >  What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_i_raw
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_q_raw
> >  KernelVersion:	3.17
> >  Contact:	linux-iio@...r.kernel.org
> >  Description:
> > diff --git a/Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1013
> > b/Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1013
> > index
> > de1e323e5d4741177e58a8c4058fa00271ea3b29..9cf8cd0dd2dfd5b0b67b5dbf28bbdb6bb4a4
> > ce7f 100644
> > --- a/Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1013
> > +++ b/Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1013
> > @@ -1,10 +1,10 @@
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-
> > 1_i_calibphase
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-
> > altvoltage1_i_calibphase
> >  KernelVersion:
> >  Contact:	linux-iio@...r.kernel.org
> >  Description:
> >  		Read/write unscaled value for the Local Oscillatior path
> > quadrature I phase shift.
> >  
> > -What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-
> > 1_q_calibphase
> > +What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-
> > altvoltage1_q_calibphase
> >  KernelVersion:
> >  Contact:	linux-iio@...r.kernel.org
> >  Description:
> > 
> > ---
> > base-commit: f8f559752d573a051a984adda8d2d1464f92f954
> > change-id: 20250711-iio-abi-fix-i-and-q-modifiers-b1e46ddd8d67
> > 
> > Best regards,  


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ