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

iio: ABI: fix correctness of I and Q modifiers

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@baylibre.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://patch.msgid.link/20250711-iio-abi-fix-i-and-q-modifiers-v1-1-35963c9c8c01@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

authored by

David Lechner and committed by
Jonathan Cameron
9b71d269 e3d455de

+8 -46
-12
Documentation/ABI/obsolete/sysfs-bus-iio
··· 48 48 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en 49 49 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_en 50 50 What: /sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en 51 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_i_en 52 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_en 53 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_en 54 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_en 55 51 What: /sys/.../iio:deviceX/scan_elements/in_incli_x_en 56 52 What: /sys/.../iio:deviceX/scan_elements/in_incli_y_en 57 53 What: /sys/.../iio:deviceX/scan_elements/in_pressureY_en ··· 69 73 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_type 70 74 What: /sys/.../iio:deviceX/scan_elements/in_voltage_type 71 75 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type 72 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_i_type 73 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_type 74 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_type 75 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_type 76 76 What: /sys/.../iio:deviceX/scan_elements/in_timestamp_type 77 77 What: /sys/.../iio:deviceX/scan_elements/in_pressureY_type 78 78 What: /sys/.../iio:deviceX/scan_elements/in_pressure_type ··· 102 110 103 111 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_index 104 112 What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index 105 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_i_index 106 - What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_index 107 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_index 108 - What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_index 109 113 What: /sys/.../iio:deviceX/scan_elements/in_accel_x_index 110 114 What: /sys/.../iio:deviceX/scan_elements/in_accel_y_index 111 115 What: /sys/.../iio:deviceX/scan_elements/in_accel_z_index
+6 -32
Documentation/ABI/testing/sysfs-bus-iio
··· 141 141 142 142 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_raw 143 143 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw 144 - What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_raw 145 - What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_raw 146 144 KernelVersion: 2.6.35 147 145 Contact: linux-iio@vger.kernel.org 148 146 Description: ··· 415 417 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_offset 416 418 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_offset 417 419 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_offset 420 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage_q_offset 421 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage_i_offset 418 422 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_offset 419 423 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_offset 420 424 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset 421 425 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset 422 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_offset 423 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_offset 424 426 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_offset 425 427 What: /sys/bus/iio/devices/iio:deviceX/in_current_offset 426 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_i_offset 427 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_q_offset 428 - What: /sys/bus/iio/devices/iio:deviceX/in_current_q_offset 429 - What: /sys/bus/iio/devices/iio:deviceX/in_current_i_offset 430 428 What: /sys/bus/iio/devices/iio:deviceX/in_tempY_offset 431 429 What: /sys/bus/iio/devices/iio:deviceX/in_temp_offset 432 430 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_offset ··· 450 456 to the _raw output. 451 457 452 458 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_scale 453 - What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_scale 454 459 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale 455 460 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale 456 461 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_scale 457 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_scale 458 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_scale 459 462 What: /sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale 460 463 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_scale 461 464 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale 462 465 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_scale 463 466 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale 464 467 What: /sys/bus/iio/devices/iio:deviceX/in_current_scale 465 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_i_scale 466 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_q_scale 467 - What: /sys/bus/iio/devices/iio:deviceX/in_current_i_scale 468 468 What: /sys/bus/iio/devices/iio:deviceX/in_current_q_scale 469 469 What: /sys/bus/iio/devices/iio:deviceX/in_accel_scale 470 470 What: /sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale ··· 591 603 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale 592 604 What: /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale 593 605 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale 594 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale 595 - What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale 596 606 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale 597 - What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale 598 - What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale 599 607 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale 600 608 What: /sys/bus/iio/devices/iio:deviceX/out_currentY_calibscale 601 609 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_calibscale ··· 813 829 all the other channels, since it involves changing the VCO 814 830 fundamental output frequency. 815 831 832 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltageY_i_phase 833 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltageY_q_phase 816 834 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase 835 + What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_i_phase 836 + What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_q_phase 817 837 KernelVersion: 3.4.0 818 838 Contact: linux-iio@vger.kernel.org 819 839 Description: ··· 1446 1458 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_en 1447 1459 What: /sys/.../iio:deviceX/bufferY/in_voltageY_en 1448 1460 What: /sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en 1449 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_en 1450 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_en 1451 - What: /sys/.../iio:deviceX/bufferY/in_voltage_i_en 1452 - What: /sys/.../iio:deviceX/bufferY/in_voltage_q_en 1453 1461 What: /sys/.../iio:deviceX/bufferY/in_incli_x_en 1454 1462 What: /sys/.../iio:deviceX/bufferY/in_incli_y_en 1455 1463 What: /sys/.../iio:deviceX/bufferY/in_pressureY_en ··· 1466 1482 What: /sys/.../iio:deviceX/bufferY/in_voltageY_type 1467 1483 What: /sys/.../iio:deviceX/bufferY/in_voltage_type 1468 1484 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_type 1469 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_type 1470 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_type 1471 - What: /sys/.../iio:deviceX/bufferY/in_voltage_i_type 1472 - What: /sys/.../iio:deviceX/bufferY/in_voltage_q_type 1473 1485 What: /sys/.../iio:deviceX/bufferY/in_timestamp_type 1474 1486 What: /sys/.../iio:deviceX/bufferY/in_pressureY_type 1475 1487 What: /sys/.../iio:deviceX/bufferY/in_pressure_type ··· 1503 1523 1504 1524 What: /sys/.../iio:deviceX/bufferY/in_voltageY_index 1505 1525 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_index 1506 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_index 1507 - What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_index 1508 - What: /sys/.../iio:deviceX/bufferY/in_voltage_i_index 1509 - What: /sys/.../iio:deviceX/bufferY/in_voltage_q_index 1510 1526 What: /sys/.../iio:deviceX/bufferY/in_accel_x_index 1511 1527 What: /sys/.../iio:deviceX/bufferY/in_accel_y_index 1512 1528 What: /sys/.../iio:deviceX/bufferY/in_accel_z_index ··· 1692 1716 1693 1717 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_raw 1694 1718 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw 1695 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_i_raw 1696 - What: /sys/bus/iio/devices/iio:deviceX/in_currentY_q_raw 1697 1719 KernelVersion: 3.17 1698 1720 Contact: linux-iio@vger.kernel.org 1699 1721 Description:
+2 -2
Documentation/ABI/testing/sysfs-bus-iio-frequency-admv1013
··· 1 - What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_i_calibphase 1 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage0-altvoltage1_i_calibphase 2 2 KernelVersion: 3 3 Contact: linux-iio@vger.kernel.org 4 4 Description: 5 5 Read/write unscaled value for the Local Oscillatior path quadrature I phase shift. 6 6 7 - What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_q_calibphase 7 + What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage0-altvoltage1_q_calibphase 8 8 KernelVersion: 9 9 Contact: linux-iio@vger.kernel.org 10 10 Description: