Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / armada-370-db.dts
1 /*
2  * Device Tree file for Marvell Armada 370 evaluation board
3  * (DB-88F6710-BP-DDR3)
4  *
5  *  Copyright (C) 2012 Marvell
6  *
7  * Lior Amsalem <alior@marvell.com>
8  * Gregory CLEMENT <gregory.clement@free-electrons.com>
9  * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
10  *
11  * This file is licensed under the terms of the GNU General Public
12  * License version 2.  This program is licensed "as is" without any
13  * warranty of any kind, whether express or implied.
14  */
15
16 /dts-v1/;
17 #include "armada-370.dtsi"
18
19 / {
20         model = "Marvell Armada 370 Evaluation Board";
21         compatible = "marvell,a370-db", "marvell,armada370", "marvell,armada-370-xp";
22
23         chosen {
24                 bootargs = "console=ttyS0,115200 earlyprintk";
25         };
26
27         memory {
28                 device_type = "memory";
29                 reg = <0x00000000 0x40000000>; /* 1 GB */
30         };
31
32         soc {
33                 ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000
34                           MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>;
35
36                 internal-regs {
37                         serial@12000 {
38                                 status = "okay";
39                         };
40                         sata@a0000 {
41                                 nr-ports = <2>;
42                                 status = "okay";
43                         };
44
45                         mdio {
46                                 pinctrl-0 = <&mdio_pins>;
47                                 pinctrl-names = "default";
48                                 phy0: ethernet-phy@0 {
49                                         reg = <0>;
50                                 };
51
52                                 phy1: ethernet-phy@1 {
53                                         reg = <1>;
54                                 };
55                         };
56
57                         ethernet@70000 {
58                                 pinctrl-0 = <&ge0_rgmii_pins>;
59                                 pinctrl-names = "default";
60                                 status = "okay";
61                                 phy = <&phy0>;
62                                 phy-mode = "rgmii-id";
63                         };
64                         ethernet@74000 {
65                                 pinctrl-0 = <&ge1_rgmii_pins>;
66                                 pinctrl-names = "default";
67                                 status = "okay";
68                                 phy = <&phy1>;
69                                 phy-mode = "rgmii-id";
70                         };
71
72                         i2c@11000 {
73                                 pinctrl-0 = <&i2c0_pins>;
74                                 pinctrl-names = "default";
75                                 clock-frequency = <100000>;
76                                 status = "okay";
77                                 audio_codec: audio-codec@4a {
78                                         compatible = "cirrus,cs42l51";
79                                         reg = <0x4a>;
80                                 };
81                         };
82
83                         audio-controller@30000 {
84                                 pinctrl-0 = <&i2s_pins2>;
85                                 pinctrl-names = "default";
86                                 status = "okay";
87                         };
88
89                         mvsdio@d4000 {
90                                 pinctrl-0 = <&sdio_pins1>;
91                                 pinctrl-names = "default";
92                                 /*
93                                  * This device is disabled by default, because
94                                  * using the SD card connector requires
95                                  * changing the default CON40 connector
96                                  * "DB-88F6710_MPP_2xRGMII_DEVICE_Jumper" to a
97                                  * different connector
98                                  * "DB-88F6710_MPP_RGMII_SD_Jumper".
99                                  */
100                                 status = "disabled";
101                                 /* No CD or WP GPIOs */
102                                 broken-cd;
103                         };
104
105                         pinctrl {
106                                 /*
107                                  * These pins might be muxed as I2S by
108                                  * the bootloader, but it conflicts
109                                  * with the real I2S pins that are
110                                  * muxed using i2s_pins. We must mux
111                                  * those pins to a function other than
112                                  * I2S.
113                                  */
114                                 pinctrl-0 = <&hog_pins1 &hog_pins2>;
115                                 pinctrl-names = "default";
116
117                                 hog_pins1: hog-pins1 {
118                                         marvell,pins = "mpp6",  "mpp8", "mpp10",
119                                                        "mpp12", "mpp13";
120                                         marvell,function = "gpio";
121                                 };
122
123                                 hog_pins2: hog-pins2 {
124                                         marvell,pins = "mpp5", "mpp7", "mpp9";
125                                         marvell,function = "gpo";
126                                 };
127                         };
128
129                         usb@50000 {
130                                 status = "okay";
131                         };
132
133                         usb@51000 {
134                                 status = "okay";
135                         };
136
137                         spi0: spi@10600 {
138                                 status = "okay";
139
140                                 spi-flash@0 {
141                                         #address-cells = <1>;
142                                         #size-cells = <1>;
143                                         compatible = "mx25l25635e";
144                                         reg = <0>; /* Chip select 0 */
145                                         spi-max-frequency = <50000000>;
146                                 };
147                         };
148                 };
149
150                 pcie-controller {
151                         status = "okay";
152                         /*
153                          * The two PCIe units are accessible through
154                          * both standard PCIe slots and mini-PCIe
155                          * slots on the board.
156                          */
157                         pcie@1,0 {
158                                 /* Port 0, Lane 0 */
159                                 status = "okay";
160                         };
161
162                         pcie@2,0 {
163                                 /* Port 1, Lane 0 */
164                                 status = "okay";
165                         };
166                 };
167         };
168
169         sound {
170               compatible = "marvell,a370db-audio";
171               marvell,audio-controller = <&audio_controller>;
172               marvell,audio-codec = <&audio_codec &spdif_out &spdif_in>;
173               status = "okay";
174         };
175
176         spdif_out: spdif-out {
177               compatible = "linux,spdif-dit";
178         };
179
180         spdif_in: spdif-in {
181               compatible = "linux,spdif-dir";
182         };
183 };