1/*
2 * animeo_ip.dts - Device Tree file for Somfy Animeo IP Boards
3 *
4 *  Copyright (C) 2011-2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
5 *
6 * Licensed under GPLv2 only.
7 */
8
9/dts-v1/;
10#include "at91sam9260.dtsi"
11
12/ {
13	model = "Somfy Animeo IP";
14	compatible = "somfy,animeo-ip", "atmel,at91sam9260", "atmel,at91sam9";
15
16	aliases {
17		serial0 = &usart1;
18		serial1 = &usart2;
19		serial2 = &usart0;
20		serial3 = &dbgu;
21		serial4 = &usart3;
22		serial5 = &uart0;
23		serial6 = &uart1;
24	};
25
26	chosen {
27		stdout-path = &usart2;
28	};
29
30	memory {
31		reg = <0x20000000 0x4000000>;
32	};
33
34	clocks {
35		slow_xtal {
36			clock-frequency = <32768>;
37		};
38
39		main_xtal {
40			clock-frequency = <18432000>;
41		};
42	};
43
44	ahb {
45		apb {
46			tcb0: timer@fffa0000 {
47				timer@0 {
48					compatible = "atmel,tcb-timer";
49					reg = <0>, <1>;
50				};
51
52				timer@2 {
53					compatible = "atmel,tcb-timer";
54					reg = <2>;
55				};
56			};
57
58			usart0: serial@fffb0000 {
59				pinctrl-0 = <&pinctrl_usart0 &pinctrl_usart0_rts>;
60				linux,rs485-enabled-at-boot-time;
61				status = "okay";
62			};
63
64			usart1: serial@fffb4000 {
65				pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts>;
66				linux,rs485-enabled-at-boot-time;
67				status = "okay";
68			};
69
70			usart2: serial@fffb8000 {
71				pinctrl-0 = <&pinctrl_usart2>;
72				status = "okay";
73			};
74
75			macb0: ethernet@fffc4000 {
76				pinctrl-0 = <&pinctrl_macb_rmii &pinctrl_macb_rmii_mii>;
77				phy-mode = "mii";
78				status = "okay";
79			};
80
81			mmc0: mmc@fffa8000 {
82				pinctrl-0 = <&pinctrl_mmc0_clk
83					     &pinctrl_mmc0_slot1_cmd_dat0
84					     &pinctrl_mmc0_slot1_dat1_3>;
85				status = "okay";
86
87				slot@1 {
88					reg = <1>;
89					bus-width = <4>;
90				};
91			};
92
93			watchdog@fffffd40 {
94				status = "okay";
95			};
96		};
97
98		ebi: ebi@10000000 {
99			status = "okay";
100
101			nand_controller: nand-controller {
102				status = "okay";
103				pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
104				pinctrl-names = "default";
105
106				nand@3 {
107					reg = <0x3 0x0 0x800000>;
108					rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
109					cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
110					nand-bus-width = <8>;
111					nand-ecc-mode = "soft";
112					nand-on-flash-bbt;
113					label = "atmel_nand";
114
115					partitions {
116						compatible = "fixed-partitions";
117						#address-cells = <1>;
118						#size-cells = <1>;
119
120						barebox@0 {
121							label = "barebox";
122							reg = <0x0 0x58000>;
123						};
124
125						u_boot_env@58000 {
126							label = "u_boot_env";
127							reg = <0x58000 0x8000>;
128						};
129
130						ubi@60000 {
131							label = "ubi";
132							reg = <0x60000 0x1FA0000>;
133						};
134					};
135				};
136			};
137		};
138
139		usb0: ohci@500000 {
140			num-ports = <2>;
141			atmel,vbus-gpio = <&pioB 15 GPIO_ACTIVE_LOW>;
142			status = "okay";
143		};
144	};
145
146	leds {
147		compatible = "gpio-leds";
148
149		power_green {
150			label = "power_green";
151			gpios = <&pioC 17 GPIO_ACTIVE_HIGH>;
152			linux,default-trigger = "heartbeat";
153		};
154
155		power_red {
156			label = "power_red";
157			gpios = <&pioA 2 GPIO_ACTIVE_HIGH>;
158		};
159
160		tx_green {
161			label = "tx_green";
162			gpios = <&pioC 19 GPIO_ACTIVE_HIGH>;
163		};
164
165		tx_red {
166			label = "tx_red";
167			gpios = <&pioC 18 GPIO_ACTIVE_HIGH>;
168		};
169	};
170
171	gpio_keys {
172		compatible = "gpio-keys";
173		#address-cells = <1>;
174		#size-cells = <0>;
175
176		keyswitch_in {
177			label = "keyswitch_in";
178			gpios = <&pioB 1 GPIO_ACTIVE_HIGH>;
179			linux,code = <28>;
180			wakeup-source;
181		};
182
183		error_in {
184			label = "error_in";
185			gpios = <&pioB 2 GPIO_ACTIVE_HIGH>;
186			linux,code = <29>;
187			wakeup-source;
188		};
189
190		btn {
191			label = "btn";
192			gpios = <&pioC 23 GPIO_ACTIVE_HIGH>;
193			linux,code = <31>;
194			wakeup-source;
195		};
196	};
197};
198