149 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/nuvoton,nau8821.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: NAU88L21 audio codec8 9maintainers:10 - Seven Lee <wtli@nuvoton.com>11 12allOf:13 - $ref: dai-common.yaml#14 15properties:16 compatible:17 const: nuvoton,nau882118 19 reg:20 maxItems: 121 22 interrupts:23 maxItems: 124 25 nuvoton,jkdet-enable:26 description: Enable jack detection via JKDET pin.27 type: boolean28 29 nuvoton,jkdet-pull-enable:30 description: Enable JKDET pin pull. If set - pin pull enabled,31 otherwise pin in high impedance state.32 type: boolean33 34 nuvoton,jkdet-pull-up:35 description: Pull-up JKDET pin. If set then JKDET pin is pull up,36 otherwise pull down.37 type: boolean38 39 nuvoton,key-enable:40 description: handles key press detection.41 type: boolean42 43 nuvoton,jkdet-polarity:44 description: JKDET pin polarity.45 $ref: /schemas/types.yaml#/definitions/uint3246 enum:47 - 0 # active high48 - 1 # active low49 default: 150 51 nuvoton,micbias-voltage:52 description: MICBIAS output level select.53 $ref: /schemas/types.yaml#/definitions/uint3254 enum:55 - 0 # VDDA56 - 1 # VDDA * 157 - 2 # VDDA * 1.158 - 3 # VDDA * 1.259 - 4 # VDDA * 1.360 - 5 # VDDA * 1.461 - 6 # VDDA * 1.5362 - 7 # VDDA * 1.5363 default: 664 65 nuvoton,vref-impedance:66 description: VMID Tie-off impedance select.67 $ref: /schemas/types.yaml#/definitions/uint3268 enum:69 - 0 # open70 - 1 # 25KOhms71 - 2 # 125KOhms72 - 3 # 2.5KOhms73 default: 274 75 nuvoton,jack-insert-debounce:76 description: number from 0 to 7 that sets debounce time to 2^(n+2)ms.77 $ref: /schemas/types.yaml#/definitions/uint3278 maximum: 779 default: 780 81 nuvoton,jack-eject-debounce:82 description: number from 0 to 7 that sets debounce time to 2^(n+2)ms.83 $ref: /schemas/types.yaml#/definitions/uint3284 maximum: 785 default: 086 87 nuvoton,dmic-clk-threshold:88 description: DMIC clock speed expected value. Unit is Hz.89 $ref: /schemas/types.yaml#/definitions/uint3290 default: 307200091 92 nuvoton,dmic-slew-rate:93 description: The range 0 to 7 represents the speed of DMIC slew rate.94 The lowest value 0 means the slowest rate and the highest value95 7 means the fastest rate.96 $ref: /schemas/types.yaml#/definitions/uint3297 maximum: 798 default: 099 100 nuvoton,left-input-single-end:101 description: Enable left input with single-ended settings if set.102 For the headset mic application, the single-ended control is103 just limited to the left adc for design demand.104 type: boolean105 106 nuvoton,adc-delay-ms:107 description: Delay (in ms) to make input path stable and avoid pop noise.108 minimum: 125109 maximum: 500110 default: 125111 112 '#sound-dai-cells':113 const: 0114 115required:116 - compatible117 - reg118 119unevaluatedProperties: false120 121examples:122 - |123 #include <dt-bindings/gpio/gpio.h>124 #include <dt-bindings/interrupt-controller/irq.h>125 i2c {126 #address-cells = <1>;127 #size-cells = <0>;128 codec@1b {129 compatible = "nuvoton,nau8821";130 reg = <0x1b>;131 interrupt-parent = <&gpio>;132 interrupts = <23 IRQ_TYPE_LEVEL_LOW>;133 nuvoton,jkdet-enable;134 nuvoton,jkdet-pull-enable;135 nuvoton,jkdet-pull-up;136 nuvoton,key-enable;137 nuvoton,left-input-single-end;138 nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>;139 nuvoton,micbias-voltage = <6>;140 nuvoton,vref-impedance = <2>;141 nuvoton,jack-insert-debounce = <7>;142 nuvoton,jack-eject-debounce = <0>;143 nuvoton,dmic-clk-threshold = <3072000>;144 nuvoton,dmic-slew-rate = <0>;145 nuvoton,adc-delay-ms = <125>;146 #sound-dai-cells = <0>;147 };148 };149