[PATCH v4] ASoC: dt-bindings: ak4458: Convert to dtschema
Convert the AK4458 audio DAC bindings to DT schema.
Signed-off-by: Saalim Quadri danascape@gmail.com --- Changes: V1 -> V2: Use the correct way for dsd-path property Drop ak4458 label form example V2 -> V3: ak4458 is the only one that does not support dsd-path, so we do not require to define an array V3 -> V4: Add back dsd-path property description
.../devicetree/bindings/sound/ak4458.txt | 28 ------- .../bindings/sound/asahi-kasei,ak4458.yaml | 73 +++++++++++++++++++ 2 files changed, 73 insertions(+), 28 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/ak4458.txt create mode 100644 Documentation/devicetree/bindings/sound/asahi-kasei,ak4458.yaml
diff --git a/Documentation/devicetree/bindings/sound/ak4458.txt b/Documentation/devicetree/bindings/sound/ak4458.txt deleted file mode 100644 index 0416c14895d6..000000000000 --- a/Documentation/devicetree/bindings/sound/ak4458.txt +++ /dev/null @@ -1,28 +0,0 @@ -AK4458 audio DAC - -This device supports I2C mode. - -Required properties: - -- compatible : "asahi-kasei,ak4458" or "asahi-kasei,ak4497" -- reg : The I2C address of the device for I2C - -Optional properties: -- reset-gpios: A GPIO specifier for the power down & reset pin -- mute-gpios: A GPIO specifier for the soft mute pin -- AVDD-supply: Analog power supply -- DVDD-supply: Digital power supply -- dsd-path: Select DSD input pins for ak4497 - 0: select #16, #17, #19 pins - 1: select #3, #4, #5 pins - -Example: - -&i2c { - ak4458: dac@10 { - compatible = "asahi-kasei,ak4458"; - reg = <0x10>; - reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW> - mute-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH> - }; -}; diff --git a/Documentation/devicetree/bindings/sound/asahi-kasei,ak4458.yaml b/Documentation/devicetree/bindings/sound/asahi-kasei,ak4458.yaml new file mode 100644 index 000000000000..608dce956be0 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/asahi-kasei,ak4458.yaml @@ -0,0 +1,73 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/asahi-kasei,ak4458.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: AK4458 audio DAC + +maintainers: + - Shengjiu Wang shengjiu.wang@nxp.com + +properties: + compatible: + enum: + - asahi-kasei,ak4458 + - asahi-kasei,ak4497 + + reg: + maxItems: 1 + + avdd-supply: + description: Analog power supply + + dvdd-supply: + description: Digital power supply + + reset-gpios: + maxItems: 1 + + mute-gpios: + maxItems: 1 + description: + GPIO used to mute all the outputs + + dsd-path: + description: Select DSD input pins for ak4497 + $ref: /schemas/types.yaml#/definitions/uint32 + oneOf: + - const: 0 + description: select #16, #17, #19 pins + - const: 1 + description: select #3, #4, #5 pins + +allOf: + - if: + properties: + compatible: + contains: + const: asahi-kasei,ak4458 + + then: + properties: + dsd-path: false + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + codec@10 { + compatible = "asahi-kasei,ak4458"; + reg = <0x10>; + reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; + mute-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; + }; + };
On 28/03/2023 10:47, Saalim Quadri wrote:
Convert the AK4458 audio DAC bindings to DT schema.
Signed-off-by: Saalim Quadri danascape@gmail.com
(...)
- dvdd-supply:
- description: Digital power supply
- reset-gpios:
- maxItems: 1
- mute-gpios:
- maxItems: 1
- description:
GPIO used to mute all the outputs
- dsd-path:
- description: Select DSD input pins for ak4497
- $ref: /schemas/types.yaml#/definitions/uint32
- oneOf:
- const: 0
description: select #16, #17, #19 pins
- const: 1
description: select #3, #4, #5 pins
+allOf:
- if:
properties:
compatible:
contains:
const: asahi-kasei,ak4458
- then:
properties:
dsd-path: false
When I commented on adding allOf, I did it in specific place - after required before additionalProperties. You decided to put it in different place, not the one I asked. Also not the place example-schema is suggesting. The placement of people comments in emails is important. We answer here always inline, thus comments apply in the place they are given.
Reviewed-by: Krzysztof Kozlowski krzysztof.kozlowski@linaro.org
Best regards, Krzysztof
I apologise, I will keep this in mind from now on and will avoid it in future. I will send the finaly patch, fixing the schema format.
Apologies,
Saalim
participants (2)
-
Krzysztof Kozlowski
-
Saalim Quadri