1*754d1ce3SSeven Lee# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*754d1ce3SSeven Lee%YAML 1.2 3*754d1ce3SSeven Lee--- 4*754d1ce3SSeven Lee$id: http://devicetree.org/schemas/sound/nuvoton,nau8821.yaml# 5*754d1ce3SSeven Lee$schema: http://devicetree.org/meta-schemas/core.yaml# 6*754d1ce3SSeven Lee 7*754d1ce3SSeven Leetitle: NAU88L21 audio codec 8*754d1ce3SSeven Lee 9*754d1ce3SSeven Leemaintainers: 10*754d1ce3SSeven Lee - Seven Lee <wtli@nuvoton.com> 11*754d1ce3SSeven Lee 12*754d1ce3SSeven LeeallOf: 13*754d1ce3SSeven Lee - $ref: dai-common.yaml# 14*754d1ce3SSeven Lee 15*754d1ce3SSeven Leeproperties: 16*754d1ce3SSeven Lee compatible: 17*754d1ce3SSeven Lee const: nuvoton,nau8821 18*754d1ce3SSeven Lee 19*754d1ce3SSeven Lee reg: 20*754d1ce3SSeven Lee maxItems: 1 21*754d1ce3SSeven Lee 22*754d1ce3SSeven Lee interrupts: 23*754d1ce3SSeven Lee maxItems: 1 24*754d1ce3SSeven Lee 25*754d1ce3SSeven Lee nuvoton,jkdet-enable: 26*754d1ce3SSeven Lee description: Enable jack detection via JKDET pin. 27*754d1ce3SSeven Lee type: boolean 28*754d1ce3SSeven Lee 29*754d1ce3SSeven Lee nuvoton,jkdet-pull-enable: 30*754d1ce3SSeven Lee description: Enable JKDET pin pull. If set - pin pull enabled, 31*754d1ce3SSeven Lee otherwise pin in high impedance state. 32*754d1ce3SSeven Lee type: boolean 33*754d1ce3SSeven Lee 34*754d1ce3SSeven Lee nuvoton,jkdet-pull-up: 35*754d1ce3SSeven Lee description: Pull-up JKDET pin. If set then JKDET pin is pull up, 36*754d1ce3SSeven Lee otherwise pull down. 37*754d1ce3SSeven Lee type: boolean 38*754d1ce3SSeven Lee 39*754d1ce3SSeven Lee nuvoton,key-enable: 40*754d1ce3SSeven Lee description: handles key press detection. 41*754d1ce3SSeven Lee type: boolean 42*754d1ce3SSeven Lee 43*754d1ce3SSeven Lee nuvoton,jkdet-polarity: 44*754d1ce3SSeven Lee description: JKDET pin polarity. 45*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 46*754d1ce3SSeven Lee enum: 47*754d1ce3SSeven Lee - 0 # active high 48*754d1ce3SSeven Lee - 1 # active low 49*754d1ce3SSeven Lee default: 1 50*754d1ce3SSeven Lee 51*754d1ce3SSeven Lee nuvoton,micbias-voltage: 52*754d1ce3SSeven Lee description: MICBIAS output level select. 53*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 54*754d1ce3SSeven Lee enum: 55*754d1ce3SSeven Lee - 0 # VDDA 56*754d1ce3SSeven Lee - 1 # VDDA * 1 57*754d1ce3SSeven Lee - 2 # VDDA * 1.1 58*754d1ce3SSeven Lee - 3 # VDDA * 1.2 59*754d1ce3SSeven Lee - 4 # VDDA * 1.3 60*754d1ce3SSeven Lee - 5 # VDDA * 1.4 61*754d1ce3SSeven Lee - 6 # VDDA * 1.53 62*754d1ce3SSeven Lee - 7 # VDDA * 1.53 63*754d1ce3SSeven Lee default: 6 64*754d1ce3SSeven Lee 65*754d1ce3SSeven Lee nuvoton,vref-impedance: 66*754d1ce3SSeven Lee description: VMID Tie-off impedance select. 67*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 68*754d1ce3SSeven Lee enum: 69*754d1ce3SSeven Lee - 0 # open 70*754d1ce3SSeven Lee - 1 # 25KOhms 71*754d1ce3SSeven Lee - 2 # 125KOhms 72*754d1ce3SSeven Lee - 3 # 2.5KOhms 73*754d1ce3SSeven Lee default: 2 74*754d1ce3SSeven Lee 75*754d1ce3SSeven Lee nuvoton,jack-insert-debounce: 76*754d1ce3SSeven Lee description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. 77*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 78*754d1ce3SSeven Lee maximum: 7 79*754d1ce3SSeven Lee default: 7 80*754d1ce3SSeven Lee 81*754d1ce3SSeven Lee nuvoton,jack-eject-debounce: 82*754d1ce3SSeven Lee description: number from 0 to 7 that sets debounce time to 2^(n+2)ms. 83*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 84*754d1ce3SSeven Lee maximum: 7 85*754d1ce3SSeven Lee default: 0 86*754d1ce3SSeven Lee 87*754d1ce3SSeven Lee nuvoton,dmic-clk-threshold: 88*754d1ce3SSeven Lee description: DMIC clock speed expected value. Unit is Hz. 89*754d1ce3SSeven Lee $ref: /schemas/types.yaml#/definitions/uint32 90*754d1ce3SSeven Lee default: 3072000 91*754d1ce3SSeven Lee 92*754d1ce3SSeven Lee '#sound-dai-cells': 93*754d1ce3SSeven Lee const: 0 94*754d1ce3SSeven Lee 95*754d1ce3SSeven Leerequired: 96*754d1ce3SSeven Lee - compatible 97*754d1ce3SSeven Lee - reg 98*754d1ce3SSeven Lee 99*754d1ce3SSeven LeeunevaluatedProperties: false 100*754d1ce3SSeven Lee 101*754d1ce3SSeven Leeexamples: 102*754d1ce3SSeven Lee - | 103*754d1ce3SSeven Lee #include <dt-bindings/gpio/gpio.h> 104*754d1ce3SSeven Lee #include <dt-bindings/interrupt-controller/irq.h> 105*754d1ce3SSeven Lee i2c { 106*754d1ce3SSeven Lee #address-cells = <1>; 107*754d1ce3SSeven Lee #size-cells = <0>; 108*754d1ce3SSeven Lee codec@1b { 109*754d1ce3SSeven Lee compatible = "nuvoton,nau8821"; 110*754d1ce3SSeven Lee reg = <0x1b>; 111*754d1ce3SSeven Lee interrupt-parent = <&gpio>; 112*754d1ce3SSeven Lee interrupts = <23 IRQ_TYPE_LEVEL_LOW>; 113*754d1ce3SSeven Lee nuvoton,jkdet-enable; 114*754d1ce3SSeven Lee nuvoton,jkdet-pull-enable; 115*754d1ce3SSeven Lee nuvoton,jkdet-pull-up; 116*754d1ce3SSeven Lee nuvoton,key-enable; 117*754d1ce3SSeven Lee nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>; 118*754d1ce3SSeven Lee nuvoton,micbias-voltage = <6>; 119*754d1ce3SSeven Lee nuvoton,vref-impedance = <2>; 120*754d1ce3SSeven Lee nuvoton,jack-insert-debounce = <7>; 121*754d1ce3SSeven Lee nuvoton,jack-eject-debounce = <0>; 122*754d1ce3SSeven Lee nuvoton,dmic-clk-threshold = <3072000>; 123*754d1ce3SSeven Lee #sound-dai-cells = <0>; 124*754d1ce3SSeven Lee }; 125*754d1ce3SSeven Lee }; 126