• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board
3 *
4 *  Copyright (C) 2014 Atmel,
5 *		  2014 Nicolas Ferre <nicolas.ferre@atmel.com>
6 *
7 * Licensed under GPLv2 or later.
8 */
9/dts-v1/;
10#include "sama5d36.dtsi"
11
12/ {
13	model = "SAMA5D3 Xplained";
14	compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5";
15
16	chosen {
17		stdout-path = "serial0:115200n8";
18	};
19
20	memory {
21		reg = <0x20000000 0x10000000>;
22	};
23
24	clocks {
25		slow_xtal {
26			clock-frequency = <32768>;
27		};
28
29		main_xtal {
30			clock-frequency = <12000000>;
31		};
32	};
33
34	ahb {
35		apb {
36			mmc0: mmc@f0000000 {
37				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
38				vmmc-supply = <&vcc_mmc0_reg>;
39				vqmmc-supply = <&vcc_3v3_reg>;
40				status = "okay";
41				slot@0 {
42					reg = <0>;
43					bus-width = <8>;
44					cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
45				};
46			};
47
48			mmc1: mmc@f8000000 {
49				vmmc-supply = <&vcc_3v3_reg>;
50				vqmmc-supply = <&vcc_3v3_reg>;
51				status = "disabled";
52				slot@0 {
53					reg = <0>;
54					bus-width = <4>;
55					cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>;
56				};
57			};
58
59			spi0: spi@f0004000 {
60				cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>;
61				status = "okay";
62			};
63
64			can0: can@f000c000 {
65				status = "okay";
66			};
67
68			i2c0: i2c@f0014000 {
69				pinctrl-0 = <&pinctrl_i2c0_pu>;
70				status = "okay";
71			};
72
73			i2c1: i2c@f0018000 {
74				status = "okay";
75
76				pmic: act8865@5b {
77					compatible = "active-semi,act8865";
78					reg = <0x5b>;
79					status = "disabled";
80
81					regulators {
82						vcc_1v8_reg: DCDC_REG1 {
83							regulator-name = "VCC_1V8";
84							regulator-min-microvolt = <1800000>;
85							regulator-max-microvolt = <1800000>;
86							regulator-always-on;
87						};
88
89						vcc_1v2_reg: DCDC_REG2 {
90							regulator-name = "VCC_1V2";
91							regulator-min-microvolt = <1200000>;
92							regulator-max-microvolt = <1200000>;
93							regulator-always-on;
94						};
95
96						vcc_3v3_reg: DCDC_REG3 {
97							regulator-name = "VCC_3V3";
98							regulator-min-microvolt = <3300000>;
99							regulator-max-microvolt = <3300000>;
100							regulator-always-on;
101						};
102
103						vddfuse_reg: LDO_REG1 {
104							regulator-name = "FUSE_2V5";
105							regulator-min-microvolt = <2500000>;
106							regulator-max-microvolt = <2500000>;
107						};
108
109						vddana_reg: LDO_REG2 {
110							regulator-name = "VDDANA";
111							regulator-min-microvolt = <3300000>;
112							regulator-max-microvolt = <3300000>;
113							regulator-always-on;
114						};
115					};
116				};
117			};
118
119			macb0: ethernet@f0028000 {
120				phy-mode = "rgmii";
121				#address-cells = <1>;
122				#size-cells = <0>;
123				status = "okay";
124
125				ethernet-phy@7 {
126					reg = <0x7>;
127				};
128			};
129
130			pwm0: pwm@f002c000 {
131				pinctrl-names = "default";
132				pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>;
133				status = "okay";
134			};
135
136			usart0: serial@f001c000 {
137				status = "okay";
138			};
139
140			usart1: serial@f0020000 {
141				pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
142				status = "okay";
143			};
144
145			uart0: serial@f0024000 {
146				status = "okay";
147			};
148
149			mmc1: mmc@f8000000 {
150				pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
151				status = "okay";
152				slot@0 {
153					reg = <0>;
154					bus-width = <4>;
155					cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>;
156				};
157			};
158
159			spi1: spi@f8008000 {
160				cs-gpios = <&pioC 25 0>;
161				status = "okay";
162			};
163
164			adc0: adc@f8018000 {
165				atmel,adc-vref = <3300>;
166				atmel,adc-channels-used = <0xfe>;
167				pinctrl-0 = <
168					&pinctrl_adc0_adtrg
169					&pinctrl_adc0_ad1
170					&pinctrl_adc0_ad2
171					&pinctrl_adc0_ad3
172					&pinctrl_adc0_ad4
173					&pinctrl_adc0_ad5
174					&pinctrl_adc0_ad6
175					&pinctrl_adc0_ad7
176					>;
177				status = "okay";
178			};
179
180			i2c2: i2c@f801c000 {
181				dmas = <0>, <0>;	/* Do not use DMA for i2c2 */
182				pinctrl-0 = <&pinctrl_i2c2_pu>;
183				status = "okay";
184			};
185
186			macb1: ethernet@f802c000 {
187				phy-mode = "rmii";
188				#address-cells = <1>;
189				#size-cells = <0>;
190				status = "okay";
191
192				ethernet-phy@1 {
193					reg = <0x1>;
194				};
195			};
196
197			dbgu: serial@ffffee00 {
198				status = "okay";
199			};
200
201			pinctrl@fffff200 {
202				board {
203					pinctrl_i2c0_pu: i2c0_pu {
204						atmel,pins =
205							<AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
206							<AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
207					};
208
209					pinctrl_i2c2_pu: i2c2_pu {
210						atmel,pins =
211							<AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
212							<AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
213					};
214
215					pinctrl_key_gpio: key_gpio_0 {
216						atmel,pins =
217							<AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
218					};
219
220					pinctrl_mmc0_cd: mmc0_cd {
221						atmel,pins =
222							<AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
223					};
224
225					pinctrl_mmc1_cd: mmc1_cd {
226						atmel,pins =
227							<AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
228					};
229
230					pinctrl_usba_vbus: usba_vbus {
231						atmel,pins =
232							<AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;	/* PE9, conflicts with A9 */
233					};
234					pinctrl_usb_default: usb_default {
235						atmel,pins =
236							<AT91_PIOE 3 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
237							 AT91_PIOE 4 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
238					};
239				};
240			};
241		};
242
243		nand0: nand@60000000 {
244			nand-bus-width = <8>;
245			nand-ecc-mode = "hw";
246			atmel,has-pmecc;
247			atmel,pmecc-cap = <4>;
248			atmel,pmecc-sector-size = <512>;
249			nand-on-flash-bbt;
250			status = "okay";
251
252			at91bootstrap@0 {
253				label = "at91bootstrap";
254				reg = <0x0 0x40000>;
255			};
256
257			bootloader@40000 {
258				label = "bootloader";
259				reg = <0x40000 0x80000>;
260			};
261
262			bootloaderenv@c0000 {
263				label = "bootloader env";
264				reg = <0xc0000 0xc0000>;
265			};
266
267			dtb@180000 {
268				label = "device tree";
269				reg = <0x180000 0x80000>;
270			};
271
272			kernel@200000 {
273				label = "kernel";
274				reg = <0x200000 0x600000>;
275			};
276
277			rootfs@800000 {
278				label = "rootfs";
279				reg = <0x800000 0x0f800000>;
280			};
281		};
282
283		usb0: gadget@00500000 {
284			atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>;	/* PE9, conflicts with A9 */
285			pinctrl-names = "default";
286			pinctrl-0 = <&pinctrl_usba_vbus>;
287			status = "okay";
288		};
289
290		usb1: ohci@00600000 {
291			num-ports = <3>;
292			atmel,vbus-gpio = <0
293					   &pioE 3 GPIO_ACTIVE_LOW
294					   &pioE 4 GPIO_ACTIVE_LOW
295					  >;
296			pinctrl-names = "default";
297			pinctrl-0 = <&pinctrl_usb_default>;
298			status = "okay";
299		};
300
301		usb2: ehci@00700000 {
302			status = "okay";
303		};
304	};
305
306	vcc_mmc0_reg: fixedregulator@0 {
307		compatible = "regulator-fixed";
308		gpio = <&pioE 2 GPIO_ACTIVE_LOW>;
309		regulator-name = "mmc0-card-supply";
310		regulator-min-microvolt = <3300000>;
311		regulator-max-microvolt = <3300000>;
312		regulator-always-on;
313	};
314
315	gpio_keys {
316		compatible = "gpio-keys";
317
318		pinctrl-names = "default";
319		pinctrl-0 = <&pinctrl_key_gpio>;
320
321		bp3 {
322			label = "PB_USER";
323			gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
324			linux,code = <0x104>;
325			wakeup-source;
326		};
327	};
328
329	leds {
330		compatible = "gpio-leds";
331
332		d2 {
333			label = "d2";
334			gpios = <&pioE 23 GPIO_ACTIVE_LOW>;	/* PE23, conflicts with A23, CTS2 */
335			linux,default-trigger = "heartbeat";
336		};
337
338		d3 {
339			label = "d3";
340			gpios = <&pioE 24 GPIO_ACTIVE_HIGH>;
341		};
342	};
343};
344