239 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/dialog,da7219.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Dialog Semiconductor DA7219 Audio Codec8 9maintainers:10 - David Rau <David.Rau.opensource@dm.renesas.com>11 12description:13 The DA7219 is an ultra low-power audio codec with14 in-built advanced accessory detection (AAD) for mobile15 computing and accessory applications, which supports16 sample rates up to 96 kHz at 24-bit resolution.17 18properties:19 compatible:20 const: dlg,da721921 22 reg:23 maxItems: 124 25 interrupts:26 maxItems: 127 28 VDD-supply:29 description:30 VDD power supply for the device.31 32 VDDMIC-supply:33 description:34 VDDMIC power supply for the device.35 36 VDDIO-supply:37 description:38 VDDIO power supply for the device.39 40 interrupt-names:41 description:42 Should be "wakeup" if interrupt is to be used to wake system,43 otherwise "irq" should be used.44 enum:45 - wakeup46 - irq47 48 wakeup-source:49 type: boolean50 description:51 Flag to indicate this device can wake system (suspend/resume).52 53 "#clock-cells":54 const: 155 56 clock-output-names:57 minItems: 258 maxItems: 259 description:60 Name given for DAI WCLK and BCLK outputs.61 62 clocks:63 maxItems: 164 description:65 phandle and clock specifier for codec MCLK.66 67 clock-names:68 const: mclk69 70 dlg,micbias-lvl:71 enum: [1600, 1800, 2000, 2200, 2400, 2600]72 description:73 Voltage (mV) for Mic Bias.74 $ref: /schemas/types.yaml#/definitions/uint3275 76 dlg,mic-amp-in-sel:77 enum: [diff, se_p, se_n]78 description:79 Mic input source type.80 81 diff - Differential.82 83 se_p - MIC_P.84 Positive differential analog microphone input.85 86 se_n - MIC_N.87 Negative differential analog microphone input.88 $ref: /schemas/types.yaml#/definitions/string89 90 da7219_aad:91 type: object92 additionalProperties: false93 description:94 Configuration of advanced accessory detection.95 properties:96 dlg,micbias-pulse-lvl:97 enum: [2800, 2900]98 description:99 Mic bias higher voltage pulse level (mV).100 $ref: /schemas/types.yaml#/definitions/uint32101 102 dlg,micbias-pulse-time:103 description:104 Mic bias higher voltage pulse duration (ms).105 $ref: /schemas/types.yaml#/definitions/uint32106 minimum: 0107 108 dlg,btn-cfg:109 enum: [2, 5, 10, 50, 100, 200, 500]110 description:111 Periodic button press measurements for 4-pole jack (ms).112 $ref: /schemas/types.yaml#/definitions/uint32113 114 dlg,mic-det-thr:115 enum: [200, 500, 750, 1000]116 description:117 Impedance threshold for mic detection measurement (Ohms).118 $ref: /schemas/types.yaml#/definitions/uint32119 120 dlg,jack-ins-deb:121 enum: [5, 10, 20, 50, 100, 200, 500, 1000]122 description:123 Debounce time for jack insertion (ms).124 $ref: /schemas/types.yaml#/definitions/uint32125 126 dlg,jack-ins-det-pty:127 enum: [low, high]128 description:129 Polarity for jack insertion detection.130 $ref: /schemas/types.yaml#/definitions/string131 132 dlg,jack-det-rate:133 enum: ["32_64", "64_128", "128_256", "256_512"]134 description:135 Jack type (3/4 pole) detection latency (ms).136 $ref: /schemas/types.yaml#/definitions/string137 138 dlg,jack-rem-deb:139 enum: [1, 5, 10, 20]140 description:141 Debounce time for jack removal (ms).142 $ref: /schemas/types.yaml#/definitions/uint32143 144 dlg,a-d-btn-thr:145 description:146 Impedance threshold between buttons A and D.147 $ref: /schemas/types.yaml#/definitions/uint32148 minimum: 0149 maximum: 255150 151 dlg,d-b-btn-thr:152 description:153 Impedance threshold between buttons D and B.154 $ref: /schemas/types.yaml#/definitions/uint32155 minimum: 0156 maximum: 255157 158 dlg,b-c-btn-thr:159 description:160 Impedance threshold between buttons B and C.161 $ref: /schemas/types.yaml#/definitions/uint32162 minimum: 0163 maximum: 255164 165 dlg,c-mic-btn-thr:166 description:167 Impedance threshold between button C and Mic.168 $ref: /schemas/types.yaml#/definitions/uint32169 minimum: 0170 maximum: 255171 172 dlg,btn-avg:173 enum: [1, 2, 4, 8]174 description:175 Number of 8-bit readings for averaged button measurement.176 $ref: /schemas/types.yaml#/definitions/uint32177 178 dlg,adc-1bit-rpt:179 enum: [1, 2, 4, 8]180 description:181 Repeat count for 1-bit button measurement.182 $ref: /schemas/types.yaml#/definitions/uint32183 184required:185 - compatible186 - reg187 - interrupts188 - VDD-supply189 - VDDMIC-supply190 - VDDIO-supply191 192additionalProperties: false193 194examples:195 - |196 #include <dt-bindings/interrupt-controller/irq.h>197 i2c {198 #address-cells = <1>;199 #size-cells = <0>;200 201 codec: da7219@1a {202 compatible = "dlg,da7219";203 reg = <0x1a>;204 205 interrupt-parent = <&gpio6>;206 interrupts = <11 IRQ_TYPE_LEVEL_LOW>;207 208 VDD-supply = <&vdd_reg>;209 VDDMIC-supply = <&vddmic_reg>;210 VDDIO-supply = <&vddio_reg>;211 212 #clock-cells = <1>;213 clock-output-names = "da7219-dai-wclk", "da7219-dai-bclk";214 215 clocks = <&clks 201>;216 clock-names = "mclk";217 218 dlg,micbias-lvl = <2600>;219 dlg,mic-amp-in-sel = "diff";220 221 da7219_aad {222 dlg,btn-cfg = <50>;223 dlg,mic-det-thr = <500>;224 dlg,jack-ins-deb = <20>;225 dlg,jack-ins-det-pty = "low";226 dlg,jack-det-rate = "32_64";227 dlg,jack-rem-deb = <1>;228 229 dlg,a-d-btn-thr = <0xa>;230 dlg,d-b-btn-thr = <0x16>;231 dlg,b-c-btn-thr = <0x21>;232 dlg,c-mic-btn-thr = <0x3E>;233 234 dlg,btn-avg = <4>;235 dlg,adc-1bit-rpt = <1>;236 };237 };238 };239