1218887Sdim// SPDX-License-Identifier: GPL-2.0-only
2218887Sdim/*
3353358Sdim * am335x-igep0033.dtsi - Device Tree file for IGEP COM AQUILA AM335x
4353358Sdim *
5353358Sdim * Copyright (C) 2013 ISEE 2007 SL - https://www.isee.biz
6218887Sdim */
7218887Sdim
8218887Sdim/dts-v1/;
9218887Sdim
10218887Sdim#include "am33xx.dtsi"
11218887Sdim#include <dt-bindings/interrupt-controller/irq.h>
12218887Sdim
13344779Sdim/ {
14249423Sdim	cpus {
15249423Sdim		cpu@0 {
16221345Sdim			cpu0-supply = <&vdd1_reg>;
17221345Sdim		};
18221345Sdim	};
19218887Sdim
20234353Sdim	memory@80000000 {
21218887Sdim		device_type = "memory";
22218887Sdim		reg = <0x80000000 0x10000000>; /* 256 MB */
23218887Sdim	};
24218887Sdim
25218887Sdim	leds {
26218887Sdim		pinctrl-names = "default";
27218887Sdim		pinctrl-0 = <&leds_pins>;
28221345Sdim
29276479Sdim		compatible = "gpio-leds";
30218887Sdim
31218887Sdim		led0 {
32221345Sdim			label = "com:green:user";
33218887Sdim			gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
34218887Sdim			default-state = "on";
35218887Sdim		};
36234353Sdim	};
37234353Sdim
38234353Sdim	vbat: fixedregulator0 {
39218887Sdim		compatible = "regulator-fixed";
40218887Sdim		regulator-name = "vbat";
41218887Sdim		regulator-min-microvolt = <5000000>;
42288943Sdim		regulator-max-microvolt = <5000000>;
43288943Sdim		regulator-boot-on;
44288943Sdim	};
45218887Sdim
46218887Sdim	vmmc: fixedregulator1 {
47276479Sdim		compatible = "regulator-fixed";
48218887Sdim		regulator-name = "vmmc";
49218887Sdim		regulator-min-microvolt = <3300000>;
50218887Sdim		regulator-max-microvolt = <3300000>;
51221345Sdim	};
52221345Sdim};
53218887Sdim
54218887Sdim&am33xx_pinmux {
55218887Sdim	i2c0_pins: i2c0-pins {
56234353Sdim		pinctrl-single,pins = <
57341825Sdim			AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0)
58218887Sdim			AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0)
59218887Sdim		>;
60218887Sdim	};
61218887Sdim
62218887Sdim	nandflash_pins: nandflash-pins {
63218887Sdim		pinctrl-single,pins = <
64218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE0)
65249423Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE0)
66218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE0)
67218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE0)
68276479Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE0)
69218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE0)
70218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE0)
71218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE0)
72249423Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLUP, MUX_MODE0)
73249423Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_INPUT_PULLUP, MUX_MODE7)	/* gpmc_wpn.gpio0_31 */
74296417Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_CSN0, PIN_OUTPUT, MUX_MODE0)
75218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_OUTPUT, MUX_MODE0)
76276479Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_OUTPUT, MUX_MODE0)
77276479Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_OUTPUT, MUX_MODE0)
78218887Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_BEN0_CLE, PIN_OUTPUT, MUX_MODE0)
79218887Sdim		>;
80234353Sdim	};
81218887Sdim
82218887Sdim	uart0_pins: uart0-pins {
83296417Sdim		pinctrl-single,pins = <
84218887Sdim			AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
85218887Sdim			AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
86288943Sdim		>;
87218887Sdim	};
88218887Sdim
89280031Sdim	leds_pins: leds-pins {
90280031Sdim		pinctrl-single,pins = <
91239462Sdim			AM33XX_PADCONF(AM335X_PIN_GPMC_A7, PIN_OUTPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a7.gpio1_23 */
92218887Sdim		>;
93288943Sdim	};
94218887Sdim};
95249423Sdim
96218887Sdim&mac_sw {
97218887Sdim	status = "okay";
98221345Sdim};
99221345Sdim
100221345Sdim&davinci_mdio_sw {
101221345Sdim
102353358Sdim	ethphy0: ethernet-phy@0 {
103353358Sdim		reg = <0>;
104353358Sdim	};
105353358Sdim
106	ethphy1: ethernet-phy@1 {
107		reg = <1>;
108	};
109};
110
111&cpsw_port1 {
112	phy-handle = <&ethphy0>;
113	phy-mode = "rmii";
114	ti,dual-emac-pvid = <1>;
115};
116
117&cpsw_port2 {
118	phy-handle = <&ethphy1>;
119	phy-mode = "rmii";
120	ti,dual-emac-pvid = <2>;
121};
122
123&elm {
124	status = "okay";
125};
126
127&gpmc {
128	status = "okay";
129	pinctrl-names = "default";
130	pinctrl-0 = <&nandflash_pins>;
131
132	ranges = <0 0 0x08000000 0x1000000>;	/* CS0: 16MB for NAND */
133
134	nand@0,0 {
135		compatible = "ti,omap2-nand";
136		reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
137		interrupt-parent = <&gpmc>;
138		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
139			     <1 IRQ_TYPE_NONE>;	/* termcount */
140		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */
141		nand-bus-width = <8>;
142		ti,nand-ecc-opt = "bch8";
143		gpmc,device-width = <1>;
144		gpmc,sync-clk-ps = <0>;
145		gpmc,cs-on-ns = <0>;
146		gpmc,cs-rd-off-ns = <44>;
147		gpmc,cs-wr-off-ns = <44>;
148		gpmc,adv-on-ns = <6>;
149		gpmc,adv-rd-off-ns = <34>;
150		gpmc,adv-wr-off-ns = <44>;
151		gpmc,we-on-ns = <0>;
152		gpmc,we-off-ns = <40>;
153		gpmc,oe-on-ns = <0>;
154		gpmc,oe-off-ns = <54>;
155		gpmc,access-ns = <64>;
156		gpmc,rd-cycle-ns = <82>;
157		gpmc,wr-cycle-ns = <82>;
158		gpmc,bus-turnaround-ns = <0>;
159		gpmc,cycle2cycle-delay-ns = <0>;
160		gpmc,clk-activation-ns = <0>;
161		gpmc,wr-access-ns = <40>;
162		gpmc,wr-data-mux-bus-ns = <0>;
163
164		#address-cells = <1>;
165		#size-cells = <1>;
166		ti,elm-id = <&elm>;
167
168		/* MTD partition table */
169		partition@0 {
170			label = "SPL";
171			reg = <0x00000000 0x00080000>;
172		};
173
174		partition@1 {
175			label = "U-boot";
176			reg = <0x00080000 0x001e0000>;
177		};
178
179		partition@2 {
180			label = "U-Boot Env";
181			reg = <0x00260000 0x00020000>;
182		};
183
184		partition@3 {
185			label = "Kernel";
186			reg = <0x00280000 0x00500000>;
187		};
188
189		partition@4 {
190			label = "File System";
191			reg = <0x00780000 0x07880000>;
192		};
193	};
194};
195
196&i2c0 {
197	status = "okay";
198	pinctrl-names = "default";
199	pinctrl-0 = <&i2c0_pins>;
200
201	clock-frequency = <400000>;
202
203	tps: tps@2d {
204		reg = <0x2d>;
205	};
206};
207
208&mmc1 {
209	status = "okay";
210	vmmc-supply = <&vmmc>;
211	bus-width = <4>;
212};
213
214&uart0 {
215	status = "okay";
216	pinctrl-names = "default";
217	pinctrl-0 = <&uart0_pins>;
218};
219
220&usb1 {
221	dr_mode = "host";
222};
223
224#include "../../tps65910.dtsi"
225
226&tps {
227	vcc1-supply = <&vbat>;
228	vcc2-supply = <&vbat>;
229	vcc3-supply = <&vbat>;
230	vcc4-supply = <&vbat>;
231	vcc5-supply = <&vbat>;
232	vcc6-supply = <&vbat>;
233	vcc7-supply = <&vbat>;
234	vccio-supply = <&vbat>;
235
236	regulators {
237		vrtc_reg: regulator@0 {
238			regulator-always-on;
239		};
240
241		vio_reg: regulator@1 {
242			regulator-always-on;
243		};
244
245		vdd1_reg: regulator@2 {
246			/* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
247			regulator-name = "vdd_mpu";
248			regulator-min-microvolt = <912500>;
249			regulator-max-microvolt = <1312500>;
250			regulator-boot-on;
251			regulator-always-on;
252		};
253
254		vdd2_reg: regulator@3 {
255			/* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
256			regulator-name = "vdd_core";
257			regulator-min-microvolt = <912500>;
258			regulator-max-microvolt = <1150000>;
259			regulator-boot-on;
260			regulator-always-on;
261		};
262
263		vdd3_reg: regulator@4 {
264			regulator-always-on;
265		};
266
267		vdig1_reg: regulator@5 {
268			regulator-always-on;
269		};
270
271		vdig2_reg: regulator@6 {
272			regulator-always-on;
273		};
274
275		vpll_reg: regulator@7 {
276			regulator-always-on;
277		};
278
279		vdac_reg: regulator@8 {
280			regulator-always-on;
281		};
282
283		vaux1_reg: regulator@9 {
284			regulator-always-on;
285		};
286
287		vaux2_reg: regulator@10 {
288			regulator-always-on;
289		};
290
291		vaux33_reg: regulator@11 {
292			regulator-always-on;
293		};
294
295		vmmc_reg: regulator@12 {
296			regulator-always-on;
297		};
298	};
299};
300
301