GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / at91sam9261ek.dts
1 /*
2  * at91sam9261ek.dts - Device Tree file for Atmel at91sam9261 reference board
3  *
4  *  Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot@traphandler.com>
5  *
6  * Licensed under GPLv2 only.
7  */
8 /dts-v1/;
9 #include "at91sam9261.dtsi"
10
11 / {
12         model = "Atmel at91sam9261ek";
13         compatible = "atmel,at91sam9261ek", "atmel,at91sam9261", "atmel,at91sam9";
14
15         chosen {
16                 bootargs = "rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs rw";
17                 stdout-path = "serial0:115200n8";
18
19                 clocksource {
20                         timer = <&timer0>;
21                 };
22
23                 clockevent {
24                         timer = <&timer1>;
25                 };
26         };
27
28         memory {
29                 reg = <0x20000000 0x4000000>;
30         };
31
32         clocks {
33                 slow_xtal {
34                         clock-frequency = <32768>;
35                 };
36
37                 main_xtal {
38                         clock-frequency = <18432000>;
39                 };
40         };
41
42         ahb {
43                 usb0: ohci@500000 {
44                         status = "okay";
45                 };
46
47                 fb0: fb@600000 {
48                         display = <&display0>;
49                         atmel,power-control-gpio = <&pioA 12 GPIO_ACTIVE_LOW>;
50                         status = "okay";
51
52                         display0: display {
53                                 bits-per-pixel = <16>;
54                                 atmel,lcdcon-backlight;
55                                 atmel,dmacon = <0x1>;
56                                 atmel,lcdcon2 = <0x80008002>;
57                                 atmel,guard-time = <1>;
58                                 atmel,lcd-wiring-mode = "BRG";
59
60                                 display-timings {
61                                         native-mode = <&timing0>;
62                                         timing0: timing0 {
63                                                 clock-frequency = <4965000>;
64                                                 hactive = <240>;
65                                                 vactive = <320>;
66                                                 hback-porch = <1>;
67                                                 hfront-porch = <33>;
68                                                 vback-porch = <1>;
69                                                 vfront-porch = <0>;
70                                                 hsync-len = <5>;
71                                                 vsync-len = <1>;
72                                                 hsync-active = <1>;
73                                                 vsync-active = <1>;
74                                         };
75                                 };
76                         };
77                 };
78
79                 ebi: ebi@10000000 {
80                         status = "okay";
81
82                         nand_controller: nand-controller {
83                                 status = "okay";
84                                 pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
85                                 pinctrl-names = "default";
86
87                                 nand@3 {
88                                         reg = <0x3 0x0 0x800000>;
89                                         rb-gpios = <&pioC 15 GPIO_ACTIVE_HIGH>;
90                                         cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
91                                         nand-bus-width = <8>;
92                                         nand-ecc-mode = "soft";
93                                         nand-on-flash-bbt;
94                                         label = "atmel_nand";
95
96                                         partitions {
97                                                 compatible = "fixed-partitions";
98                                                 #address-cells = <1>;
99                                                 #size-cells = <1>;
100
101                                                 at91bootstrap@0 {
102                                                         label = "at91bootstrap";
103                                                         reg = <0x0 0x40000>;
104                                                 };
105
106                                                 bootloader@40000 {
107                                                         label = "bootloader";
108                                                         reg = <0x40000 0x80000>;
109                                                 };
110
111                                                 bootloaderenv@c0000 {
112                                                         label = "bootloader env";
113                                                         reg = <0xc0000 0xc0000>;
114                                                 };
115
116                                                 dtb@180000 {
117                                                         label = "device tree";
118                                                         reg = <0x180000 0x80000>;
119                                                 };
120
121                                                 kernel@200000 {
122                                                         label = "kernel";
123                                                         reg = <0x200000 0x600000>;
124                                                 };
125
126                                                 rootfs@800000 {
127                                                         label = "rootfs";
128                                                         reg = <0x800000 0x0f800000>;
129                                                 };
130                                         };
131                                 };
132                         };
133                 };
134
135                 apb {
136                         tcb0: timer@fffa0000 {
137                                 timer0: timer@0 {
138                                         compatible = "atmel,tcb-timer";
139                                         reg = <0>, <1>;
140                                 };
141
142                                 timer1: timer@2 {
143                                         compatible = "atmel,tcb-timer";
144                                         reg = <2>;
145                                 };
146                         };
147
148                         usb1: gadget@fffa4000 {
149                                 atmel,vbus-gpio = <&pioB 29 GPIO_ACTIVE_HIGH>;
150                                 status = "okay";
151                         };
152
153                         spi0: spi@fffc8000 {
154                                 cs-gpios = <&pioA 3 0>, <0>, <&pioA 28 0>, <0>;
155                                 status = "okay";
156
157                                 mtd_dataflash@0 {
158                                         compatible = "atmel,at45", "atmel,dataflash";
159                                         reg = <0>;
160                                         spi-max-frequency = <15000000>;
161                                 };
162
163                                 tsc2046@2 {
164                                         reg = <2>;
165                                         compatible = "ti,ads7843";
166                                         interrupts-extended = <&pioC 2 IRQ_TYPE_EDGE_BOTH>;
167                                         spi-max-frequency = <3000000>;
168                                         pendown-gpio = <&pioC 2 GPIO_ACTIVE_HIGH>;
169
170                                         ti,x-min = /bits/ 16 <150>;
171                                         ti,x-max = /bits/ 16 <3830>;
172                                         ti,y-min = /bits/ 16 <190>;
173                                         ti,y-max = /bits/ 16 <3830>;
174                                         ti,vref-delay-usecs = /bits/ 16 <450>;
175                                         ti,x-plate-ohms = /bits/ 16 <450>;
176                                         ti,y-plate-ohms = /bits/ 16 <250>;
177                                         ti,pressure-max = /bits/ 16 <15000>;
178                                         ti,debounce-rep = /bits/ 16 <0>;
179                                         ti,debounce-tol = /bits/ 16 <65535>;
180                                         ti,debounce-max = /bits/ 16 <1>;
181
182                                         wakeup-source;
183                                 };
184                         };
185
186                         dbgu: serial@fffff200 {
187                                 status = "okay";
188                         };
189
190                         watchdog@fffffd40 {
191                                 status = "okay";
192                         };
193
194                 };
195         };
196
197         leds {
198                 compatible = "gpio-leds";
199
200                 ds8 {
201                         label = "ds8";
202                         gpios = <&pioA 13 GPIO_ACTIVE_LOW>;
203                         linux,default-trigger = "none";
204                 };
205
206                 ds7 {
207                         label = "ds7";
208                         gpios = <&pioA 14 GPIO_ACTIVE_LOW>;
209                         linux,default-trigger = "nand-disk";
210                 };
211
212                 ds1 {
213                         label = "ds1";
214                         gpios = <&pioA 23 GPIO_ACTIVE_LOW>;
215                         linux,default-trigger = "heartbeat";
216                 };
217         };
218
219         gpio_keys {
220                 compatible = "gpio-keys";
221
222                 button_0 {
223                         label = "button_0";
224                         gpios = <&pioA 27 GPIO_ACTIVE_LOW>;
225                         linux,code = <256>;
226                         wakeup-source;
227                 };
228
229                 button_1 {
230                         label = "button_1";
231                         gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
232                         linux,code = <257>;
233                         wakeup-source;
234                 };
235
236                 button_2 {
237                         label = "button_2";
238                         gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
239                         linux,code = <258>;
240                         wakeup-source;
241                 };
242
243                 button_3 {
244                         label = "button_3";
245                         gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
246                         linux,code = <259>;
247                         wakeup-source;
248                 };
249         };
250 };