Merge branch 'queue' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target...
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / at91sam9g20ek_common.dtsi
1 /*
2  * at91sam9g20ek_common.dtsi - Device Tree file for Atmel at91sam9g20ek board
3  *
4  * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
5  *
6  * Licensed under GPLv2.
7  */
8 /include/ "at91sam9g20.dtsi"
9
10 / {
11
12         chosen {
13                 bootargs = "mem=64M console=ttyS0,115200 root=/dev/mtdblock5 rw rootfstype=ubifs";
14         };
15
16         memory {
17                 reg = <0x20000000 0x4000000>;
18         };
19
20         clocks {
21                 #address-cells = <1>;
22                 #size-cells = <1>;
23                 ranges;
24
25                 main_clock: clock@0 {
26                         compatible = "atmel,osc", "fixed-clock";
27                         clock-frequency = <18432000>;
28                 };
29         };
30
31         ahb {
32                 apb {
33                         pinctrl@fffff400 {
34                                 board {
35                                         pinctrl_pck0_as_mck: pck0_as_mck {
36                                                 atmel,pins =
37                                                         <2 1 0x2 0x0>;  /* PC1 periph B */
38                                         };
39
40                                 };
41                         };
42
43                         dbgu: serial@fffff200 {
44                                 status = "okay";
45                         };
46
47                         usart0: serial@fffb0000 {
48                                 pinctrl-0 =
49                                         <&pinctrl_usart0
50                                          &pinctrl_usart0_rts
51                                          &pinctrl_usart0_cts
52                                          &pinctrl_usart0_dtr_dsr
53                                          &pinctrl_usart0_dcd
54                                          &pinctrl_usart0_ri>;
55                                 status = "okay";
56                         };
57
58                         usart1: serial@fffb4000 {
59                                 status = "okay";
60                         };
61
62                         macb0: ethernet@fffc4000 {
63                                 phy-mode = "rmii";
64                                 status = "okay";
65                         };
66
67                         usb1: gadget@fffa4000 {
68                                 atmel,vbus-gpio = <&pioC 5 0>;
69                                 status = "okay";
70                         };
71
72                         mmc0: mmc@fffa8000 {
73                                 pinctrl-0 = <
74                                         &pinctrl_board_mmc0_slot1
75                                         &pinctrl_mmc0_clk
76                                         &pinctrl_mmc0_slot1_cmd_dat0
77                                         &pinctrl_mmc0_slot1_dat1_3>;
78                                 status = "okay";
79                                 slot@1 {
80                                         reg = <1>;
81                                         bus-width = <4>;
82                                         cd-gpios = <&pioC 9 0>;
83                                 };
84                         };
85
86                         pinctrl@fffff400 {
87                                 mmc0_slot1 {
88                                         pinctrl_board_mmc0_slot1: mmc0_slot1-board {
89                                                 atmel,pins =
90                                                         <2 9 0x0 0x5>;  /* PC9 gpio CD pin pull up and deglitch */
91                                         };
92                                 };
93                         };
94
95                         ssc0: ssc@fffbc000 {
96                                 status = "okay";
97                                 pinctrl-0 = <&pinctrl_ssc0_tx>;
98                         };
99
100                         spi0: spi@fffc8000 {
101                                 status = "okay";
102                                 cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
103                                 mtd_dataflash@0 {
104                                         compatible = "atmel,at45", "atmel,dataflash";
105                                         spi-max-frequency = <50000000>;
106                                         reg = <1>;
107                                 };
108                         };
109                 };
110
111                 nand0: nand@40000000 {
112                         nand-bus-width = <8>;
113                         nand-ecc-mode = "soft";
114                         nand-on-flash-bbt;
115                         status = "okay";
116
117                         at91bootstrap@0 {
118                                 label = "at91bootstrap";
119                                 reg = <0x0 0x20000>;
120                         };
121
122                         barebox@20000 {
123                                 label = "barebox";
124                                 reg = <0x20000 0x40000>;
125                         };
126
127                         bareboxenv@60000 {
128                                 label = "bareboxenv";
129                                 reg = <0x60000 0x20000>;
130                         };
131
132                         bareboxenv2@80000 {
133                                 label = "bareboxenv2";
134                                 reg = <0x80000 0x20000>;
135                         };
136
137                         oftree@80000 {
138                                 label = "oftree";
139                                 reg = <0xa0000 0x20000>;
140                         };
141
142                         kernel@a0000 {
143                                 label = "kernel";
144                                 reg = <0xc0000 0x400000>;
145                         };
146
147                         rootfs@4a0000 {
148                                 label = "rootfs";
149                                 reg = <0x4c0000 0x7800000>;
150                         };
151
152                         data@7ca0000 {
153                                 label = "data";
154                                 reg = <0x7cc0000 0x8340000>;
155                         };
156                 };
157
158                 usb0: ohci@00500000 {
159                         num-ports = <2>;
160                         status = "okay";
161                 };
162         };
163
164         i2c@0 {
165                 status = "okay";
166
167                 24c512@50 {
168                         compatible = "24c512";
169                         reg = <0x50>;
170                 };
171
172                 wm8731: wm8731@1b {
173                         compatible = "wm8731";
174                         reg = <0x1b>;
175                 };
176         };
177
178         gpio_keys {
179                 compatible = "gpio-keys";
180
181                 btn3 {
182                         label = "Button 3";
183                         gpios = <&pioA 30 1>;
184                         linux,code = <0x103>;
185                         gpio-key,wakeup;
186                 };
187
188                 btn4 {
189                         label = "Button 4";
190                         gpios = <&pioA 31 1>;
191                         linux,code = <0x104>;
192                         gpio-key,wakeup;
193                 };
194         };
195
196         sound {
197                 compatible = "atmel,at91sam9g20ek-wm8731-audio";
198                 pinctrl-names = "default";
199                 pinctrl-0 = <&pinctrl_pck0_as_mck>;
200
201                 atmel,model = "wm8731 @ AT91SAMG20EK";
202
203                 atmel,audio-routing =
204                         "Ext Spk", "LHPOUT",
205                         "Int Mic", "MICIN";
206
207                 atmel,ssc-controller = <&ssc0>;
208                 atmel,audio-codec = <&wm8731>;
209         };
210 };