1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/wlf,wm8960.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: Wolfson WM8960 audio codec 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - patches@opensource.cirrus.com 11fac71e4eSEmmanuel Vadot 12fac71e4eSEmmanuel Vadotproperties: 13fac71e4eSEmmanuel Vadot compatible: 14fac71e4eSEmmanuel Vadot const: wlf,wm8960 15fac71e4eSEmmanuel Vadot 16fac71e4eSEmmanuel Vadot reg: 17fac71e4eSEmmanuel Vadot maxItems: 1 18fac71e4eSEmmanuel Vadot 19fac71e4eSEmmanuel Vadot clocks: 20fac71e4eSEmmanuel Vadot maxItems: 1 21fac71e4eSEmmanuel Vadot 22fac71e4eSEmmanuel Vadot clock-names: 23fac71e4eSEmmanuel Vadot items: 24fac71e4eSEmmanuel Vadot - const: mclk 25fac71e4eSEmmanuel Vadot 26fac71e4eSEmmanuel Vadot '#sound-dai-cells': 27fac71e4eSEmmanuel Vadot const: 0 28fac71e4eSEmmanuel Vadot 29*aa1a8ff2SEmmanuel Vadot AVDD-supply: 30*aa1a8ff2SEmmanuel Vadot description: Analogue supply. 31*aa1a8ff2SEmmanuel Vadot 32*aa1a8ff2SEmmanuel Vadot DBVDD-supply: 33*aa1a8ff2SEmmanuel Vadot description: Digital Buffer Supply. 34*aa1a8ff2SEmmanuel Vadot 35*aa1a8ff2SEmmanuel Vadot DCVDD-supply: 36*aa1a8ff2SEmmanuel Vadot description: Digital Core Supply. 37*aa1a8ff2SEmmanuel Vadot 38*aa1a8ff2SEmmanuel Vadot SPKVDD1-supply: 39*aa1a8ff2SEmmanuel Vadot description: Supply for speaker drivers 1. 40*aa1a8ff2SEmmanuel Vadot 41*aa1a8ff2SEmmanuel Vadot SPKVDD2-supply: 42*aa1a8ff2SEmmanuel Vadot description: Supply for speaker drivers 2. 43*aa1a8ff2SEmmanuel Vadot 44fac71e4eSEmmanuel Vadot wlf,capless: 45fac71e4eSEmmanuel Vadot type: boolean 46fac71e4eSEmmanuel Vadot description: 47fac71e4eSEmmanuel Vadot If present, OUT3 pin will be enabled and disabled together with HP_L and 48fac71e4eSEmmanuel Vadot HP_R pins in response to jack detect events. 49fac71e4eSEmmanuel Vadot 50fac71e4eSEmmanuel Vadot wlf,gpio-cfg: 51fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 52fac71e4eSEmmanuel Vadot maxItems: 2 53fac71e4eSEmmanuel Vadot description: | 54fac71e4eSEmmanuel Vadot A list of GPIO configuration register values. 55fac71e4eSEmmanuel Vadot - gpio-cfg[0]: ALRCGPIO of R9 (Audio interface) 56fac71e4eSEmmanuel Vadot - gpio-cfg[1]: {GPIOPOL:GPIOSEL[2:0]} of R48 (Additional Control 4). 57fac71e4eSEmmanuel Vadot 58fac71e4eSEmmanuel Vadot wlf,hp-cfg: 59fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 60fac71e4eSEmmanuel Vadot maxItems: 3 61fac71e4eSEmmanuel Vadot description: | 62fac71e4eSEmmanuel Vadot A list of headphone jack detect configuration register values: 63fac71e4eSEmmanuel Vadot - hp-cfg[0]: HPSEL[1:0] of R48 (Additional Control 4). 64fac71e4eSEmmanuel Vadot - hp-cfg[1]: {HPSWEN:HPSWPOL} of R24 (Additional Control 2). 65fac71e4eSEmmanuel Vadot - hp-cfg[2]: {TOCLKSEL:TOEN} of R23 (Additional Control 1). 66fac71e4eSEmmanuel Vadot 67fac71e4eSEmmanuel Vadot wlf,shared-lrclk: 68fac71e4eSEmmanuel Vadot type: boolean 69fac71e4eSEmmanuel Vadot description: 70fac71e4eSEmmanuel Vadot If present, the LRCM bit of R24 (Additional control 2) gets set, 71fac71e4eSEmmanuel Vadot indicating that ADCLRC and DACLRC pins will be disabled only when ADC 72fac71e4eSEmmanuel Vadot (Left and Right) and DAC (Left and Right) are disabled. 73fac71e4eSEmmanuel Vadot When WM8960 works on synchronize mode and DACLRC pin is used to supply 74fac71e4eSEmmanuel Vadot frame clock, it will no frame clock for captrue unless enable DAC to 75fac71e4eSEmmanuel Vadot enable DACLRC pin. If shared-lrclk is present, no need to enable DAC for 76fac71e4eSEmmanuel Vadot captrue. 77fac71e4eSEmmanuel Vadot 78fac71e4eSEmmanuel Vadotrequired: 79fac71e4eSEmmanuel Vadot - compatible 80fac71e4eSEmmanuel Vadot - reg 81fac71e4eSEmmanuel Vadot 82fac71e4eSEmmanuel VadotallOf: 83fac71e4eSEmmanuel Vadot - $ref: dai-common.yaml# 84fac71e4eSEmmanuel Vadot 85fac71e4eSEmmanuel VadotunevaluatedProperties: false 86fac71e4eSEmmanuel Vadot 87fac71e4eSEmmanuel Vadotexamples: 88fac71e4eSEmmanuel Vadot - | 89fac71e4eSEmmanuel Vadot i2c { 90fac71e4eSEmmanuel Vadot #address-cells = <1>; 91fac71e4eSEmmanuel Vadot #size-cells = <0>; 92fac71e4eSEmmanuel Vadot 93fac71e4eSEmmanuel Vadot audio-codec@1a { 94fac71e4eSEmmanuel Vadot compatible = "wlf,wm8960"; 95fac71e4eSEmmanuel Vadot reg = <0x1a>; 96fac71e4eSEmmanuel Vadot clocks = <&clks 0>; 97fac71e4eSEmmanuel Vadot clock-names = "mclk"; 98fac71e4eSEmmanuel Vadot #sound-dai-cells = <0>; 99fac71e4eSEmmanuel Vadot wlf,hp-cfg = <3 2 3>; 100fac71e4eSEmmanuel Vadot wlf,gpio-cfg = <1 3>; 101fac71e4eSEmmanuel Vadot wlf,shared-lrclk; 102*aa1a8ff2SEmmanuel Vadot DCVDD-supply = <®_audio>; 103*aa1a8ff2SEmmanuel Vadot DBVDD-supply = <®_audio>; 104*aa1a8ff2SEmmanuel Vadot AVDD-supply = <®_audio>; 105*aa1a8ff2SEmmanuel Vadot SPKVDD1-supply = <®_audio>; 106*aa1a8ff2SEmmanuel Vadot SPKVDD2-supply = <®_audio>; 107fac71e4eSEmmanuel Vadot }; 108fac71e4eSEmmanuel Vadot }; 109