1754d1ce3SSeven Lee# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2754d1ce3SSeven Lee%YAML 1.2 3754d1ce3SSeven Lee--- 4754d1ce3SSeven Lee$id: http://devicetree.org/schemas/sound/nuvoton,nau8821.yaml# 5754d1ce3SSeven Lee$schema: http://devicetree.org/meta-schemas/core.yaml# 6754d1ce3SSeven Lee 7754d1ce3SSeven Leetitle: NAU88L21 audio codec 8754d1ce3SSeven Lee 9754d1ce3SSeven Leemaintainers: 10754d1ce3SSeven Lee - Seven Lee <wtli@nuvoton.com> 11754d1ce3SSeven Lee 12754d1ce3SSeven LeeallOf: 13754d1ce3SSeven Lee - $ref: dai-common.yaml# 14754d1ce3SSeven Lee 15754d1ce3SSeven Leeproperties: 16754d1ce3SSeven Lee compatible: 17754d1ce3SSeven Lee const: nuvoton,nau8821 18754d1ce3SSeven Lee 19754d1ce3SSeven Lee reg: 20754d1ce3SSeven Lee maxItems: 1 21754d1ce3SSeven Lee 22754d1ce3SSeven Lee interrupts: 23754d1ce3SSeven Lee maxItems: 1 24754d1ce3SSeven Lee 25754d1ce3SSeven Lee nuvoton,jkdet-enable: 26754d1ce3SSeven Lee description: Enable jack detection via JKDET pin. 27754d1ce3SSeven Lee type: boolean 28754d1ce3SSeven Lee 29754d1ce3SSeven Lee nuvoton,jkdet-pull-enable: 30754d1ce3SSeven Lee description: Enable JKDET pin pull. If set - pin pull enabled, 31754d1ce3SSeven Lee otherwise pin in high impedance state. 32754d1ce3SSeven Lee type: boolean 33754d1ce3SSeven Lee 34754d1ce3SSeven Lee nuvoton,jkdet-pull-up: 35754d1ce3SSeven Lee description: Pull-up JKDET pin. If set then JKDET pin is pull up, 36754d1ce3SSeven Lee otherwise pull down. 37754d1ce3SSeven Lee type: boolean 38754d1ce3SSeven Lee 39754d1ce3SSeven Lee nuvoton,key-enable: 40754d1ce3SSeven Lee description: handles key press detection. 41754d1ce3SSeven Lee type: boolean 42754d1ce3SSeven Lee 43754d1ce3SSeven Lee nuvoton,jkdet-polarity: 44754d1ce3SSeven Lee description: JKDET pin polarity. 45754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 46754d1ce3SSeven Lee enum: 47754d1ce3SSeven Lee - 0 # active high 48754d1ce3SSeven Lee - 1 # active low 49754d1ce3SSeven Lee default: 1 50754d1ce3SSeven Lee 51754d1ce3SSeven Lee nuvoton,micbias-voltage: 52754d1ce3SSeven Lee description: MICBIAS output level select. 53754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 54754d1ce3SSeven Lee enum: 55754d1ce3SSeven Lee - 0 # VDDA 56754d1ce3SSeven Lee - 1 # VDDA * 1 57754d1ce3SSeven Lee - 2 # VDDA * 1.1 58754d1ce3SSeven Lee - 3 # VDDA * 1.2 59754d1ce3SSeven Lee - 4 # VDDA * 1.3 60754d1ce3SSeven Lee - 5 # VDDA * 1.4 61754d1ce3SSeven Lee - 6 # VDDA * 1.53 62754d1ce3SSeven Lee - 7 # VDDA * 1.53 63754d1ce3SSeven Lee default: 6 64754d1ce3SSeven Lee 65754d1ce3SSeven Lee nuvoton,vref-impedance: 66754d1ce3SSeven Lee description: VMID Tie-off impedance select. 67754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 68754d1ce3SSeven Lee enum: 69754d1ce3SSeven Lee - 0 # open 70754d1ce3SSeven Lee - 1 # 25KOhms 71754d1ce3SSeven Lee - 2 # 125KOhms 72754d1ce3SSeven Lee - 3 # 2.5KOhms 73754d1ce3SSeven Lee default: 2 74754d1ce3SSeven Lee 75754d1ce3SSeven Lee nuvoton,jack-insert-debounce: 76754d1ce3SSeven Lee description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. 77754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 78754d1ce3SSeven Lee maximum: 7 79754d1ce3SSeven Lee default: 7 80754d1ce3SSeven Lee 81754d1ce3SSeven Lee nuvoton,jack-eject-debounce: 82754d1ce3SSeven Lee description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. 83754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 84754d1ce3SSeven Lee maximum: 7 85754d1ce3SSeven Lee default: 0 86754d1ce3SSeven Lee 87754d1ce3SSeven Lee nuvoton,dmic-clk-threshold: 88754d1ce3SSeven Lee description: DMIC clock speed expected value. Unit is Hz. 89754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 90754d1ce3SSeven Lee default: 3072000 91754d1ce3SSeven Lee 92*91e28d0bSSeven Lee nuvoton,left-input-single-end: 93*91e28d0bSSeven Lee description: Enable left input with single-ended settings if set. 94*91e28d0bSSeven Lee For the headset mic application, the single-ended control is 95*91e28d0bSSeven Lee just limited to the left adc for design demand. 96*91e28d0bSSeven Lee type: boolean 97*91e28d0bSSeven Lee 98754d1ce3SSeven Lee '#sound-dai-cells': 99754d1ce3SSeven Lee const: 0 100754d1ce3SSeven Lee 101754d1ce3SSeven Leerequired: 102754d1ce3SSeven Lee - compatible 103754d1ce3SSeven Lee - reg 104754d1ce3SSeven Lee 105754d1ce3SSeven LeeunevaluatedProperties: false 106754d1ce3SSeven Lee 107754d1ce3SSeven Leeexamples: 108754d1ce3SSeven Lee - | 109754d1ce3SSeven Lee #include <dt-bindings/gpio/gpio.h> 110754d1ce3SSeven Lee #include <dt-bindings/interrupt-controller/irq.h> 111754d1ce3SSeven Lee i2c { 112754d1ce3SSeven Lee #address-cells = <1>; 113754d1ce3SSeven Lee #size-cells = <0>; 114754d1ce3SSeven Lee codec@1b { 115754d1ce3SSeven Lee compatible = "nuvoton,nau8821"; 116754d1ce3SSeven Lee reg = <0x1b>; 117754d1ce3SSeven Lee interrupt-parent = <&gpio>; 118754d1ce3SSeven Lee interrupts = <23 IRQ_TYPE_LEVEL_LOW>; 119754d1ce3SSeven Lee nuvoton,jkdet-enable; 120754d1ce3SSeven Lee nuvoton,jkdet-pull-enable; 121754d1ce3SSeven Lee nuvoton,jkdet-pull-up; 122754d1ce3SSeven Lee nuvoton,key-enable; 123*91e28d0bSSeven Lee nuvoton,left-input-single-end; 124754d1ce3SSeven Lee nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>; 125754d1ce3SSeven Lee nuvoton,micbias-voltage = <6>; 126754d1ce3SSeven Lee nuvoton,vref-impedance = <2>; 127754d1ce3SSeven Lee nuvoton,jack-insert-debounce = <7>; 128754d1ce3SSeven Lee nuvoton,jack-eject-debounce = <0>; 129754d1ce3SSeven Lee nuvoton,dmic-clk-threshold = <3072000>; 130754d1ce3SSeven Lee #sound-dai-cells = <0>; 131754d1ce3SSeven Lee }; 132754d1ce3SSeven Lee }; 133