Commit | Line | Data |
---|---|---|
9ae6f740 TP |
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/; | |
38149887 | 17 | #include "armada-370.dtsi" |
9ae6f740 TP |
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"; | |
11d5993d | 29 | reg = <0x00000000 0x40000000>; /* 1 GB */ |
9ae6f740 TP |
30 | }; |
31 | ||
32 | soc { | |
0cd3754a EG |
33 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000 |
34 | MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>; | |
5e12a613 | 35 | |
467f54b2 GC |
36 | internal-regs { |
37 | serial@12000 { | |
467f54b2 | 38 | status = "okay"; |
f01959a9 | 39 | }; |
467f54b2 GC |
40 | sata@a0000 { |
41 | nr-ports = <2>; | |
42 | status = "okay"; | |
f01959a9 | 43 | }; |
f01959a9 | 44 | |
467f54b2 | 45 | mdio { |
fea038ed EG |
46 | pinctrl-0 = <&mdio_pins>; |
47 | pinctrl-names = "default"; | |
467f54b2 GC |
48 | phy0: ethernet-phy@0 { |
49 | reg = <0>; | |
50 | }; | |
b6150c71 | 51 | |
467f54b2 GC |
52 | phy1: ethernet-phy@1 { |
53 | reg = <1>; | |
54 | }; | |
55 | }; | |
200506b1 | 56 | |
467f54b2 | 57 | ethernet@70000 { |
fea038ed EG |
58 | pinctrl-0 = <&ge0_rgmii_pins>; |
59 | pinctrl-names = "default"; | |
467f54b2 GC |
60 | status = "okay"; |
61 | phy = <&phy0>; | |
62 | phy-mode = "rgmii-id"; | |
63 | }; | |
64 | ethernet@74000 { | |
fea038ed EG |
65 | pinctrl-0 = <&ge1_rgmii_pins>; |
66 | pinctrl-names = "default"; | |
467f54b2 GC |
67 | status = "okay"; |
68 | phy = <&phy1>; | |
69 | phy-mode = "rgmii-id"; | |
70 | }; | |
200506b1 | 71 | |
249f3822 TP |
72 | i2c@11000 { |
73 | pinctrl-0 = <&i2c0_pins>; | |
74 | pinctrl-names = "default"; | |
ac164d11 | 75 | clock-frequency = <100000>; |
249f3822 TP |
76 | status = "okay"; |
77 | audio_codec: audio-codec@4a { | |
a6b33451 | 78 | #sound-dai-cells = <0>; |
249f3822 TP |
79 | compatible = "cirrus,cs42l51"; |
80 | reg = <0x4a>; | |
81 | }; | |
82 | }; | |
83 | ||
84 | audio-controller@30000 { | |
85 | pinctrl-0 = <&i2s_pins2>; | |
86 | pinctrl-names = "default"; | |
87 | status = "okay"; | |
88 | }; | |
89 | ||
467f54b2 GC |
90 | mvsdio@d4000 { |
91 | pinctrl-0 = <&sdio_pins1>; | |
92 | pinctrl-names = "default"; | |
93 | /* | |
94 | * This device is disabled by default, because | |
95 | * using the SD card connector requires | |
96 | * changing the default CON40 connector | |
97 | * "DB-88F6710_MPP_2xRGMII_DEVICE_Jumper" to a | |
98 | * different connector | |
99 | * "DB-88F6710_MPP_RGMII_SD_Jumper". | |
100 | */ | |
101 | status = "disabled"; | |
102 | /* No CD or WP GPIOs */ | |
d87b5fbb | 103 | broken-cd; |
467f54b2 | 104 | }; |
04e09b72 | 105 | |
467f54b2 GC |
106 | usb@50000 { |
107 | status = "okay"; | |
108 | }; | |
04e09b72 | 109 | |
467f54b2 GC |
110 | usb@51000 { |
111 | status = "okay"; | |
04e09b72 | 112 | }; |
3b723ae8 | 113 | |
467f54b2 | 114 | spi0: spi@10600 { |
a6fa8475 AE |
115 | pinctrl-0 = <&spi0_pins2>; |
116 | pinctrl-names = "default"; | |
3b723ae8 | 117 | status = "okay"; |
467f54b2 GC |
118 | |
119 | spi-flash@0 { | |
120 | #address-cells = <1>; | |
121 | #size-cells = <1>; | |
122 | compatible = "mx25l25635e"; | |
123 | reg = <0>; /* Chip select 0 */ | |
124 | spi-max-frequency = <50000000>; | |
125 | }; | |
3b723ae8 | 126 | }; |
96039f73 | 127 | }; |
467f54b2 | 128 | |
96039f73 TP |
129 | pcie-controller { |
130 | status = "okay"; | |
131 | /* | |
132 | * The two PCIe units are accessible through | |
133 | * both standard PCIe slots and mini-PCIe | |
134 | * slots on the board. | |
135 | */ | |
136 | pcie@1,0 { | |
137 | /* Port 0, Lane 0 */ | |
138 | status = "okay"; | |
139 | }; | |
249f3822 | 140 | |
96039f73 TP |
141 | pcie@2,0 { |
142 | /* Port 1, Lane 0 */ | |
3b723ae8 TP |
143 | status = "okay"; |
144 | }; | |
145 | }; | |
9ae6f740 | 146 | }; |
249f3822 TP |
147 | |
148 | sound { | |
a6b33451 TP |
149 | compatible = "simple-audio-card"; |
150 | simple-audio-card,name = "Armada 370 DB Audio"; | |
151 | simple-audio-card,mclk-fs = <256>; | |
152 | simple-audio-card,widgets = | |
153 | "Headphone", "Out Jack", | |
154 | "Line", "In Jack"; | |
155 | simple-audio-card,routing = | |
156 | "Out Jack", "HPL", | |
157 | "Out Jack", "HPR", | |
158 | "AIN1L", "In Jack", | |
159 | "AIN1L", "In Jack"; | |
160 | status = "okay"; | |
161 | ||
162 | simple-audio-card,dai-link@0 { | |
163 | format = "i2s"; | |
164 | cpu { | |
165 | sound-dai = <&audio_controller 0>; | |
166 | }; | |
167 | ||
168 | codec { | |
169 | sound-dai = <&audio_codec>; | |
170 | }; | |
171 | }; | |
172 | ||
173 | simple-audio-card,dai-link@1 { | |
174 | format = "i2s"; | |
175 | cpu { | |
176 | sound-dai = <&audio_controller 1>; | |
177 | }; | |
178 | ||
179 | codec { | |
180 | sound-dai = <&spdif_out>; | |
181 | }; | |
182 | }; | |
183 | ||
184 | simple-audio-card,dai-link@2 { | |
185 | format = "i2s"; | |
186 | cpu { | |
187 | sound-dai = <&audio_controller 1>; | |
188 | }; | |
189 | ||
190 | codec { | |
191 | sound-dai = <&spdif_in>; | |
192 | }; | |
193 | }; | |
249f3822 | 194 | }; |
5b26bd88 TP |
195 | |
196 | spdif_out: spdif-out { | |
a6b33451 TP |
197 | #sound-dai-cells = <0>; |
198 | compatible = "linux,spdif-dit"; | |
5b26bd88 TP |
199 | }; |
200 | ||
201 | spdif_in: spdif-in { | |
a6b33451 TP |
202 | #sound-dai-cells = <0>; |
203 | compatible = "linux,spdif-dir"; | |
5b26bd88 | 204 | }; |
9ae6f740 | 205 | }; |
4904a82a AE |
206 | |
207 | &pinctrl { | |
208 | /* | |
209 | * These pins might be muxed as I2S by | |
210 | * the bootloader, but it conflicts | |
211 | * with the real I2S pins that are | |
212 | * muxed using i2s_pins. We must mux | |
213 | * those pins to a function other than | |
214 | * I2S. | |
215 | */ | |
216 | pinctrl-0 = <&hog_pins1 &hog_pins2>; | |
217 | pinctrl-names = "default"; | |
218 | ||
219 | hog_pins1: hog-pins1 { | |
220 | marvell,pins = "mpp6", "mpp8", "mpp10", | |
221 | "mpp12", "mpp13"; | |
222 | marvell,function = "gpio"; | |
223 | }; | |
224 | ||
225 | hog_pins2: hog-pins2 { | |
226 | marvell,pins = "mpp5", "mpp7", "mpp9"; | |
227 | marvell,function = "gpo"; | |
228 | }; | |
229 | }; |