aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Ujfalusi2020-04-09 03:00:51 -0500
committerPeter Ujfalusi2020-04-29 07:27:48 -0500
commit2e661c75478c3e89ef584cd96525dfef0cfe9798 (patch)
treee74c481609299154c1961f17cac70479d237c533
parent0a0e0462616c8349adbcb9c9cf77fcb5a1db1cde (diff)
downloadti-upstream-tools-2e661c75478c3e89ef584cd96525dfef0cfe9798.tar.gz
ti-upstream-tools-2e661c75478c3e89ef584cd96525dfef0cfe9798.tar.xz
ti-upstream-tools-2e661c75478c3e89ef584cd96525dfef0cfe9798.zip
arm64: dts: ti: Add k3-am654-gp.dtso for audio support
The GP application board have: ICSSG I2C0..3 connected to I2C EEPROMs ICSSG UART0..3 headers with level shifters ICSSG SPI0..3 connected to SPI Flash McASP0 conencted to tlv320aic3106 codec with Headset out and Line in jack This patch adds support for the audio on the GP application board. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
-rw-r--r--arch/arm64/boot/dts/ti/k3-am654-gp.dtso133
1 files changed, 133 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/ti/k3-am654-gp.dtso b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
new file mode 100644
index 0000000..71f5734
--- /dev/null
+++ b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
@@ -0,0 +1,133 @@
1// SPDX-License-Identifier: GPL-2.0
2/**
3 * DT overlay for GP application board on AM654 EVM
4 *
5 * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/
6 */
7
8/dts-v1/;
9/plugin/;
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/pinctrl/k3.h>
12
13/ {
14 fragment@101 {
15 target-path = "/";
16
17 __overlay__ {
18 gp_vcc_5v0: fixedregulator-gp_vcc_5v0 {
19 compatible = "regulator-fixed";
20 regulator-name = "gp_vcc_5v0";
21 regulator-min-microvolt = <5000000>;
22 regulator-max-microvolt = <5000000>;
23 regulator-always-on;
24 regulator-boot-on;
25 };
26
27 codec_vcc_3v3: fixedregulator-codec_vcc_3v3 {
28 /* LP5912-3.3DRVT */
29 compatible = "regulator-fixed";
30 regulator-name = "codec_vcc_3v3";
31 regulator-min-microvolt = <3300000>;
32 regulator-max-microvolt = <3300000>;
33 vin-supply = <&gp_vcc_5v0>;
34 regulator-always-on;
35 regulator-boot-on;
36 };
37
38 gp_vcc_1v8: fixedregulator-gp_vcc_1v8 {
39 compatible = "regulator-fixed";
40 regulator-name = "gp_vcc_1v8";
41 regulator-min-microvolt = <1800000>;
42 regulator-max-microvolt = <1800000>;
43 regulator-always-on;
44 regulator-boot-on;
45 };
46
47 sound {
48 compatible = "simple-audio-card";
49 simple-audio-card,name = "AM65x-GPEVM";
50 simple-audio-card,widgets =
51 "Headphone", "Headphone Jack",
52 "Line", "Line In";
53 simple-audio-card,routing =
54 "Headphone Jack", "HPLOUT",
55 "Headphone Jack", "HPROUT",
56 "LINE1L", "Line In",
57 "LINE1R", "Line In";
58 simple-audio-card,format = "dsp_b";
59 simple-audio-card,bitclock-master = <&sound_master>;
60 simple-audio-card,frame-master = <&sound_master>;
61 simple-audio-card,bitclock-inversion;
62
63 simple-audio-card,cpu {
64 sound-dai = <&mcasp0>;
65 };
66
67 sound_master: simple-audio-card,codec {
68 sound-dai = <&tlv320aic3106>;
69 system-clock-frequency = <12000000>;
70 };
71 };
72 };
73 };
74};
75
76&main_pmx0 {
77 mcasp0_pins: mcasp0_pins {
78 pinctrl-single,pins = <
79 AM65X_IOPAD(0x01f4, PIN_INPUT, 5) /* (V24) PRG0_PRU0_GPO0.MCASP0_ACLKX */
80 AM65X_IOPAD(0x01f8, PIN_INPUT, 5) /* (W25) PRG0_PRU0_GPO1.MCASP0_AFSX */
81 AM65X_IOPAD(0x0204, PIN_OUTPUT, 5) /* (Y24) PRG0_PRU0_GPO4.MCASP0_AXR0 */
82 AM65X_IOPAD(0x0208, PIN_INPUT, 5) /* (V28) PRG0_PRU0_GPO5.MCASP0_AXR1 */
83 >;
84 };
85
86 aic3106_pins: aic3106_pins {
87 pinctrl-single,pins = <
88 AM65X_IOPAD(0x011c, PIN_OUTPUT, 7) /* (AD19) PRG1_PRU0_GPO15.GPIO0_71 */
89 >;
90 };
91};
92
93&main_i2c0 {
94 #address-cells = <1>;
95 #size-cells = <0>;
96 tlv320aic3106: tlv320aic3106@1b {
97 #sound-dai-cells = <0>;
98 compatible = "ti,tlv320aic3106";
99 reg = <0x1b>;
100 status = "okay";
101
102 pinctrl-names = "default";
103 pinctrl-0 = <&aic3106_pins>;
104
105 gpio-reset = <&main_gpio0 71 GPIO_ACTIVE_LOW>; /* gpio0_71 */
106
107 /* Regulators */
108 AVDD-supply = <&codec_vcc_3v3>;
109 IOVDD-supply = <&gp_vcc_1v8>;
110 DRVDD-supply = <&codec_vcc_3v3>;
111 DVDD-supply = <&gp_vcc_1v8>;
112 };
113};
114
115&mcasp0 {
116 #sound-dai-cells = <0>;
117 status = "okay";
118
119 pinctrl-names = "default";
120 pinctrl-0 = <&mcasp0_pins>;
121
122 op-mode = <0>; /* MCASP_IIS_MODE */
123 tdm-slots = <2>;
124 /* 16 serializers */
125 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
126 1 2 0 0
127 0 0 0 0
128 0 0 0 0
129 0 0 0 0
130 >;
131 tx-num-evt = <32>;
132 rx-num-evt = <32>;
133};