Loading...
1/*
2 * at91sam9rlek.dts - Device Tree file for Atmel at91sam9rl reference board
3 *
4 * Copyright (C) 2014 Microchip
5 * Alexandre Belloni <alexandre.belloni@free-electrons.com>
6 *
7 * Licensed under GPLv2 only
8 */
9/dts-v1/;
10#include "at91sam9rl.dtsi"
11
12/ {
13 model = "Atmel at91sam9rlek";
14 compatible = "atmel,at91sam9rlek", "atmel,at91sam9rl", "atmel,at91sam9";
15
16 chosen {
17 bootargs = "rootfstype=ubifs root=ubi0:rootfs ubi.mtd=5 rw";
18 stdout-path = "serial0:115200n8";
19 };
20
21 memory {
22 reg = <0x20000000 0x4000000>;
23 };
24
25 clocks {
26 slow_xtal {
27 clock-frequency = <32768>;
28 };
29
30 main_xtal {
31 clock-frequency = <12000000>;
32 };
33 };
34
35 ahb {
36 fb0: fb@500000 {
37 display = <&display0>;
38 status = "okay";
39
40 display0: display {
41 bits-per-pixel = <16>;
42 atmel,lcdcon-backlight;
43 atmel,dmacon = <0x1>;
44 atmel,lcdcon2 = <0x80008002>;
45 atmel,guard-time = <1>;
46 atmel,lcd-wiring-mode = "RGB";
47
48 display-timings {
49 native-mode = <&timing0>;
50 timing0: timing0 {
51 clock-frequency = <4965000>;
52 hactive = <240>;
53 vactive = <320>;
54 hback-porch = <1>;
55 hfront-porch = <33>;
56 vback-porch = <1>;
57 vfront-porch = <0>;
58 hsync-len = <5>;
59 vsync-len = <1>;
60 hsync-active = <1>;
61 vsync-active = <1>;
62 };
63 };
64 };
65 };
66
67 ebi: ebi@10000000 {
68 pinctrl-0 = <&pinctrl_ebi_addr_nand>;
69 pinctrl-names = "default";
70 status = "okay";
71
72 nand_controller: nand-controller {
73 status = "okay";
74 pinctrl-0 = <&pinctrl_nand_oe_we
75 &pinctrl_nand_cs
76 &pinctrl_nand_rb>;
77 pinctrl-names = "default";
78
79 nand@3 {
80 reg = <0x3 0x0 0x800000>;
81 rb-gpios = <&pioD 17 GPIO_ACTIVE_HIGH>;
82 cs-gpios = <&pioB 6 GPIO_ACTIVE_HIGH>;
83 nand-bus-width = <8>;
84 nand-ecc-mode = "soft";
85 nand-on-flash-bbt;
86 label = "atmel_nand";
87
88 partitions {
89 compatible = "fixed-partitions";
90 #address-cells = <1>;
91 #size-cells = <1>;
92
93 at91bootstrap@0 {
94 label = "at91bootstrap";
95 reg = <0x0 0x40000>;
96 };
97
98 bootloader@40000 {
99 label = "bootloader";
100 reg = <0x40000 0x80000>;
101 };
102
103 bootloaderenv@c0000 {
104 label = "bootloader env";
105 reg = <0xc0000 0xc0000>;
106 };
107
108 dtb@180000 {
109 label = "device tree";
110 reg = <0x180000 0x80000>;
111 };
112
113 kernel@200000 {
114 label = "kernel";
115 reg = <0x200000 0x600000>;
116 };
117
118 rootfs@800000 {
119 label = "rootfs";
120 reg = <0x800000 0x0f800000>;
121 };
122 };
123 };
124 };
125 };
126
127 apb {
128 tcb0: timer@fffa0000 {
129 timer@0 {
130 compatible = "atmel,tcb-timer";
131 reg = <0>, <1>;
132 };
133
134 timer@2 {
135 compatible = "atmel,tcb-timer";
136 reg = <2>;
137 };
138 };
139
140 mmc0: mmc@fffa4000 {
141 pinctrl-0 = <
142 &pinctrl_board_mmc0
143 &pinctrl_mmc0_clk
144 &pinctrl_mmc0_slot0_cmd_dat0
145 &pinctrl_mmc0_slot0_dat1_3>;
146 status = "okay";
147 slot@0 {
148 reg = <0>;
149 bus-width = <4>;
150 cd-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
151 };
152 };
153
154 usart0: serial@fffb0000 {
155 pinctrl-0 = <
156 &pinctrl_usart0
157 &pinctrl_usart0_rts
158 &pinctrl_usart0_cts>;
159 status = "okay";
160 };
161
162 adc0: adc@fffd0000 {
163 pinctrl-names = "default";
164 pinctrl-0 = <
165 &pinctrl_adc0_ad0
166 &pinctrl_adc0_ad1
167 &pinctrl_adc0_ad2
168 &pinctrl_adc0_ad3
169 &pinctrl_adc0_ad4
170 &pinctrl_adc0_ad5
171 &pinctrl_adc0_adtrg>;
172 atmel,adc-ts-wires = <4>;
173 status = "okay";
174 };
175
176 usb0: gadget@fffd4000 {
177 atmel,vbus-gpio = <&pioA 8 GPIO_ACTIVE_HIGH>;
178 status = "okay";
179 };
180
181 spi0: spi@fffcc000 {
182 status = "okay";
183 cs-gpios = <&pioA 28 0>, <0>, <0>, <0>;
184 mtd_dataflash@0 {
185 compatible = "atmel,at45", "atmel,dataflash";
186 spi-max-frequency = <15000000>;
187 reg = <0>;
188 };
189 };
190
191 pwm0: pwm@fffc8000 {
192 status = "okay";
193
194 pinctrl-names = "default";
195 pinctrl-0 = <&pinctrl_pwm0_pwm1_2>,
196 <&pinctrl_pwm0_pwm2_2>;
197 };
198
199 dbgu: serial@fffff200 {
200 status = "okay";
201 };
202
203 pinctrl@fffff400 {
204 mmc0 {
205 pinctrl_board_mmc0: mmc0-board {
206 atmel,pins =
207 <AT91_PIOA 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
208 };
209 };
210 };
211
212 watchdog@fffffd40 {
213 status = "okay";
214 };
215
216 rtc@fffffe00 {
217 status = "okay";
218 };
219 };
220 };
221
222 pwmleds {
223 compatible = "pwm-leds";
224
225 ds1 {
226 label = "ds1";
227 pwms = <&pwm0 1 5000 PWM_POLARITY_INVERTED>;
228 max-brightness = <255>;
229 };
230
231 ds2 {
232 label = "ds2";
233 pwms = <&pwm0 2 5000 PWM_POLARITY_INVERTED>;
234 max-brightness = <255>;
235 };
236 };
237
238 leds {
239 compatible = "gpio-leds";
240
241 ds3 {
242 label = "ds3";
243 gpios = <&pioD 14 GPIO_ACTIVE_HIGH>;
244 linux,default-trigger = "heartbeat";
245 };
246 };
247
248 gpio_keys {
249 compatible = "gpio-keys";
250
251 right_click {
252 label = "right_click";
253 gpios = <&pioB 0 GPIO_ACTIVE_LOW>;
254 linux,code = <273>;
255 wakeup-source;
256 };
257
258 left_click {
259 label = "left_click";
260 gpios = <&pioB 1 GPIO_ACTIVE_LOW>;
261 linux,code = <272>;
262 wakeup-source;
263 };
264 };
265
266 i2c-gpio-0 {
267 status = "okay";
268 };
269
270 i2c-gpio-1 {
271 status = "okay";
272 };
273};
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * at91sam9rlek.dts - Device Tree file for Atmel at91sam9rl reference board
4 *
5 * Copyright (C) 2014 Microchip
6 * Alexandre Belloni <alexandre.belloni@free-electrons.com>
7 */
8/dts-v1/;
9#include "at91sam9rl.dtsi"
10
11/ {
12 model = "Atmel at91sam9rlek";
13 compatible = "atmel,at91sam9rlek", "atmel,at91sam9rl", "atmel,at91sam9";
14
15 chosen {
16 bootargs = "rootfstype=ubifs root=ubi0:rootfs ubi.mtd=5 rw";
17 stdout-path = "serial0:115200n8";
18 };
19
20 memory {
21 reg = <0x20000000 0x4000000>;
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 fb0: fb@500000 {
36 display = <&display0>;
37 status = "okay";
38
39 display0: panel {
40 bits-per-pixel = <16>;
41 atmel,lcdcon-backlight;
42 atmel,dmacon = <0x1>;
43 atmel,lcdcon2 = <0x80008002>;
44 atmel,guard-time = <1>;
45 atmel,lcd-wiring-mode = "RGB";
46
47 display-timings {
48 native-mode = <&timing0>;
49 timing0: timing0 {
50 clock-frequency = <4965000>;
51 hactive = <240>;
52 vactive = <320>;
53 hback-porch = <1>;
54 hfront-porch = <33>;
55 vback-porch = <1>;
56 vfront-porch = <0>;
57 hsync-len = <5>;
58 vsync-len = <1>;
59 hsync-active = <1>;
60 vsync-active = <1>;
61 };
62 };
63 };
64 };
65
66 ebi: ebi@10000000 {
67 pinctrl-0 = <&pinctrl_ebi_addr_nand>;
68 pinctrl-names = "default";
69 status = "okay";
70
71 nand_controller: nand-controller {
72 status = "okay";
73 pinctrl-0 = <&pinctrl_nand_oe_we
74 &pinctrl_nand_cs
75 &pinctrl_nand_rb>;
76 pinctrl-names = "default";
77
78 nand@3 {
79 reg = <0x3 0x0 0x800000>;
80 rb-gpios = <&pioD 17 GPIO_ACTIVE_HIGH>;
81 cs-gpios = <&pioB 6 GPIO_ACTIVE_HIGH>;
82 nand-bus-width = <8>;
83 nand-ecc-mode = "soft";
84 nand-on-flash-bbt;
85 label = "atmel_nand";
86
87 partitions {
88 compatible = "fixed-partitions";
89 #address-cells = <1>;
90 #size-cells = <1>;
91
92 at91bootstrap@0 {
93 label = "at91bootstrap";
94 reg = <0x0 0x40000>;
95 };
96
97 bootloader@40000 {
98 label = "bootloader";
99 reg = <0x40000 0x80000>;
100 };
101
102 bootloaderenv@c0000 {
103 label = "bootloader env";
104 reg = <0xc0000 0xc0000>;
105 };
106
107 dtb@180000 {
108 label = "device tree";
109 reg = <0x180000 0x80000>;
110 };
111
112 kernel@200000 {
113 label = "kernel";
114 reg = <0x200000 0x600000>;
115 };
116
117 rootfs@800000 {
118 label = "rootfs";
119 reg = <0x800000 0x0f800000>;
120 };
121 };
122 };
123 };
124 };
125
126 apb {
127 tcb0: timer@fffa0000 {
128 timer@0 {
129 compatible = "atmel,tcb-timer";
130 reg = <0>, <1>;
131 };
132
133 timer@2 {
134 compatible = "atmel,tcb-timer";
135 reg = <2>;
136 };
137 };
138
139 mmc0: mmc@fffa4000 {
140 pinctrl-0 = <
141 &pinctrl_board_mmc0
142 &pinctrl_mmc0_clk
143 &pinctrl_mmc0_slot0_cmd_dat0
144 &pinctrl_mmc0_slot0_dat1_3>;
145 status = "okay";
146 slot@0 {
147 reg = <0>;
148 bus-width = <4>;
149 cd-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
150 };
151 };
152
153 usart0: serial@fffb0000 {
154 pinctrl-0 = <
155 &pinctrl_usart0
156 &pinctrl_usart0_rts
157 &pinctrl_usart0_cts>;
158 status = "okay";
159 };
160
161 adc0: adc@fffd0000 {
162 pinctrl-names = "default";
163 pinctrl-0 = <
164 &pinctrl_adc0_ad0
165 &pinctrl_adc0_ad1
166 &pinctrl_adc0_ad2
167 &pinctrl_adc0_ad3
168 &pinctrl_adc0_ad4
169 &pinctrl_adc0_ad5
170 &pinctrl_adc0_adtrg>;
171 atmel,adc-ts-wires = <4>;
172 status = "okay";
173 };
174
175 usb0: gadget@fffd4000 {
176 atmel,vbus-gpio = <&pioA 8 GPIO_ACTIVE_HIGH>;
177 status = "okay";
178 };
179
180 spi0: spi@fffcc000 {
181 status = "okay";
182 cs-gpios = <&pioA 28 0>, <0>, <0>, <0>;
183 mtd_dataflash@0 {
184 compatible = "atmel,at45", "atmel,dataflash";
185 spi-max-frequency = <15000000>;
186 reg = <0>;
187 };
188 };
189
190 pwm0: pwm@fffc8000 {
191 status = "okay";
192
193 pinctrl-names = "default";
194 pinctrl-0 = <&pinctrl_pwm0_pwm1_2>,
195 <&pinctrl_pwm0_pwm2_2>;
196 };
197
198 dbgu: serial@fffff200 {
199 status = "okay";
200 };
201
202 pinctrl@fffff400 {
203 mmc0 {
204 pinctrl_board_mmc0: mmc0-board {
205 atmel,pins =
206 <AT91_PIOA 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
207 };
208 };
209 };
210
211 watchdog@fffffd40 {
212 status = "okay";
213 };
214
215 rtc@fffffe00 {
216 status = "okay";
217 };
218 };
219 };
220
221 pwmleds {
222 compatible = "pwm-leds";
223
224 ds1 {
225 label = "ds1";
226 pwms = <&pwm0 1 5000 PWM_POLARITY_INVERTED>;
227 max-brightness = <255>;
228 };
229
230 ds2 {
231 label = "ds2";
232 pwms = <&pwm0 2 5000 PWM_POLARITY_INVERTED>;
233 max-brightness = <255>;
234 };
235 };
236
237 leds {
238 compatible = "gpio-leds";
239
240 ds3 {
241 label = "ds3";
242 gpios = <&pioD 14 GPIO_ACTIVE_HIGH>;
243 linux,default-trigger = "heartbeat";
244 };
245 };
246
247 gpio_keys {
248 compatible = "gpio-keys";
249
250 right_click {
251 label = "right_click";
252 gpios = <&pioB 0 GPIO_ACTIVE_LOW>;
253 linux,code = <273>;
254 wakeup-source;
255 };
256
257 left_click {
258 label = "left_click";
259 gpios = <&pioB 1 GPIO_ACTIVE_LOW>;
260 linux,code = <272>;
261 wakeup-source;
262 };
263 };
264
265 i2c-gpio-0 {
266 status = "okay";
267 };
268
269 i2c-gpio-1 {
270 status = "okay";
271 };
272};