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