Linux-libre 5.4.48-gnu
[librecmc/linux-libre.git] / arch / arm / boot / dts / at91sam9263ek.dts
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * at91sam9263ek.dts - Device Tree file for Atmel at91sam9263 reference board
4  *
5  *  Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
6  */
7 /dts-v1/;
8 #include "at91sam9263.dtsi"
9
10 / {
11         model = "Atmel at91sam9263ek";
12         compatible = "atmel,at91sam9263ek", "atmel,at91sam9263", "atmel,at91sam9";
13
14         chosen {
15                 bootargs = "mem=64M root=/dev/mtdblock5 rw rootfstype=ubifs";
16                 stdout-path = "serial0:115200n8";
17         };
18
19         memory {
20                 reg = <0x20000000 0x4000000>;
21         };
22
23         clocks {
24                 slow_xtal {
25                         clock-frequency = <32768>;
26                 };
27
28                 main_xtal {
29                         clock-frequency = <16367660>;
30                 };
31         };
32
33         ahb {
34                 apb {
35                         dbgu: serial@ffffee00 {
36                                 status = "okay";
37                         };
38
39                         tcb0: timer@fff7c000 {
40                                 timer@0 {
41                                         compatible = "atmel,tcb-timer";
42                                         reg = <0>, <1>;
43                                 };
44
45                                 timer@2 {
46                                         compatible = "atmel,tcb-timer";
47                                         reg = <2>;
48                                 };
49                         };
50
51                         usart0: serial@fff8c000 {
52                                 pinctrl-0 = <
53                                         &pinctrl_usart0
54                                         &pinctrl_usart0_rts
55                                         &pinctrl_usart0_cts>;
56                                 status = "okay";
57                         };
58
59                         macb0: ethernet@fffbc000 {
60                                 phy-mode = "rmii";
61                                 status = "okay";
62                         };
63
64                         usb1: gadget@fff78000 {
65                                 atmel,vbus-gpio = <&pioA 25 GPIO_ACTIVE_HIGH>;
66                                 status = "okay";
67                         };
68
69                         mmc0: mmc@fff80000 {
70                                 pinctrl-0 = <
71                                         &pinctrl_board_mmc0
72                                         &pinctrl_mmc0_clk
73                                         &pinctrl_mmc0_slot0_cmd_dat0
74                                         &pinctrl_mmc0_slot0_dat1_3>;
75                                 status = "okay";
76                                 slot@0 {
77                                         reg = <0>;
78                                         bus-width = <4>;
79                                         cd-gpios = <&pioE 18 GPIO_ACTIVE_HIGH>;
80                                         wp-gpios = <&pioE 19 GPIO_ACTIVE_HIGH>;
81                                 };
82                         };
83
84                         pinctrl@fffff200 {
85                                 mmc0 {
86                                         pinctrl_board_mmc0: mmc0-board {
87                                                 atmel,pins =
88                                                         <AT91_PIOE 18 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH    /* PE18 gpio CD pin pull up and deglitch */
89                                                          AT91_PIOE 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;   /* PE19 gpio WP pin pull up */
90                                         };
91                                 };
92                         };
93
94                         spi0: spi@fffa4000 {
95                                 status = "okay";
96                                 cs-gpios = <&pioA 5 0>, <0>, <0>, <0>;
97                                 mtd_dataflash@0 {
98                                         compatible = "atmel,at45", "atmel,dataflash";
99                                         spi-max-frequency = <50000000>;
100                                         reg = <0>;
101                                 };
102                         };
103
104                         watchdog@fffffd40 {
105                                 status = "okay";
106                         };
107                 };
108
109                 fb0: fb@700000 {
110                         display = <&display0>;
111                         status = "okay";
112
113                         display0: panel {
114                                 bits-per-pixel = <16>;
115                                 atmel,lcdcon-backlight;
116                                 atmel,dmacon = <0x1>;
117                                 atmel,lcdcon2 = <0x80008002>;
118                                 atmel,guard-time = <1>;
119
120                                 display-timings {
121                                         native-mode = <&timing0>;
122                                         timing0: timing0 {
123                                                 clock-frequency = <4965000>;
124                                                 hactive = <240>;
125                                                 vactive = <320>;
126                                                 hback-porch = <1>;
127                                                 hfront-porch = <33>;
128                                                 vback-porch = <1>;
129                                                 vfront-porch = <0>;
130                                                 hsync-len = <5>;
131                                                 vsync-len = <1>;
132                                                 hsync-active = <1>;
133                                                 vsync-active = <1>;
134                                         };
135                                 };
136                         };
137                 };
138
139                 ebi0: ebi@10000000 {
140                         status = "okay";
141
142                         nand_controller: nand-controller {
143                                 status = "okay";
144                                 pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
145                                 pinctrl-names = "default";
146
147                                 nand@3 {
148                                         reg = <0x3 0x0 0x800000>;
149                                         rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>;
150                                         cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
151                                         nand-bus-width = <8>;
152                                         nand-ecc-mode = "soft";
153                                         nand-on-flash-bbt;
154                                         label = "atmel_nand";
155
156                                         partitions {
157                                                 compatible = "fixed-partitions";
158                                                 #address-cells = <1>;
159                                                 #size-cells = <1>;
160
161                                                 at91bootstrap@0 {
162                                                         label = "at91bootstrap";
163                                                         reg = <0x0 0x20000>;
164                                                 };
165
166                                                 barebox@20000 {
167                                                         label = "barebox";
168                                                         reg = <0x20000 0x40000>;
169                                                 };
170
171                                                 bareboxenv@60000 {
172                                                         label = "bareboxenv";
173                                                         reg = <0x60000 0x20000>;
174                                                 };
175
176                                                 bareboxenv2@80000 {
177                                                         label = "bareboxenv2";
178                                                         reg = <0x80000 0x20000>;
179                                                 };
180
181                                                 oftree@80000 {
182                                                         label = "oftree";
183                                                         reg = <0xa0000 0x20000>;
184                                                 };
185
186                                                 kernel@a0000 {
187                                                         label = "kernel";
188                                                         reg = <0xc0000 0x400000>;
189                                                 };
190
191                                                 rootfs@4a0000 {
192                                                         label = "rootfs";
193                                                         reg = <0x4c0000 0x7800000>;
194                                                 };
195
196                                                 data@7ca0000 {
197                                                         label = "data";
198                                                         reg = <0x7cc0000 0x8340000>;
199                                                 };
200                                         };
201                                 };
202                         };
203                 };
204
205                 usb0: ohci@a00000 {
206                         num-ports = <2>;
207                         status = "okay";
208                         atmel,vbus-gpio = <&pioA 24 GPIO_ACTIVE_HIGH
209                                            &pioA 21 GPIO_ACTIVE_HIGH
210                                           >;
211                 };
212         };
213
214         leds {
215                 compatible = "gpio-leds";
216
217                 d3 {
218                         label = "d3";
219                         gpios = <&pioB 7 GPIO_ACTIVE_HIGH>;
220                         linux,default-trigger = "heartbeat";
221                 };
222
223                 d2 {
224                         label = "d2";
225                         gpios = <&pioC 29 GPIO_ACTIVE_LOW>;
226                         linux,default-trigger = "nand-disk";
227                 };
228         };
229
230         gpio_keys {
231                 compatible = "gpio-keys";
232
233                 left_click {
234                         label = "left_click";
235                         gpios = <&pioC 5 GPIO_ACTIVE_LOW>;
236                         linux,code = <272>;
237                         wakeup-source;
238                 };
239
240                 right_click {
241                         label = "right_click";
242                         gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
243                         linux,code = <273>;
244                         wakeup-source;
245                 };
246         };
247
248         i2c-gpio-0 {
249                 status = "okay";
250
251                 24c512@50 {
252                         compatible = "atmel,24c512";
253                         reg = <0x50>;
254                         pagesize = <128>;
255                 };
256         };
257 };