1345585b7SDavid Rau# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2345585b7SDavid Rau%YAML 1.2 3345585b7SDavid Rau--- 4345585b7SDavid Rau$id: http://devicetree.org/schemas/sound/dialog,da7219.yaml# 5345585b7SDavid Rau$schema: http://devicetree.org/meta-schemas/core.yaml# 6345585b7SDavid Rau 7345585b7SDavid Rautitle: Dialog Semiconductor DA7219 Audio Codec 8345585b7SDavid Rau 9345585b7SDavid Raumaintainers: 10345585b7SDavid Rau - David Rau <David.Rau.opensource@dm.renesas.com> 11345585b7SDavid Rau 12345585b7SDavid Raudescription: 13345585b7SDavid Rau The DA7219 is an ultra low-power audio codec with 14345585b7SDavid Rau in-built advanced accessory detection (AAD) for mobile 15345585b7SDavid Rau computing and accessory applications, which supports 16345585b7SDavid Rau sample rates up to 96 kHz at 24-bit resolution. 17345585b7SDavid Rau 18345585b7SDavid Rauproperties: 19345585b7SDavid Rau compatible: 20345585b7SDavid Rau const: dlg,da7219 21345585b7SDavid Rau 22345585b7SDavid Rau reg: 23345585b7SDavid Rau maxItems: 1 24345585b7SDavid Rau 25345585b7SDavid Rau interrupts: 26345585b7SDavid Rau maxItems: 1 27345585b7SDavid Rau 28345585b7SDavid Rau VDD-supply: 29345585b7SDavid Rau description: 30345585b7SDavid Rau VDD power supply for the device. 31345585b7SDavid Rau 32345585b7SDavid Rau VDDMIC-supply: 33345585b7SDavid Rau description: 34345585b7SDavid Rau VDDMIC power supply for the device. 35345585b7SDavid Rau 36345585b7SDavid Rau VDDIO-supply: 37345585b7SDavid Rau description: 38345585b7SDavid Rau VDDIO power supply for the device. 39345585b7SDavid Rau 40345585b7SDavid Rau interrupt-names: 41345585b7SDavid Rau description: 42345585b7SDavid Rau Should be "wakeup" if interrupt is to be used to wake system, 43345585b7SDavid Rau otherwise "irq" should be used. 44345585b7SDavid Rau enum: 45345585b7SDavid Rau - wakeup 46345585b7SDavid Rau - irq 47345585b7SDavid Rau 48345585b7SDavid Rau wakeup-source: 49345585b7SDavid Rau type: boolean 50345585b7SDavid Rau description: 51345585b7SDavid Rau Flag to indicate this device can wake system (suspend/resume). 52345585b7SDavid Rau 53345585b7SDavid Rau "#clock-cells": 54345585b7SDavid Rau const: 1 55345585b7SDavid Rau 56345585b7SDavid Rau clock-output-names: 57345585b7SDavid Rau minItems: 2 58345585b7SDavid Rau maxItems: 2 59345585b7SDavid Rau description: 60345585b7SDavid Rau Name given for DAI WCLK and BCLK outputs. 61345585b7SDavid Rau 62345585b7SDavid Rau clocks: 63345585b7SDavid Rau maxItems: 1 64345585b7SDavid Rau description: 65345585b7SDavid Rau phandle and clock specifier for codec MCLK. 66345585b7SDavid Rau 67345585b7SDavid Rau clock-names: 68345585b7SDavid Rau const: mclk 69345585b7SDavid Rau 70345585b7SDavid Rau dlg,micbias-lvl: 71345585b7SDavid Rau enum: [1600, 1800, 2000, 2200, 2400, 2600] 72345585b7SDavid Rau description: 73345585b7SDavid Rau Voltage (mV) for Mic Bias. 74345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 75345585b7SDavid Rau 76345585b7SDavid Rau dlg,mic-amp-in-sel: 7745698208SRob Herring enum: [diff, se_p, se_n] 78345585b7SDavid Rau description: 79345585b7SDavid Rau Mic input source type. 80345585b7SDavid Rau 81345585b7SDavid Rau diff - Differential. 82345585b7SDavid Rau 83345585b7SDavid Rau se_p - MIC_P. 84345585b7SDavid Rau Positive differential analog microphone input. 85345585b7SDavid Rau 86345585b7SDavid Rau se_n - MIC_N. 87345585b7SDavid Rau Negative differential analog microphone input. 88345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/string 89345585b7SDavid Rau 90345585b7SDavid Rau da7219_aad: 91345585b7SDavid Rau type: object 92*7b71da59SRob Herring additionalProperties: false 93345585b7SDavid Rau description: 94345585b7SDavid Rau Configuration of advanced accessory detection. 95345585b7SDavid Rau properties: 96345585b7SDavid Rau dlg,micbias-pulse-lvl: 97345585b7SDavid Rau enum: [2800, 2900] 98345585b7SDavid Rau description: 99345585b7SDavid Rau Mic bias higher voltage pulse level (mV). 100345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 101345585b7SDavid Rau 102345585b7SDavid Rau dlg,micbias-pulse-time: 103345585b7SDavid Rau description: 104345585b7SDavid Rau Mic bias higher voltage pulse duration (ms). 105345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 106345585b7SDavid Rau minimum: 0 107345585b7SDavid Rau 108345585b7SDavid Rau dlg,btn-cfg: 109345585b7SDavid Rau enum: [2, 5, 10, 50, 100, 200, 500] 110345585b7SDavid Rau description: 111345585b7SDavid Rau Periodic button press measurements for 4-pole jack (ms). 112345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 113345585b7SDavid Rau 114345585b7SDavid Rau dlg,mic-det-thr: 115345585b7SDavid Rau enum: [200, 500, 750, 1000] 116345585b7SDavid Rau description: 117345585b7SDavid Rau Impedance threshold for mic detection measurement (Ohms). 118345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 119345585b7SDavid Rau 120345585b7SDavid Rau dlg,jack-ins-deb: 121345585b7SDavid Rau enum: [5, 10, 20, 50, 100, 200, 500, 1000] 122345585b7SDavid Rau description: 123345585b7SDavid Rau Debounce time for jack insertion (ms). 124345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 125345585b7SDavid Rau 126c28dc3bdSDavid Rau dlg,jack-ins-det-pty: 12745698208SRob Herring enum: [low, high] 128c28dc3bdSDavid Rau description: 129c28dc3bdSDavid Rau Polarity for jack insertion detection. 130c28dc3bdSDavid Rau $ref: /schemas/types.yaml#/definitions/string 131c28dc3bdSDavid Rau 132345585b7SDavid Rau dlg,jack-det-rate: 133345585b7SDavid Rau enum: ["32_64", "64_128", "128_256", "256_512"] 134345585b7SDavid Rau description: 135345585b7SDavid Rau Jack type (3/4 pole) detection latency (ms). 136345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/string 137345585b7SDavid Rau 138345585b7SDavid Rau dlg,jack-rem-deb: 139345585b7SDavid Rau enum: [1, 5, 10, 20] 140345585b7SDavid Rau description: 141345585b7SDavid Rau Debounce time for jack removal (ms). 142345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 143345585b7SDavid Rau 144345585b7SDavid Rau dlg,a-d-btn-thr: 145345585b7SDavid Rau description: 146345585b7SDavid Rau Impedance threshold between buttons A and D. 147345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 148345585b7SDavid Rau minimum: 0 149345585b7SDavid Rau maximum: 255 150345585b7SDavid Rau 151345585b7SDavid Rau dlg,d-b-btn-thr: 152345585b7SDavid Rau description: 153345585b7SDavid Rau Impedance threshold between buttons D and B. 154345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 155345585b7SDavid Rau minimum: 0 156345585b7SDavid Rau maximum: 255 157345585b7SDavid Rau 158345585b7SDavid Rau dlg,b-c-btn-thr: 159345585b7SDavid Rau description: 160345585b7SDavid Rau Impedance threshold between buttons B and C. 161345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 162345585b7SDavid Rau minimum: 0 163345585b7SDavid Rau maximum: 255 164345585b7SDavid Rau 165345585b7SDavid Rau dlg,c-mic-btn-thr: 166345585b7SDavid Rau description: 167345585b7SDavid Rau Impedance threshold between button C and Mic. 168345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 169345585b7SDavid Rau minimum: 0 170345585b7SDavid Rau maximum: 255 171345585b7SDavid Rau 172345585b7SDavid Rau dlg,btn-avg: 173345585b7SDavid Rau enum: [1, 2, 4, 8] 174345585b7SDavid Rau description: 175345585b7SDavid Rau Number of 8-bit readings for averaged button measurement. 176345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 177345585b7SDavid Rau 178345585b7SDavid Rau dlg,adc-1bit-rpt: 179345585b7SDavid Rau enum: [1, 2, 4, 8] 180345585b7SDavid Rau description: 181345585b7SDavid Rau Repeat count for 1-bit button measurement. 182345585b7SDavid Rau $ref: /schemas/types.yaml#/definitions/uint32 183345585b7SDavid Rau 184345585b7SDavid Raurequired: 185345585b7SDavid Rau - compatible 186345585b7SDavid Rau - reg 187345585b7SDavid Rau - interrupts 188345585b7SDavid Rau - VDD-supply 189345585b7SDavid Rau - VDDMIC-supply 190345585b7SDavid Rau - VDDIO-supply 191345585b7SDavid Rau 192345585b7SDavid RauadditionalProperties: false 193345585b7SDavid Rau 194345585b7SDavid Rauexamples: 195345585b7SDavid Rau - | 196345585b7SDavid Rau #include <dt-bindings/interrupt-controller/irq.h> 197345585b7SDavid Rau i2c { 198345585b7SDavid Rau #address-cells = <1>; 199345585b7SDavid Rau #size-cells = <0>; 200345585b7SDavid Rau 201345585b7SDavid Rau codec: da7219@1a { 202345585b7SDavid Rau compatible = "dlg,da7219"; 203345585b7SDavid Rau reg = <0x1a>; 204345585b7SDavid Rau 205345585b7SDavid Rau interrupt-parent = <&gpio6>; 206345585b7SDavid Rau interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 207345585b7SDavid Rau 208345585b7SDavid Rau VDD-supply = <&vdd_reg>; 209345585b7SDavid Rau VDDMIC-supply = <&vddmic_reg>; 210345585b7SDavid Rau VDDIO-supply = <&vddio_reg>; 211345585b7SDavid Rau 212345585b7SDavid Rau #clock-cells = <1>; 213345585b7SDavid Rau clock-output-names = "da7219-dai-wclk", "da7219-dai-bclk"; 214345585b7SDavid Rau 215345585b7SDavid Rau clocks = <&clks 201>; 216345585b7SDavid Rau clock-names = "mclk"; 217345585b7SDavid Rau 218345585b7SDavid Rau dlg,micbias-lvl = <2600>; 219345585b7SDavid Rau dlg,mic-amp-in-sel = "diff"; 220345585b7SDavid Rau 221345585b7SDavid Rau da7219_aad { 222345585b7SDavid Rau dlg,btn-cfg = <50>; 223345585b7SDavid Rau dlg,mic-det-thr = <500>; 224345585b7SDavid Rau dlg,jack-ins-deb = <20>; 225c28dc3bdSDavid Rau dlg,jack-ins-det-pty = "low"; 226345585b7SDavid Rau dlg,jack-det-rate = "32_64"; 227345585b7SDavid Rau dlg,jack-rem-deb = <1>; 228345585b7SDavid Rau 229345585b7SDavid Rau dlg,a-d-btn-thr = <0xa>; 230345585b7SDavid Rau dlg,d-b-btn-thr = <0x16>; 231345585b7SDavid Rau dlg,b-c-btn-thr = <0x21>; 232345585b7SDavid Rau dlg,c-mic-btn-thr = <0x3E>; 233345585b7SDavid Rau 234345585b7SDavid Rau dlg,btn-avg = <4>; 235345585b7SDavid Rau dlg,adc-1bit-rpt = <1>; 236345585b7SDavid Rau }; 237345585b7SDavid Rau }; 238345585b7SDavid Rau }; 239