Commit | Line | Data |
---|---|---|
cce783c6 HX |
1 | /* |
2 | * at91sam9n12ek.dts - Device Tree file for AT91SAM9N12-EK board | |
3 | * | |
4 | * Copyright (C) 2012 Atmel, | |
5 | * 2012 Hong Xu <hong.xu@atmel.com> | |
6 | * | |
7 | * Licensed under GPLv2 or later. | |
8 | */ | |
9 | /dts-v1/; | |
6db64d29 | 10 | #include "at91sam9n12.dtsi" |
cce783c6 HX |
11 | |
12 | / { | |
13 | model = "Atmel AT91SAM9N12-EK"; | |
14 | compatible = "atmel,at91sam9n12ek", "atmel,at91sam9n12", "atmel,at91sam9"; | |
15 | ||
16 | chosen { | |
7cb5852d AB |
17 | bootargs = "root=/dev/mtdblock1 rw rootfstype=jffs2"; |
18 | stdout-path = "serial0:115200n8"; | |
cce783c6 HX |
19 | }; |
20 | ||
21 | memory { | |
a57603ca | 22 | reg = <0x20000000 0x8000000>; |
cce783c6 HX |
23 | }; |
24 | ||
25 | clocks { | |
26 | #address-cells = <1>; | |
27 | #size-cells = <1>; | |
28 | ranges; | |
29 | ||
30 | main_clock: clock@0 { | |
31 | compatible = "atmel,osc", "fixed-clock"; | |
32 | clock-frequency = <16000000>; | |
33 | }; | |
6503ab5f AB |
34 | |
35 | slow_xtal { | |
36 | clock-frequency = <32768>; | |
37 | }; | |
38 | ||
39 | main_xtal { | |
40 | clock-frequency = <16000000>; | |
41 | }; | |
cce783c6 HX |
42 | }; |
43 | ||
44 | ahb { | |
45 | apb { | |
46 | dbgu: serial@fffff200 { | |
47 | status = "okay"; | |
48 | }; | |
fbc18715 | 49 | |
47609066 BS |
50 | ssc0: ssc@f0010000 { |
51 | status = "okay"; | |
52 | }; | |
53 | ||
fbc18715 LD |
54 | i2c0: i2c@f8010000 { |
55 | status = "okay"; | |
82914f8d | 56 | |
e6f79916 | 57 | wm8904: codec@1a { |
4bd37794 | 58 | compatible = "wlf,wm8904"; |
e6f79916 | 59 | reg = <0x1a>; |
38324358 BS |
60 | clocks = <&pck0>; |
61 | clock-names = "mclk"; | |
e6f79916 BS |
62 | }; |
63 | ||
82914f8d | 64 | qt1070: keyboard@1b { |
65 | compatible = "qt1070"; | |
66 | reg = <0x1b>; | |
67 | interrupt-parent = <&pioA>; | |
68 | interrupts = <2 IRQ_TYPE_EDGE_FALLING>; | |
69 | pinctrl-names = "default"; | |
70 | pinctrl-0 = <&pinctrl_qt1070_irq>; | |
71 | }; | |
fbc18715 LD |
72 | }; |
73 | ||
4134a455 | 74 | mmc0: mmc@f0008000 { |
199e2ede JCPV |
75 | pinctrl-0 = < |
76 | &pinctrl_board_mmc0 | |
77 | &pinctrl_mmc0_slot0_clk_cmd_dat0 | |
78 | &pinctrl_mmc0_slot0_dat1_3>; | |
4134a455 LD |
79 | status = "okay"; |
80 | slot@0 { | |
81 | reg = <0>; | |
82 | bus-width = <4>; | |
92f8629b | 83 | cd-gpios = <&pioA 7 GPIO_ACTIVE_HIGH>; |
4134a455 LD |
84 | }; |
85 | }; | |
199e2ede JCPV |
86 | |
87 | pinctrl@fffff400 { | |
88 | mmc0 { | |
89 | pinctrl_board_mmc0: mmc0-board { | |
90 | atmel,pins = | |
c9d0f317 | 91 | <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA7 gpio CD pin pull up and deglitch */ |
199e2ede JCPV |
92 | }; |
93 | }; | |
82914f8d | 94 | |
95 | qt1070 { | |
96 | pinctrl_qt1070_irq: qt1070_irq { | |
97 | atmel,pins = | |
98 | <AT91_PIOA 2 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | |
99 | }; | |
100 | }; | |
551a409c BS |
101 | |
102 | sound { | |
103 | pinctrl_pck0_as_audio_mck: pck0_as_audio_mck { | |
104 | atmel,pins = | |
105 | <AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
106 | }; | |
107 | }; | |
cf05ea71 BS |
108 | |
109 | usb1 { | |
110 | pinctrl_usb1_vbus_sense: usb1_vbus_sense { | |
111 | atmel,pins = | |
112 | <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PB16 gpio usb vbus sense, no pull up and deglitch */ | |
113 | }; | |
114 | }; | |
199e2ede | 115 | }; |
b6811e9a RG |
116 | |
117 | spi0: spi@f0000000 { | |
118 | status = "okay"; | |
119 | cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; | |
120 | m25p80@0 { | |
121 | compatible = "atmel,at25df321a"; | |
122 | spi-max-frequency = <50000000>; | |
123 | reg = <0>; | |
124 | }; | |
125 | }; | |
c77bcef4 | 126 | |
a437fc59 BS |
127 | hlcdc: hlcdc@f8038000 { |
128 | status = "okay"; | |
129 | ||
130 | hlcdc-display-controller { | |
131 | pinctrl-names = "default"; | |
132 | pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; | |
133 | ||
134 | port@0 { | |
135 | hlcdc_panel_output: endpoint@0 { | |
136 | reg = <0>; | |
137 | remote-endpoint = <&panel_input>; | |
138 | }; | |
139 | }; | |
140 | }; | |
141 | }; | |
142 | ||
cf05ea71 BS |
143 | usb1: gadget@f803c000 { |
144 | pinctrl-names = "default"; | |
145 | pinctrl-0 = <&pinctrl_usb1_vbus_sense>; | |
146 | atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; | |
147 | status = "okay"; | |
148 | }; | |
149 | ||
c77bcef4 WY |
150 | watchdog@fffffe40 { |
151 | status = "okay"; | |
152 | }; | |
87003229 NF |
153 | |
154 | rtc@fffffeb0 { | |
155 | status = "okay"; | |
156 | }; | |
cce783c6 HX |
157 | }; |
158 | ||
159 | nand0: nand@40000000 { | |
160 | nand-bus-width = <8>; | |
c18c6b29 JW |
161 | nand-ecc-mode = "hw"; |
162 | atmel,has-pmecc; | |
163 | atmel,pmecc-cap = <2>; | |
164 | atmel,pmecc-sector-size = <512>; | |
cce783c6 HX |
165 | nand-on-flash-bbt; |
166 | status = "okay"; | |
167 | }; | |
d7e67ee8 BS |
168 | |
169 | usb0: ohci@00500000 { | |
2fbda374 BS |
170 | num-ports = <1>; |
171 | atmel,vbus-gpio = <&pioB 7 GPIO_ACTIVE_LOW>; | |
d7e67ee8 BS |
172 | status = "okay"; |
173 | }; | |
cce783c6 HX |
174 | }; |
175 | ||
a437fc59 BS |
176 | backlight: backlight { |
177 | compatible = "pwm-backlight"; | |
178 | pwms = <&hlcdc_pwm 0 50000 0>; | |
179 | brightness-levels = <0 4 8 16 32 64 128 255>; | |
180 | default-brightness-level = <6>; | |
181 | power-supply = <&bl_reg>; | |
182 | status = "okay"; | |
183 | }; | |
184 | ||
185 | bl_reg: backlight_regulator { | |
186 | compatible = "regulator-fixed"; | |
187 | regulator-name = "backlight-power-supply"; | |
188 | regulator-min-microvolt = <5000000>; | |
189 | regulator-max-microvolt = <5000000>; | |
190 | status = "okay"; | |
191 | }; | |
192 | ||
cce783c6 HX |
193 | leds { |
194 | compatible = "gpio-leds"; | |
195 | ||
196 | d8 { | |
197 | label = "d8"; | |
92f8629b | 198 | gpios = <&pioB 4 GPIO_ACTIVE_LOW>; |
cce783c6 HX |
199 | linux,default-trigger = "mmc0"; |
200 | }; | |
201 | ||
202 | d9 { | |
7b6521f1 | 203 | label = "d9"; |
92f8629b | 204 | gpios = <&pioB 5 GPIO_ACTIVE_LOW>; |
cce783c6 HX |
205 | linux,default-trigger = "nand-disk"; |
206 | }; | |
207 | ||
208 | d10 { | |
7b6521f1 | 209 | label = "d10"; |
92f8629b | 210 | gpios = <&pioB 6 GPIO_ACTIVE_HIGH>; |
cce783c6 HX |
211 | linux,default-trigger = "heartbeat"; |
212 | }; | |
213 | }; | |
214 | ||
215 | gpio_keys { | |
216 | compatible = "gpio-keys"; | |
cce783c6 HX |
217 | |
218 | enter { | |
219 | label = "Enter"; | |
f7042049 | 220 | gpios = <&pioB 3 GPIO_ACTIVE_LOW>; |
cce783c6 HX |
221 | linux,code = <28>; |
222 | gpio-key,wakeup; | |
223 | }; | |
224 | }; | |
551a409c | 225 | |
a437fc59 BS |
226 | panel: panel { |
227 | compatible = "qd,qd43003c0-40", "simple-panel"; | |
228 | backlight = <&backlight>; | |
229 | power-supply = <&panel_reg>; | |
230 | #address-cells = <1>; | |
231 | #size-cells = <0>; | |
232 | status = "okay"; | |
233 | ||
234 | port@0 { | |
235 | reg = <0>; | |
236 | #address-cells = <1>; | |
237 | #size-cells = <0>; | |
238 | ||
239 | panel_input: endpoint@0 { | |
240 | reg = <0>; | |
241 | remote-endpoint = <&hlcdc_panel_output>; | |
242 | }; | |
243 | }; | |
244 | }; | |
245 | ||
246 | panel_reg: panel_regulator { | |
247 | compatible = "regulator-fixed"; | |
248 | regulator-name = "panel-power-supply"; | |
249 | regulator-min-microvolt = <3300000>; | |
250 | regulator-max-microvolt = <3300000>; | |
251 | status = "okay"; | |
252 | }; | |
253 | ||
551a409c BS |
254 | sound { |
255 | compatible = "atmel,asoc-wm8904"; | |
256 | pinctrl-names = "default"; | |
257 | pinctrl-0 = <&pinctrl_pck0_as_audio_mck>; | |
258 | ||
259 | atmel,model = "wm8904 @ AT91SAM9N12"; | |
260 | atmel,audio-routing = | |
261 | "Headphone Jack", "HPOUTL", | |
262 | "Headphone Jack", "HPOUTR", | |
263 | "IN2L", "Line In Jack", | |
264 | "IN2R", "Line In Jack", | |
265 | "Mic", "MICBIAS", | |
266 | "IN1L", "Mic"; | |
267 | ||
268 | atmel,ssc-controller = <&ssc0>; | |
269 | atmel,audio-codec = <&wm8904>; | |
270 | }; | |
cce783c6 | 271 | }; |