blob: 4783e6dbb5c4719fe51b6b55dcabc156335e6d94 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2019 Texas Instruments Incorporated
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Texas Instruments TLV320AIC32x4 Stereo Audio codec
9
10maintainers:
11 - Alexander Stein <alexander.stein@ew.tq-group.com>
12
13description: |
14 The TLV320AIC32x4 audio codec can be accessed using I2C or SPI
15
16properties:
17 compatible:
18 enum:
19 - ti,tas2505
20 - ti,tlv320aic32x4
21 - ti,tlv320aic32x6
22
23 reg:
24 maxItems: 1
25
26 clocks:
27 items:
28 - description: Master clock
29
30 clock-names:
31 items:
32 - const: mclk
33
34 av-supply:
35 description: Analog core power supply
36
37 dv-supply:
38 description: Digital core power supply
39
40 iov-supply:
41 description: Digital IO power supply
42
43 ldoin-supply:
44 description: LDO power supply
45
46 reset-gpios:
47 maxItems: 1
48
49 '#sound-dai-cells':
50 const: 0
51
52 aic32x4-gpio-func:
53 description: |
54 GPIO function configuration for pins MFP1-MFP5.
55 Types are defined in include/sound/tlv320aic32x4.h
56 $ref: /schemas/types.yaml#/definitions/uint32-array
57 minItems: 5
58 maxItems: 5
59
60required:
61 - compatible
62 - reg
63 - clocks
64 - clock-names
65 - iov-supply
66
67allOf:
68 - $ref: dai-common.yaml#
69 - if:
70 not:
71 required:
72 - ldoin-supply
73 then:
74 required:
75 - av-supply
76 - dv-supply
77
78additionalProperties: false
79
80examples:
81 - |
82 #include <dt-bindings/gpio/gpio.h>
83 i2c {
84 #address-cells = <1>;
85 #size-cells = <0>;
86 audio-codec@18 {
87 compatible = "ti,tlv320aic32x4";
88 reg = <0x18>;
89 iov-supply = <&reg_3v3>;
90 ldoin-supply = <&reg_3v3>;
91 clocks = <&clks 201>;
92 clock-names = "mclk";
Tom Rini93743d22024-04-01 09:08:13 -040093 aic32x4-gpio-func = <
Tom Rini53633a82024-02-29 12:33:36 -050094 0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
95 0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
96 0x04 /* MFP3 AIC32X4_MFP3_GPIO_ENABLED */
97 0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
98 0x08 /* MFP5 AIC32X4_MFP5_GPIO_INPUT */
99 >;
100 };
101 };