diff options
author | Peter Ujfalusi | 2020-04-09 03:00:51 -0500 |
---|---|---|
committer | Peter Ujfalusi | 2020-04-29 07:27:48 -0500 |
commit | 2e661c75478c3e89ef584cd96525dfef0cfe9798 (patch) | |
tree | e74c481609299154c1961f17cac70479d237c533 | |
parent | 0a0e0462616c8349adbcb9c9cf77fcb5a1db1cde (diff) | |
download | ti-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.dtso | 133 |
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 | }; | ||