xref: /rk3399_rockchip-uboot/arch/arm/dts/am57xx-idk-common.dtsi (revision a0c0b97c6b7eb51e9687f63983d0d452990b15fc)
1332dddc6SSchuyler Patton/*
2332dddc6SSchuyler Patton * Copyright (C) 2015-2016 Texas Instruments Incorporated - http://www.ti.com/
3332dddc6SSchuyler Patton *
4332dddc6SSchuyler Patton * This program is free software; you can redistribute it and/or modify
5332dddc6SSchuyler Patton * it under the terms of the GNU General Public License version 2 as
6332dddc6SSchuyler Patton * published by the Free Software Foundation.
7332dddc6SSchuyler Patton */
8332dddc6SSchuyler Patton
9*a0c0b97cSLokesh Vutla#include "am57xx-industrial-grade.dtsi"
10*a0c0b97cSLokesh Vutla
11332dddc6SSchuyler Patton/ {
12332dddc6SSchuyler Patton	aliases {
13332dddc6SSchuyler Patton		rtc0 = &tps659038_rtc;
14332dddc6SSchuyler Patton		rtc1 = &rtc;
15332dddc6SSchuyler Patton	};
16332dddc6SSchuyler Patton
17*a0c0b97cSLokesh Vutla	chosen {
18*a0c0b97cSLokesh Vutla		stdout-path = &uart3;
19*a0c0b97cSLokesh Vutla	};
20*a0c0b97cSLokesh Vutla
21332dddc6SSchuyler Patton	vmain: fixedregulator-vmain {
22332dddc6SSchuyler Patton		compatible = "regulator-fixed";
23332dddc6SSchuyler Patton		regulator-name = "VMAIN";
24332dddc6SSchuyler Patton		regulator-min-microvolt = <5000000>;
25332dddc6SSchuyler Patton		regulator-max-microvolt = <5000000>;
26332dddc6SSchuyler Patton		regulator-always-on;
27332dddc6SSchuyler Patton		regulator-boot-on;
28332dddc6SSchuyler Patton	};
29332dddc6SSchuyler Patton
30332dddc6SSchuyler Patton	v3_3d: fixedregulator-v3_3d {
31332dddc6SSchuyler Patton		compatible = "regulator-fixed";
32332dddc6SSchuyler Patton		regulator-name = "V3_3D";
33332dddc6SSchuyler Patton		vin-supply = <&smps9_reg>;
34332dddc6SSchuyler Patton		regulator-min-microvolt = <3300000>;
35332dddc6SSchuyler Patton		regulator-max-microvolt = <3300000>;
36332dddc6SSchuyler Patton		regulator-always-on;
37332dddc6SSchuyler Patton		regulator-boot-on;
38332dddc6SSchuyler Patton	};
39332dddc6SSchuyler Patton
40332dddc6SSchuyler Patton	vtt_fixed: fixedregulator-vtt {
41332dddc6SSchuyler Patton		/* TPS51200 */
42332dddc6SSchuyler Patton		compatible = "regulator-fixed";
43332dddc6SSchuyler Patton		regulator-name = "vtt_fixed";
44332dddc6SSchuyler Patton		vin-supply = <&v3_3d>;
45332dddc6SSchuyler Patton		regulator-min-microvolt = <3300000>;
46332dddc6SSchuyler Patton		regulator-max-microvolt = <3300000>;
47332dddc6SSchuyler Patton		regulator-always-on;
48332dddc6SSchuyler Patton		regulator-boot-on;
49332dddc6SSchuyler Patton	};
50332dddc6SSchuyler Patton};
51332dddc6SSchuyler Patton
52332dddc6SSchuyler Patton&i2c1 {
53332dddc6SSchuyler Patton	status = "okay";
54332dddc6SSchuyler Patton	clock-frequency = <400000>;
55332dddc6SSchuyler Patton
56332dddc6SSchuyler Patton	tps659038: tps659038@58 {
57332dddc6SSchuyler Patton		compatible = "ti,tps659038";
58332dddc6SSchuyler Patton		reg = <0x58>;
59332dddc6SSchuyler Patton		interrupts-extended = <&gpio6 16 IRQ_TYPE_LEVEL_HIGH
60332dddc6SSchuyler Patton			       &dra7_pmx_core 0x418>;
61332dddc6SSchuyler Patton		#interrupt-cells = <2>;
62332dddc6SSchuyler Patton		interrupt-controller;
63332dddc6SSchuyler Patton		ti,system-power-controller;
64332dddc6SSchuyler Patton
65332dddc6SSchuyler Patton		tps659038_pmic {
66332dddc6SSchuyler Patton			compatible = "ti,tps659038-pmic";
67*a0c0b97cSLokesh Vutla
68*a0c0b97cSLokesh Vutla			smps12-in-supply = <&vmain>;
69*a0c0b97cSLokesh Vutla			smps3-in-supply = <&vmain>;
70*a0c0b97cSLokesh Vutla			smps45-in-supply = <&vmain>;
71*a0c0b97cSLokesh Vutla			smps6-in-supply = <&vmain>;
72*a0c0b97cSLokesh Vutla			smps7-in-supply = <&vmain>;
73*a0c0b97cSLokesh Vutla			smps8-in-supply = <&vmain>;
74*a0c0b97cSLokesh Vutla			smps9-in-supply = <&vmain>;
75*a0c0b97cSLokesh Vutla			ldo1-in-supply = <&vmain>;
76*a0c0b97cSLokesh Vutla			ldo2-in-supply = <&vmain>;
77*a0c0b97cSLokesh Vutla			ldo3-in-supply = <&vmain>;
78*a0c0b97cSLokesh Vutla			ldo4-in-supply = <&vmain>;
79*a0c0b97cSLokesh Vutla			ldo9-in-supply = <&vmain>;
80*a0c0b97cSLokesh Vutla			ldoln-in-supply = <&vmain>;
81*a0c0b97cSLokesh Vutla			ldousb-in-supply = <&vmain>;
82*a0c0b97cSLokesh Vutla			ldortc-in-supply = <&vmain>;
83*a0c0b97cSLokesh Vutla
84332dddc6SSchuyler Patton			regulators {
85332dddc6SSchuyler Patton				smps12_reg: smps12 {
86332dddc6SSchuyler Patton					/* VDD_MPU */
87332dddc6SSchuyler Patton					regulator-name = "smps12";
88332dddc6SSchuyler Patton					regulator-min-microvolt = <850000>;
89332dddc6SSchuyler Patton					regulator-max-microvolt = <1250000>;
90332dddc6SSchuyler Patton					regulator-always-on;
91332dddc6SSchuyler Patton					regulator-boot-on;
92332dddc6SSchuyler Patton				};
93332dddc6SSchuyler Patton
94332dddc6SSchuyler Patton				smps3_reg: smps3 {
95332dddc6SSchuyler Patton					/* VDD_DDR EMIF1 EMIF2 */
96332dddc6SSchuyler Patton					regulator-name = "smps3";
97332dddc6SSchuyler Patton					regulator-min-microvolt = <1350000>;
98332dddc6SSchuyler Patton					regulator-max-microvolt = <1350000>;
99332dddc6SSchuyler Patton					regulator-always-on;
100332dddc6SSchuyler Patton					regulator-boot-on;
101332dddc6SSchuyler Patton				};
102332dddc6SSchuyler Patton
103332dddc6SSchuyler Patton				smps45_reg: smps45 {
104332dddc6SSchuyler Patton					/* VDD_DSPEVE on AM572 */
105332dddc6SSchuyler Patton					/* VDD_IVA + VDD_DSP on AM571 */
106332dddc6SSchuyler Patton					regulator-name = "smps45";
107332dddc6SSchuyler Patton					regulator-min-microvolt = <850000>;
108332dddc6SSchuyler Patton					regulator-max-microvolt = <1250000>;
109332dddc6SSchuyler Patton					regulator-always-on;
110332dddc6SSchuyler Patton					regulator-boot-on;
111332dddc6SSchuyler Patton				};
112332dddc6SSchuyler Patton
113332dddc6SSchuyler Patton				smps6_reg: smps6 {
114332dddc6SSchuyler Patton					/* VDD_GPU */
115332dddc6SSchuyler Patton					regulator-name = "smps6";
116332dddc6SSchuyler Patton					regulator-min-microvolt = <850000>;
117332dddc6SSchuyler Patton					regulator-max-microvolt = <1250000>;
118332dddc6SSchuyler Patton					regulator-always-on;
119332dddc6SSchuyler Patton					regulator-boot-on;
120332dddc6SSchuyler Patton				};
121332dddc6SSchuyler Patton
122332dddc6SSchuyler Patton				smps7_reg: smps7 {
123332dddc6SSchuyler Patton					/* VDD_CORE */
124332dddc6SSchuyler Patton					regulator-name = "smps7";
125332dddc6SSchuyler Patton					regulator-min-microvolt = <850000>;
126332dddc6SSchuyler Patton					regulator-max-microvolt = <1150000>;
127332dddc6SSchuyler Patton					regulator-always-on;
128332dddc6SSchuyler Patton					regulator-boot-on;
129332dddc6SSchuyler Patton				};
130332dddc6SSchuyler Patton
131332dddc6SSchuyler Patton				smps8_reg: smps8 {
132332dddc6SSchuyler Patton					/* 5728 - VDD_IVAHD */
133332dddc6SSchuyler Patton					/* 5718 - N.C. test point */
134332dddc6SSchuyler Patton					regulator-name = "smps8";
135332dddc6SSchuyler Patton				};
136332dddc6SSchuyler Patton
137332dddc6SSchuyler Patton				smps9_reg: smps9 {
138332dddc6SSchuyler Patton					/* VDD_3_3D */
139332dddc6SSchuyler Patton					regulator-name = "smps9";
140332dddc6SSchuyler Patton					regulator-min-microvolt = <3300000>;
141332dddc6SSchuyler Patton					regulator-max-microvolt = <3300000>;
142332dddc6SSchuyler Patton					regulator-always-on;
143332dddc6SSchuyler Patton					regulator-boot-on;
144332dddc6SSchuyler Patton				};
145332dddc6SSchuyler Patton
146332dddc6SSchuyler Patton				ldo1_reg: ldo1 {
147332dddc6SSchuyler Patton					/* VDDSHV8 - VSDMMC  */
148332dddc6SSchuyler Patton					/* NOTE: on rev 1.3a, data supply */
149332dddc6SSchuyler Patton					regulator-name = "ldo1";
150332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
151332dddc6SSchuyler Patton					regulator-max-microvolt = <3300000>;
152332dddc6SSchuyler Patton					regulator-boot-on;
153332dddc6SSchuyler Patton					regulator-always-on;
154332dddc6SSchuyler Patton				};
155332dddc6SSchuyler Patton
156332dddc6SSchuyler Patton				ldo2_reg: ldo2 {
157332dddc6SSchuyler Patton					/* VDDSH18V */
158332dddc6SSchuyler Patton					regulator-name = "ldo2";
159332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
160332dddc6SSchuyler Patton					regulator-max-microvolt = <1800000>;
161332dddc6SSchuyler Patton					regulator-always-on;
162332dddc6SSchuyler Patton					regulator-boot-on;
163332dddc6SSchuyler Patton				};
164332dddc6SSchuyler Patton
165332dddc6SSchuyler Patton				ldo3_reg: ldo3 {
166332dddc6SSchuyler Patton					/* R1.3a 572x V1_8PHY_LDO3: USB, SATA */
167332dddc6SSchuyler Patton					regulator-name = "ldo3";
168332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
169332dddc6SSchuyler Patton					regulator-max-microvolt = <1800000>;
170332dddc6SSchuyler Patton					regulator-always-on;
171332dddc6SSchuyler Patton					regulator-boot-on;
172332dddc6SSchuyler Patton				};
173332dddc6SSchuyler Patton
174332dddc6SSchuyler Patton				ldo4_reg: ldo4 {
175332dddc6SSchuyler Patton					/* R1.3a 572x V1_8PHY_LDO4: PCIE, HDMI*/
176332dddc6SSchuyler Patton					regulator-name = "ldo4";
177332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
178332dddc6SSchuyler Patton					regulator-max-microvolt = <1800000>;
179332dddc6SSchuyler Patton					regulator-always-on;
180332dddc6SSchuyler Patton					regulator-boot-on;
181332dddc6SSchuyler Patton				};
182332dddc6SSchuyler Patton
183332dddc6SSchuyler Patton				/* LDO5-8 unused */
184332dddc6SSchuyler Patton
185332dddc6SSchuyler Patton				ldo9_reg: ldo9 {
186332dddc6SSchuyler Patton					/* VDD_RTC  */
187332dddc6SSchuyler Patton					regulator-name = "ldo9";
188332dddc6SSchuyler Patton					regulator-min-microvolt = <840000>;
189332dddc6SSchuyler Patton					regulator-max-microvolt = <1160000>;
190332dddc6SSchuyler Patton					regulator-always-on;
191332dddc6SSchuyler Patton					regulator-boot-on;
192332dddc6SSchuyler Patton				};
193332dddc6SSchuyler Patton
194332dddc6SSchuyler Patton				ldoln_reg: ldoln {
195332dddc6SSchuyler Patton					/* VDDA_1V8_PLL */
196332dddc6SSchuyler Patton					regulator-name = "ldoln";
197332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
198332dddc6SSchuyler Patton					regulator-max-microvolt = <1800000>;
199332dddc6SSchuyler Patton					regulator-always-on;
200332dddc6SSchuyler Patton					regulator-boot-on;
201332dddc6SSchuyler Patton				};
202332dddc6SSchuyler Patton
203332dddc6SSchuyler Patton				ldousb_reg: ldousb {
204332dddc6SSchuyler Patton					/* VDDA_3V_USB: VDDA_USBHS33 */
205332dddc6SSchuyler Patton					regulator-name = "ldousb";
206332dddc6SSchuyler Patton					regulator-min-microvolt = <3300000>;
207332dddc6SSchuyler Patton					regulator-max-microvolt = <3300000>;
208332dddc6SSchuyler Patton					regulator-always-on;
209332dddc6SSchuyler Patton					regulator-boot-on;
210332dddc6SSchuyler Patton				};
211332dddc6SSchuyler Patton
212332dddc6SSchuyler Patton				ldortc_reg: ldortc {
213332dddc6SSchuyler Patton					/* VDDA_RTC  */
214332dddc6SSchuyler Patton					regulator-name = "ldortc";
215332dddc6SSchuyler Patton					regulator-min-microvolt = <1800000>;
216332dddc6SSchuyler Patton					regulator-max-microvolt = <1800000>;
217332dddc6SSchuyler Patton					regulator-always-on;
218332dddc6SSchuyler Patton					regulator-boot-on;
219332dddc6SSchuyler Patton				};
220332dddc6SSchuyler Patton
221332dddc6SSchuyler Patton				regen1: regen1 {
222332dddc6SSchuyler Patton					/* VDD_3V3_ON */
223332dddc6SSchuyler Patton					regulator-name = "regen1";
224332dddc6SSchuyler Patton					regulator-boot-on;
225332dddc6SSchuyler Patton					regulator-always-on;
226332dddc6SSchuyler Patton				};
227332dddc6SSchuyler Patton
228332dddc6SSchuyler Patton				regen2: regen2 {
229332dddc6SSchuyler Patton					/* Needed for PMIC internal resource */
230332dddc6SSchuyler Patton					regulator-name = "regen2";
231332dddc6SSchuyler Patton					regulator-boot-on;
232332dddc6SSchuyler Patton					regulator-always-on;
233332dddc6SSchuyler Patton				};
234332dddc6SSchuyler Patton			};
235332dddc6SSchuyler Patton		};
236332dddc6SSchuyler Patton
237332dddc6SSchuyler Patton		tps659038_rtc: tps659038_rtc {
238332dddc6SSchuyler Patton			compatible = "ti,palmas-rtc";
239332dddc6SSchuyler Patton			interrupt-parent = <&tps659038>;
240332dddc6SSchuyler Patton			interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
241332dddc6SSchuyler Patton			wakeup-source;
242332dddc6SSchuyler Patton		};
243332dddc6SSchuyler Patton
244332dddc6SSchuyler Patton		tps659038_pwr_button: tps659038_pwr_button {
245332dddc6SSchuyler Patton			compatible = "ti,palmas-pwrbutton";
246332dddc6SSchuyler Patton			interrupt-parent = <&tps659038>;
247332dddc6SSchuyler Patton			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
248332dddc6SSchuyler Patton			wakeup-source;
249332dddc6SSchuyler Patton			ti,palmas-long-press-seconds = <12>;
250332dddc6SSchuyler Patton		};
251332dddc6SSchuyler Patton
252332dddc6SSchuyler Patton		tps659038_gpio: tps659038_gpio {
253332dddc6SSchuyler Patton			compatible = "ti,palmas-gpio";
254332dddc6SSchuyler Patton			gpio-controller;
255332dddc6SSchuyler Patton			#gpio-cells = <2>;
256332dddc6SSchuyler Patton		};
257332dddc6SSchuyler Patton	};
258332dddc6SSchuyler Patton};
259332dddc6SSchuyler Patton
260332dddc6SSchuyler Patton&uart3 {
261332dddc6SSchuyler Patton	status = "okay";
262332dddc6SSchuyler Patton	interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH
263332dddc6SSchuyler Patton			       &dra7_pmx_core 0x248>;
264332dddc6SSchuyler Patton};
265332dddc6SSchuyler Patton
266332dddc6SSchuyler Patton&rtc {
267332dddc6SSchuyler Patton	status = "okay";
268332dddc6SSchuyler Patton	ext-clk-src;
269332dddc6SSchuyler Patton};
270332dddc6SSchuyler Patton
271332dddc6SSchuyler Patton&mac {
272332dddc6SSchuyler Patton	status = "okay";
273332dddc6SSchuyler Patton	dual_emac;
274332dddc6SSchuyler Patton};
275332dddc6SSchuyler Patton
276332dddc6SSchuyler Patton&cpsw_emac0 {
277332dddc6SSchuyler Patton	phy_id = <&davinci_mdio>, <0>;
278332dddc6SSchuyler Patton	phy-mode = "rgmii";
279332dddc6SSchuyler Patton	dual_emac_res_vlan = <1>;
280332dddc6SSchuyler Patton};
281332dddc6SSchuyler Patton
282332dddc6SSchuyler Patton&cpsw_emac1 {
283332dddc6SSchuyler Patton	phy_id = <&davinci_mdio>, <1>;
284332dddc6SSchuyler Patton	phy-mode = "rgmii";
285332dddc6SSchuyler Patton	dual_emac_res_vlan = <2>;
286332dddc6SSchuyler Patton};
287332dddc6SSchuyler Patton
288332dddc6SSchuyler Patton&usb2_phy1 {
289332dddc6SSchuyler Patton	phy-supply = <&ldousb_reg>;
290332dddc6SSchuyler Patton};
291332dddc6SSchuyler Patton
292332dddc6SSchuyler Patton&usb2_phy2 {
293332dddc6SSchuyler Patton	phy-supply = <&ldousb_reg>;
294332dddc6SSchuyler Patton};
295332dddc6SSchuyler Patton
296332dddc6SSchuyler Patton&usb1 {
297332dddc6SSchuyler Patton	dr_mode = "host";
298332dddc6SSchuyler Patton};
299332dddc6SSchuyler Patton
300332dddc6SSchuyler Patton&usb2 {
301332dddc6SSchuyler Patton	dr_mode = "otg";
302332dddc6SSchuyler Patton};
303332dddc6SSchuyler Patton
304332dddc6SSchuyler Patton&mmc2 {
305332dddc6SSchuyler Patton	status = "okay";
306332dddc6SSchuyler Patton	vmmc-supply = <&v3_3d>;
307332dddc6SSchuyler Patton	bus-width = <8>;
308332dddc6SSchuyler Patton	ti,non-removable;
309332dddc6SSchuyler Patton	max-frequency = <96000000>;
310332dddc6SSchuyler Patton};
3119af6ce42SVignesh R
3129af6ce42SVignesh R&qspi {
3139af6ce42SVignesh R	status = "okay";
3149af6ce42SVignesh R
3159af6ce42SVignesh R	spi-max-frequency = <76800000>;
3169af6ce42SVignesh R	m25p80@0 {
317*a0c0b97cSLokesh Vutla		compatible = "s25fl256s1", "spi-flash", "jedec,spi-nor";
3189af6ce42SVignesh R		spi-max-frequency = <76800000>;
3199af6ce42SVignesh R		reg = <0>;
3209af6ce42SVignesh R		spi-tx-bus-width = <1>;
3219af6ce42SVignesh R		spi-rx-bus-width = <4>;
3229af6ce42SVignesh R		#address-cells = <1>;
3239af6ce42SVignesh R		#size-cells = <1>;
3249af6ce42SVignesh R
3259af6ce42SVignesh R		/* MTD partition table.
3269af6ce42SVignesh R		 * The ROM checks the first four physical blocks
3279af6ce42SVignesh R		 * for a valid file to boot and the flash here is
3289af6ce42SVignesh R		 * 64KiB block size.
3299af6ce42SVignesh R		 */
3309af6ce42SVignesh R		partition@0 {
3319af6ce42SVignesh R			label = "QSPI.SPL";
3329af6ce42SVignesh R			reg = <0x00000000 0x000040000>;
3339af6ce42SVignesh R		};
3349af6ce42SVignesh R		partition@1 {
3359af6ce42SVignesh R			label = "QSPI.u-boot";
3369af6ce42SVignesh R			reg = <0x00040000 0x00100000>;
3379af6ce42SVignesh R		};
3389af6ce42SVignesh R		partition@2 {
3399af6ce42SVignesh R			label = "QSPI.u-boot-spl-os";
3409af6ce42SVignesh R			reg = <0x00140000 0x00080000>;
3419af6ce42SVignesh R		};
3429af6ce42SVignesh R		partition@3 {
3439af6ce42SVignesh R			label = "QSPI.u-boot-env";
3449af6ce42SVignesh R			reg = <0x001c0000 0x00010000>;
3459af6ce42SVignesh R		};
3469af6ce42SVignesh R		partition@4 {
3479af6ce42SVignesh R			label = "QSPI.u-boot-env.backup1";
3489af6ce42SVignesh R			reg = <0x001d0000 0x0010000>;
3499af6ce42SVignesh R		};
3509af6ce42SVignesh R		partition@5 {
3519af6ce42SVignesh R			label = "QSPI.kernel";
3529af6ce42SVignesh R			reg = <0x001e0000 0x0800000>;
3539af6ce42SVignesh R		};
3549af6ce42SVignesh R		partition@6 {
3559af6ce42SVignesh R			label = "QSPI.file-system";
3569af6ce42SVignesh R			reg = <0x009e0000 0x01620000>;
3579af6ce42SVignesh R		};
3589af6ce42SVignesh R	};
3599af6ce42SVignesh R};
360