[PATCH] ASoC: dt-bindings: nau8821: Convert to dtschema
Convert the NAU8821 audio CODEC bindings to DT schema.
Signed-off-by: Seven Lee wtli@nuvoton.com --- .../devicetree/bindings/sound/nau8821.txt | 55 -------- .../bindings/sound/nuvoton,nau8821.yaml | 120 ++++++++++++++++++ 2 files changed, 120 insertions(+), 55 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/nau8821.txt create mode 100644 Documentation/devicetree/bindings/sound/nuvoton,nau8821.yaml
diff --git a/Documentation/devicetree/bindings/sound/nau8821.txt b/Documentation/devicetree/bindings/sound/nau8821.txt deleted file mode 100644 index 7c84e7c7327a..000000000000 --- a/Documentation/devicetree/bindings/sound/nau8821.txt +++ /dev/null @@ -1,55 +0,0 @@ -Nuvoton NAU88L21 audio codec - -This device supports I2C only. - -Required properties: - - compatible : Must be "nuvoton,nau8821" - - - reg : the I2C address of the device. This is either 0x1B (CSB=0) or 0x54 (CSB=1). - -Optional properties: - - nuvoton,jkdet-enable: Enable jack detection via JKDET pin. - - nuvoton,jkdet-pull-enable: Enable JKDET pin pull. If set - pin pull enabled, - otherwise pin in high impedance state. - - nuvoton,jkdet-pull-up: Pull-up JKDET pin. If set then JKDET pin is pull up, otherwise pull down. - - nuvoton,jkdet-polarity: JKDET pin polarity. 0 - active high, 1 - active low. - - - nuvoton,vref-impedance: VREF Impedance selection - 0 - Open - 1 - 25 kOhm - 2 - 125 kOhm - 3 - 2.5 kOhm - - - nuvoton,micbias-voltage: Micbias voltage level. - 0 - VDDA - 1 - VDDA - 2 - VDDA * 1.1 - 3 - VDDA * 1.2 - 4 - VDDA * 1.3 - 5 - VDDA * 1.4 - 6 - VDDA * 1.53 - 7 - VDDA * 1.53 - - - nuvoton,jack-insert-debounce: number from 0 to 7 that sets debounce time to 2^(n+2) ms - - nuvoton,jack-eject-debounce: number from 0 to 7 that sets debounce time to 2^(n+2) ms - - - nuvoton,dmic-clk-threshold: the ADC threshold of DMIC clock. - - nuvoton,key_enable: Headset button detection switch. - -Example: - - headset: nau8821@1b { - compatible = "nuvoton,nau8821"; - reg = <0x1b>; - interrupt-parent = <&gpio>; - interrupts = <23 IRQ_TYPE_LEVEL_LOW>; - nuvoton,jkdet-enable; - nuvoton,jkdet-pull-enable; - nuvoton,jkdet-pull-up; - nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>; - nuvoton,vref-impedance = <2>; - nuvoton,micbias-voltage = <6>; - nuvoton,jack-insert-debounce = <7>; - nuvoton,jack-eject-debounce = <7>; - nuvoton,dmic-clk-threshold = 3072000; - }; diff --git a/Documentation/devicetree/bindings/sound/nuvoton,nau8821.yaml b/Documentation/devicetree/bindings/sound/nuvoton,nau8821.yaml new file mode 100644 index 000000000000..728223d20876 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/nuvoton,nau8821.yaml @@ -0,0 +1,120 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/nuvoton,nau8821.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NAU88L21 audio codec + +maintainers: + - Seven Lee wtli@nuvoton.com + +allOf: + - $ref: dai-common.yaml# + +properties: + compatible: + const: nuvoton,nau8821 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + nuvoton,jkdet-enable: + description: Enable jack detection via JKDET pin. + type: boolean + + nuvoton,jkdet-pull-enable: + description: Enable JKDET pin pull. If set - pin pull enabled, + otherwise pin in high impedance state. + type: boolean + + nuvoton,jkdet-pull-up: + description: Pull-up JKDET pin. If set then JKDET pin is pull up, + otherwise pull down. + type: boolean + + nuvoton,jkdet-polarity: + description: JKDET pin polarity. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # active high + - 1 # active low + default: 1 + + nuvoton,micbias-voltage: + description: MICBIAS output level select. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # VDDA + - 1 # VDDA * 1 + - 2 # VDDA * 1.1 + - 3 # VDDA * 1.2 + - 4 # VDDA * 1.3 + - 5 # VDDA * 1.4 + - 6 # VDDA * 1.53 + - 7 # VDDA * 1.53 + default: 6 + + nuvoton,vref-impedance: + description: VMID Tie-off impedance select. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # open(default) + - 1 # 25KOhms + - 2 # 125KOhms + - 3 # 2.5KOhms + default: 2 + + nuvoton,jack-insert-debounce: + description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. + $ref: /schemas/types.yaml#/definitions/uint32 + maximum: 7 + default: 7 + + nuvoton,jack-eject-debounce: + description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. + $ref: /schemas/types.yaml#/definitions/uint32 + maximum: 7 + default: 0 + + nuvoton,dmic-clk-threshold: + description: DMIC clock speed expected value. Unit is Hz. + $ref: /schemas/types.yaml#/definitions/uint32 + default: 3072000 + + '#sound-dai-cells': + const: 0 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + codec@1b { + #sound-dai-cells = <0>; + compatible = "nuvoton,nau8821"; + reg = <0x1b>; + interrupt-parent = <&gpio>; + interrupts = <23 IRQ_TYPE_LEVEL_LOW>; + nuvoton,jkdet-enable; + nuvoton,jkdet-pull-enable; + nuvoton,jkdet-pull-up; + nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>; + nuvoton,micbias-voltage = <6>; + nuvoton,vref-impedance = <2>; + nuvoton,jack-insert-debounce = <7>; + nuvoton,jack-eject-debounce = <0>; + nuvoton,dmic-clk-threshold = <3072000>; + }; + };
On 26/06/2023 12:46, Seven Lee wrote:
Convert the NAU8821 audio CODEC bindings to DT schema.
Signed-off-by: Seven Lee wtli@nuvoton.com
Thank you for your patch. There is something to discuss/improve.
- nuvoton,jkdet-pull-up:
- description: Pull-up JKDET pin. If set then JKDET pin is pull up,
otherwise pull down.
- type: boolean
- nuvoton,jkdet-polarity:
- description: JKDET pin polarity.
- $ref: /schemas/types.yaml#/definitions/uint32
- enum:
- 0 # active high
- 1 # active low
- default: 1
- nuvoton,micbias-voltage:
- description: MICBIAS output level select.
- $ref: /schemas/types.yaml#/definitions/uint32
- enum:
- 0 # VDDA
- 1 # VDDA * 1
- 2 # VDDA * 1.1
- 3 # VDDA * 1.2
- 4 # VDDA * 1.3
- 5 # VDDA * 1.4
- 6 # VDDA * 1.53
- 7 # VDDA * 1.53
- default: 6
- nuvoton,vref-impedance:
- description: VMID Tie-off impedance select.
- $ref: /schemas/types.yaml#/definitions/uint32
- enum:
- 0 # open(default)
Drop "(default)"
- 1 # 25KOhms
- 2 # 125KOhms
- 3 # 2.5KOhms
- default: 2
You wrote that default is 0
- nuvoton,jack-insert-debounce:
- description: number from 0 to 7 that sets debounce time to 2^(n+2)ms.
- $ref: /schemas/types.yaml#/definitions/uint32
- maximum: 7
- default: 7
- nuvoton,jack-eject-debounce:
- description: number from 0 to 7 that sets debounce time to 2^(n+2)ms.
- $ref: /schemas/types.yaml#/definitions/uint32
- maximum: 7
- default: 0
- nuvoton,dmic-clk-threshold:
- description: DMIC clock speed expected value. Unit is Hz.
- $ref: /schemas/types.yaml#/definitions/uint32
- default: 3072000
You miss nuvoton,key_enable. If this is intentional, mention and shortly explain deviations from pure conversion in the commit msg.
- '#sound-dai-cells':
- const: 0
+required:
- compatible
- reg
+unevaluatedProperties: false
+examples:
- |
- #include <dt-bindings/gpio/gpio.h>
- #include <dt-bindings/interrupt-controller/irq.h>
- i2c {
#address-cells = <1>;
#size-cells = <0>;
codec@1b {
#sound-dai-cells = <0>;
compatible = "nuvoton,nau8821";
reg = <0x1b>;
compatible is first property, reg is second. Therefore put sound-dai-cells somewhere further.
Best regards, Krzysztof
On 6/27/2023 2:31 PM, Krzysztof Kozlowski wrote:
CAUTION - External Email: Do not click links or open attachments unless you acknowledge the sender and content.
On 26/06/2023 12:46, Seven Lee wrote:
Convert the NAU8821 audio CODEC bindings to DT schema.
Signed-off-by: Seven Lee wtli@nuvoton.commailto:wtli@nuvoton.com ---
Thank you for your patch. There is something to discuss/improve.
Thank you for your suggestion.
+ + nuvoton,jkdet-pull-up: + description: Pull-up JKDET pin. If set then JKDET pin is pull up, + otherwise pull down. + type: boolean + + nuvoton,jkdet-polarity: + description: JKDET pin polarity. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # active high + - 1 # active low + default: 1 + + nuvoton,micbias-voltage: + description: MICBIAS output level select. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # VDDA + - 1 # VDDA * 1 + - 2 # VDDA * 1.1 + - 3 # VDDA * 1.2 + - 4 # VDDA * 1.3 + - 5 # VDDA * 1.4 + - 6 # VDDA * 1.53 + - 7 # VDDA * 1.53 + default: 6 + + nuvoton,vref-impedance: + description: VMID Tie-off impedance select. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # open(default)
Drop "(default)"
Okay, I will drop it.
+ - 1 # 25KOhms + - 2 # 125KOhms + - 3 # 2.5KOhms + default: 2
You wrote that default is 0
Yes, you are right. I will fix it.
+ + nuvoton,jack-insert-debounce: + description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. + $ref: /schemas/types.yaml#/definitions/uint32 + maximum: 7 + default: 7 + + nuvoton,jack-eject-debounce: + description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. + $ref: /schemas/types.yaml#/definitions/uint32 + maximum: 7 + default: 0 + + nuvoton,dmic-clk-threshold: + description: DMIC clock speed expected value. Unit is Hz. + $ref: /schemas/types.yaml#/definitions/uint32 + default: 3072000 +
You miss nuvoton,key_enable. If this is intentional, mention and shortly explain deviations from pure conversion in the commit msg.
Yes, I miss the nuvoton,key_enable. I will add it.
+ '#sound-dai-cells': + const: 0 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + codec@1b { + #sound-dai-cells = <0>; + compatible = "nuvoton,nau8821"; + reg = <0x1b>;
compatible is first property, reg is second. Therefore put sound-dai-cells somewhere further.
Okay, I will fix it.
Best regards, Krzysztof
________________________________ The privileged confidential information contained in this email is intended for use only by the addressees as indicated by the original sender of this email. If you are not the addressee indicated in this email or are not responsible for delivery of the email to such a person, please kindly reply to the sender indicating this fact and delete all copies of it from your computer and network server immediately. Your cooperation is highly appreciated. It is advised that any unauthorized use of confidential information of Nuvoton is strictly prohibited; and any information in this email irrelevant to the official business of Nuvoton shall be deemed as neither given nor endorsed by Nuvoton.
participants (3)
-
AS50 WTLi
-
Krzysztof Kozlowski
-
Seven Lee