Merge https://gitlab.denx.de/u-boot/custodians/u-boot-x86
[oweals/u-boot.git] / arch / arm / dts / k3-j721e-r5-common-proc-board.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/
4  */
5
6 /dts-v1/;
7
8 #include "k3-j721e-som-p0.dtsi"
9 #include "k3-j721e-ddr-evm-lp4-3733.dtsi"
10 #include "k3-j721e-ddr.dtsi"
11
12 / {
13         aliases {
14                 remoteproc0 = &sysctrler;
15                 remoteproc1 = &a72_0;
16         };
17
18         chosen {
19                 stdout-path = "serial2:115200n8";
20                 tick-timer = &timer1;
21         };
22
23         a72_0: a72@0 {
24                 compatible = "ti,am654-rproc";
25                 reg = <0x0 0x00a90000 0x0 0x10>;
26                 power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
27                                 <&k3_pds 202 TI_SCI_PD_EXCLUSIVE>;
28                 resets = <&k3_reset 202 0>;
29                 assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
30                 assigned-clock-rates = <2000000000>, <200000000>;
31                 ti,sci = <&dmsc>;
32                 ti,sci-proc-id = <32>;
33                 ti,sci-host-id = <10>;
34                 u-boot,dm-spl;
35         };
36
37         clk_200mhz: dummy_clock {
38                 compatible = "fixed-clock";
39                 #clock-cells = <0>;
40                 clock-frequency = <200000000>;
41                 u-boot,dm-spl;
42         };
43
44         clk_19_2mhz: dummy_clock {
45                 compatible = "fixed-clock";
46                 #clock-cells = <0>;
47                 clock-frequency = <19200000>;
48                 u-boot,dm-spl;
49         };
50 };
51
52 &cbass_mcu_wakeup {
53         mcu_secproxy: secproxy@28380000 {
54                 u-boot,dm-spl;
55                 compatible = "ti,am654-secure-proxy";
56                 reg = <0x0 0x2a380000 0x0 0x80000>,
57                       <0x0 0x2a400000 0x0 0x80000>,
58                       <0x0 0x2a480000 0x0 0x80000>;
59                 reg-names = "rt", "scfg", "target_data";
60                 #mbox-cells = <1>;
61         };
62
63         sysctrler: sysctrler {
64                 u-boot,dm-spl;
65                 compatible = "ti,am654-system-controller";
66                 mboxes= <&mcu_secproxy 4>, <&mcu_secproxy 5>;
67                 mbox-names = "tx", "rx";
68         };
69
70         wkup_vtm0: wkup_vtm@42040000 {
71                 compatible = "ti,am654-vtm", "ti,j721e-avs";
72                 reg = <0x0 0x42040000 0x0 0x330>;
73                 power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
74                 #thermal-sensor-cells = <1>;
75         };
76 };
77
78 &dmsc {
79         mboxes= <&mcu_secproxy 8>, <&mcu_secproxy 6>, <&mcu_secproxy 5>;
80         mbox-names = "tx", "rx", "notify";
81         ti,host-id = <4>;
82         ti,secure-host;
83 };
84
85 &wkup_pmx0 {
86         wkup_uart0_pins_default: wkup_uart0_pins_default {
87                 u-boot,dm-spl;
88                 pinctrl-single,pins = <
89                         J721E_WKUP_IOPAD(0xa0, PIN_INPUT, 0) /* (J29) WKUP_UART0_RXD */
90                         J721E_WKUP_IOPAD(0xa4, PIN_OUTPUT, 0) /* (J28) WKUP_UART0_TXD */
91                 >;
92         };
93
94         mcu_uart0_pins_default: mcu_uart0_pins_default {
95                 u-boot,dm-spl;
96                 pinctrl-single,pins = <
97                         J721E_WKUP_IOPAD(0xe8, PIN_INPUT, 0) /* (H29) WKUP_GPIO0_14.MCU_UART0_CTSn */
98                         J721E_WKUP_IOPAD(0xec, PIN_OUTPUT, 0) /* (J27) WKUP_GPIO0_15.MCU_UART0_RTSn */
99                         J721E_WKUP_IOPAD(0xe4, PIN_INPUT, 0) /* (H28) WKUP_GPIO0_13.MCU_UART0_RXD */
100                         J721E_WKUP_IOPAD(0xe0, PIN_OUTPUT, 0) /* (G29) WKUP_GPIO0_12.MCU_UART0_TXD */
101                 >;
102         };
103
104         wkup_i2c0_pins_default: wkup-i2c0-pins-default {
105                 pinctrl-single,pins = <
106                         J721E_WKUP_IOPAD(0xf8, PIN_INPUT_PULLUP, 0) /* (J25) WKUP_I2C0_SCL */
107                         J721E_WKUP_IOPAD(0xfc, PIN_INPUT_PULLUP, 0) /* (H24) WKUP_I2C0_SDA */
108                 >;
109         };
110 };
111
112 &main_pmx0 {
113         main_uart0_pins_default: main_uart0_pins_default {
114                 u-boot,dm-spl;
115                 pinctrl-single,pins = <
116                         J721E_IOPAD(0x1d4, PIN_INPUT, 1) /* (Y3) SPI1_CS0.UART0_CTSn */
117                         J721E_IOPAD(0x1c0, PIN_OUTPUT, 1) /* (AA2) SPI0_CS0.UART0_RTSn */
118                         J721E_IOPAD(0x1e8, PIN_INPUT, 0) /* (AB2) UART0_RXD */
119                         J721E_IOPAD(0x1ec, PIN_OUTPUT, 0) /* (AB3) UART0_TXD */
120                 >;
121         };
122
123         main_usbss0_pins_default: main_usbss0_pins_default {
124                 pinctrl-single,pins = <
125                         J721E_IOPAD(0x290, PIN_OUTPUT, 0) /* (U6) USB0_DRVVBUS */
126                         J721E_IOPAD(0x210, PIN_INPUT, 7) /* (W3) MCAN1_RX.GPIO1_3 */
127                 >;
128         };
129
130         main_mmc1_pins_default: main_mmc1_pins_default {
131                 pinctrl-single,pins = <
132                         J721E_IOPAD(0x254, PIN_INPUT, 0) /* (R29) MMC1_CMD */
133                         J721E_IOPAD(0x250, PIN_INPUT, 0) /* (P25) MMC1_CLK */
134                         J721E_IOPAD(0x2ac, PIN_INPUT, 0) /* (P25) MMC1_CLKLB */
135                         J721E_IOPAD(0x24c, PIN_INPUT, 0) /* (R24) MMC1_DAT0 */
136                         J721E_IOPAD(0x248, PIN_INPUT, 0) /* (P24) MMC1_DAT1 */
137                         J721E_IOPAD(0x244, PIN_INPUT, 0) /* (R25) MMC1_DAT2 */
138                         J721E_IOPAD(0x240, PIN_INPUT, 0) /* (R26) MMC1_DAT3 */
139                         J721E_IOPAD(0x258, PIN_INPUT, 0) /* (P23) MMC1_SDCD */
140                         J721E_IOPAD(0x25c, PIN_INPUT, 0) /* (R28) MMC1_SDWP */
141                 >;
142         };
143
144         main_i2c0_pins_default: main-i2c0-pins-default {
145                 pinctrl-single,pins = <
146                         J721E_IOPAD(0x220, PIN_INPUT_PULLUP, 0) /* (AC5) I2C0_SCL */
147                         J721E_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (AA5) I2C0_SDA */
148                 >;
149         };
150 };
151
152 &wkup_uart0 {
153         u-boot,dm-spl;
154         pinctrl-names = "default";
155         pinctrl-0 = <&wkup_uart0_pins_default>;
156         status = "okay";
157 };
158
159 &mcu_uart0 {
160         pinctrl-names = "default";
161         pinctrl-0 = <&mcu_uart0_pins_default>;
162         status = "okay";
163 };
164
165 &main_uart0 {
166         pinctrl-names = "default";
167         pinctrl-0 = <&main_uart0_pins_default>;
168         status = "okay";
169         power-domains = <&k3_pds 146 TI_SCI_PD_SHARED>;
170 };
171
172 &main_sdhci0 {
173         /delete-property/ power-domains;
174         /delete-property/ assigned-clocks;
175         /delete-property/ assigned-clock-parents;
176         clock-names = "clk_xin";
177         clocks = <&clk_200mhz>;
178         ti,driver-strength-ohm = <50>;
179         non-removable;
180         bus-width = <8>;
181 };
182
183 &main_sdhci1 {
184         /delete-property/ power-domains;
185         /delete-property/ assigned-clocks;
186         /delete-property/ assigned-clock-parents;
187         pinctrl-names = "default";
188         pinctrl-0 = <&main_mmc1_pins_default>;
189         clock-names = "clk_xin";
190         clocks = <&clk_200mhz>;
191         ti,driver-strength-ohm = <50>;
192 };
193
194 &wkup_i2c0 {
195         u-boot,dm-spl;
196         tps659413a: tps659413a@48 {
197                 reg = <0x48>;
198                 compatible = "ti,tps659413";
199                 u-boot,dm-spl;
200                 pinctrl-names = "default";
201                 pinctrl-0 = <&wkup_i2c0_pins_default>;
202                 clock-frequency = <400000>;
203
204                 regulators: regulators {
205                         u-boot,dm-spl;
206                         buck12_reg: buck12 {
207                                 /*VDD_MPU*/
208                                 regulator-name = "buck12";
209                                 regulator-min-microvolt = <800000>;
210                                 regulator-max-microvolt = <1250000>;
211                                 regulator-always-on;
212                                 regulator-boot-on;
213                                 u-boot,dm-spl;
214                         };
215                 };
216         };
217 };
218
219 &wkup_vtm0 {
220         vdd-supply-2 = <&buck12_reg>;
221         u-boot,dm-spl;
222 };
223
224 &usbss0 {
225         /delete-property/ power-domains;
226         /delete-property/ assigned-clocks;
227         /delete-property/ assigned-clock-parents;
228         clocks = <&clk_19_2mhz>;
229         clock-names = "usb2_refclk";
230         pinctrl-names = "default";
231         pinctrl-0 = <&main_usbss0_pins_default>;
232         ti,vbus-divider;
233 };
234
235 &main_i2c0 {
236         pinctrl-names = "default";
237         pinctrl-0 = <&main_i2c0_pins_default>;
238         clock-frequency = <400000>;
239
240         exp1: gpio@20 {
241                 compatible = "ti,tca6416";
242                 reg = <0x20>;
243                 gpio-controller;
244                 #gpio-cells = <2>;
245         };
246
247         exp2: gpio@22 {
248                 compatible = "ti,tca6424";
249                 reg = <0x22>;
250                 gpio-controller;
251                 #gpio-cells = <2>;
252         };
253 };
254
255 #include "k3-j721e-common-proc-board-u-boot.dtsi"