Message ID | 20250414-b4-ad5820-dt-yaml-v3-1-39bbb5db7b2b@ixit.cz |
---|---|
State | New |
Headers | show |
Series | [v3] media: dt-bindings: Convert Analog Devices ad5820 to DT schema | expand |
On 16/04/2025 00:35, Rob Herring wrote: > On Mon, Apr 14, 2025 at 06:04:01PM +0200, David Heidelberg wrote: >> Convert the Analog Devices ad5820 to DT schema format. >> >> Added the io-channel-cells property, because it's already used by the > > You mean #io-channel-cells? > >> Nokia N900 device-tree and defines ad5820 as having only single output. >> >> Acked-by: Pavel Machek <pavel@ucw.cz> >> Signed-off-by: David Heidelberg <david@ixit.cz> >> --- >> Changes in v3: >> - Removed documentation of io-channel-cells property. Now it's 1:1 to >> the original binding. The reference to it from the Nokia N900 dts >> was removed in the -next. > > Added or removed? I'm confused. > >> - Link to v2: https://lore.kernel.org/r/20250314-b4-ad5820-dt-yaml-v2-1-287958c3c07c@ixit.cz >> >> Changes in v2: >> - added MAINTAINERS entry for the binding >> - documented why io-channel-cells got added into the binding. >> - dropped io-channel-cells in required properties. >> - adjusted example indentation to 4 spaces. >> - Link to v1: https://lore.kernel.org/r/20250209203940.159088-1-david@ixit.cz >> --- >> .../devicetree/bindings/media/i2c/ad5820.txt | 28 ---------- >> .../devicetree/bindings/media/i2c/adi,ad5820.yaml | 59 ++++++++++++++++++++++ >> MAINTAINERS | 1 + >> 3 files changed, 60 insertions(+), 28 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt >> deleted file mode 100644 >> index 5764cbedf9b73387ad1bfa9acf99c643f959b84a..0000000000000000000000000000000000000000 >> --- a/Documentation/devicetree/bindings/media/i2c/ad5820.txt >> +++ /dev/null >> @@ -1,28 +0,0 @@ >> -* Analog Devices AD5820 autofocus coil >> - >> -Required Properties: >> - >> - - compatible: Must contain one of: >> - - "adi,ad5820" >> - - "adi,ad5821" >> - - "adi,ad5823" >> - >> - - reg: I2C slave address >> - >> - - VANA-supply: supply of voltage for VANA pin >> - >> -Optional properties: >> - >> - - enable-gpios : GPIO spec for the XSHUTDOWN pin. The XSHUTDOWN signal is >> -active low, a high level on the pin enables the device. >> - >> -Example: >> - >> - ad5820: coil@c { >> - compatible = "adi,ad5820"; >> - reg = <0x0c>; >> - >> - VANA-supply = <&vaux4>; >> - enable-gpios = <&msmgpio 26 GPIO_ACTIVE_HIGH>; >> - }; >> - >> diff --git a/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml b/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml >> new file mode 100644 >> index 0000000000000000000000000000000000000000..93349e7daf262fc8939f984fbe93cf064a0cbaf8 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml >> @@ -0,0 +1,59 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/media/i2c/adi,ad5820.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Analog Devices AD5820 autofocus coil >> + >> +maintainers: >> + - Pavel Machek <pavel@ucw.cz> >> + >> +description: >> + The AD5820 is a current sink driver designed for precise control of >> + voice coil motors (VCMs) in camera autofocus systems. >> + >> +allOf: >> + - $ref: /schemas/iio/iio.yaml# > > You have the ref, so #io-channel-cells is allowed, but you need to say > what the value for it should be for *this* binding. IOW, you still need > to list it explicitly. I considered to keep the previous and new binding 1:1 and drop #io-channel-chells with the all references to it (missed this one). Would that be ok for v4? > >> + >> +properties: >> + compatible: >> + enum: >> + - adi,ad5820 >> + - adi,ad5821 >> + - adi,ad5823 >> + >> + reg: >> + maxItems: 1 >> + >> + enable-gpios: >> + maxItems: 1 >> + description: >> + GPIO spec for the XSHUTDOWN pin. The XSHUTDOWN signal is active low, >> + a high level on the pin enables the device. >> + >> + VANA-supply: >> + description: supply of voltage for VANA pin >> + >> +required: >> + - compatible >> + - reg >> + - VANA-supply >> + >> +unevaluatedProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/gpio/gpio.h> >> + >> + i2c { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + coil@c { >> + compatible = "adi,ad5820"; >> + reg = <0x0c>; >> + >> + enable-gpios = <&msmgpio 26 GPIO_ACTIVE_HIGH>; >> + VANA-supply = <&vaux4>; >> + }; >> + }; >> diff --git a/MAINTAINERS b/MAINTAINERS >> index af3537005de35dfd0ded11bdc2b9c63e10c70e93..366ed4905fc9b32862a4fd665cf5f4e09fafc989 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -17274,6 +17274,7 @@ M: Pavel Machek <pavel@kernel.org> >> M: Sakari Ailus <sakari.ailus@iki.fi> >> L: linux-media@vger.kernel.org >> S: Maintained >> +F: Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml >> F: drivers/media/i2c/ad5820.c >> F: drivers/media/i2c/et8ek8 >> >> >> --- >> base-commit: b425262c07a6a643ebeed91046e161e20b944164 >> change-id: 20250314-b4-ad5820-dt-yaml-3220bf2f1e40 >> >> Best regards, >> -- >> David Heidelberg <david@ixit.cz> >>
diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt deleted file mode 100644 index 5764cbedf9b73387ad1bfa9acf99c643f959b84a..0000000000000000000000000000000000000000 --- a/Documentation/devicetree/bindings/media/i2c/ad5820.txt +++ /dev/null @@ -1,28 +0,0 @@ -* Analog Devices AD5820 autofocus coil - -Required Properties: - - - compatible: Must contain one of: - - "adi,ad5820" - - "adi,ad5821" - - "adi,ad5823" - - - reg: I2C slave address - - - VANA-supply: supply of voltage for VANA pin - -Optional properties: - - - enable-gpios : GPIO spec for the XSHUTDOWN pin. The XSHUTDOWN signal is -active low, a high level on the pin enables the device. - -Example: - - ad5820: coil@c { - compatible = "adi,ad5820"; - reg = <0x0c>; - - VANA-supply = <&vaux4>; - enable-gpios = <&msmgpio 26 GPIO_ACTIVE_HIGH>; - }; - diff --git a/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml b/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml new file mode 100644 index 0000000000000000000000000000000000000000..93349e7daf262fc8939f984fbe93cf064a0cbaf8 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml @@ -0,0 +1,59 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/adi,ad5820.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices AD5820 autofocus coil + +maintainers: + - Pavel Machek <pavel@ucw.cz> + +description: + The AD5820 is a current sink driver designed for precise control of + voice coil motors (VCMs) in camera autofocus systems. + +allOf: + - $ref: /schemas/iio/iio.yaml# + +properties: + compatible: + enum: + - adi,ad5820 + - adi,ad5821 + - adi,ad5823 + + reg: + maxItems: 1 + + enable-gpios: + maxItems: 1 + description: + GPIO spec for the XSHUTDOWN pin. The XSHUTDOWN signal is active low, + a high level on the pin enables the device. + + VANA-supply: + description: supply of voltage for VANA pin + +required: + - compatible + - reg + - VANA-supply + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + coil@c { + compatible = "adi,ad5820"; + reg = <0x0c>; + + enable-gpios = <&msmgpio 26 GPIO_ACTIVE_HIGH>; + VANA-supply = <&vaux4>; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index af3537005de35dfd0ded11bdc2b9c63e10c70e93..366ed4905fc9b32862a4fd665cf5f4e09fafc989 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -17274,6 +17274,7 @@ M: Pavel Machek <pavel@kernel.org> M: Sakari Ailus <sakari.ailus@iki.fi> L: linux-media@vger.kernel.org S: Maintained +F: Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml F: drivers/media/i2c/ad5820.c F: drivers/media/i2c/et8ek8