3500f4738fb04358b3e15f9bda5020ea65b9d817
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / kirkwood-t5325.dts
1 /*
2  * Device Tree file for HP t5325 Thin Client"
3  *
4  * Copyright (C) 2014
5  *
6  * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
7  * Andrew Lunn <andrew@lunn.ch>
8  *
9  * This file is licensed under the terms of the GNU General Public
10  * License version 2.  This program is licensed "as is" without any
11  * warranty of any kind, whether express or implied.
12 */
13
14 /dts-v1/;
15
16 #include "kirkwood.dtsi"
17 #include "kirkwood-6281.dtsi"
18
19 / {
20         model = "HP t5325 Thin Client";
21         compatible = "hp,t5325", "marvell,kirkwood-88f6281", "marvell,kirkwood";
22
23         memory {
24                 device_type = "memory";
25                 reg = <0x00000000 0x20000000>;
26         };
27
28         chosen {
29                 bootargs = "console=ttyS0,115200n8";
30                 stdout-path = &uart0;
31         };
32
33         ocp@f1000000 {
34                 pinctrl: pin-controller@10000 {
35                         pinctrl-0 = <&pmx_i2s &pmx_sysrst>;
36                         pinctrl-names = "default";
37
38                         pmx_button_power: pmx-button_power {
39                                 marvell,pins = "mpp45";
40                                 marvell,function = "gpio";
41                         };
42
43                         pmx_power_off: pmx-power-off {
44                                 marvell,pins = "mpp48";
45                                 marvell,function = "gpio";
46                         };
47
48                         pmx_led: pmx-led {
49                                 marvell,pins = "mpp21";
50                                 marvell,function = "gpio";
51                         };
52
53                         pmx_usb_sata_power_enable: pmx-usb-sata-power-enable {
54                                 marvell,pins = "mpp44";
55                                 marvell,function = "gpio";
56                         };
57
58                         pmx_spi: pmx-spi {
59                                 marvell,pins = "mpp1", "mpp2", "mpp3", "mpp7";
60                                 marvell,function = "spi";
61                         };
62
63                         pmx_sysrst: pmx-sysrst {
64                                 marvell,pins = "mpp6";
65                                 marvell,function = "sysrst";
66                         };
67
68                         pmx_i2s: pmx-i2s {
69                                 marvell,pins = "mpp39", "mpp40", "mpp41", "mpp42",
70                                                "mpp43";
71                                 marvell,function = "audio";
72                         };
73                 };
74
75                 spi@10600 {
76                         status = "okay";
77
78                         flash@0 {
79                                 #address-cells = <1>;
80                                 #size-cells = <1>;
81                                 compatible = "st,m25p80", "jedec,spi-nor";
82                                 spi-max-frequency = <86000000>;
83                                 reg = <0>;
84                                 mode = <0>;
85
86                                 partition@0 {
87                                         reg = <0x0 0x80000>;
88                                         label = "u-boot";
89                                 };
90
91                                 partition@1 {
92                                         reg = <0x80000 0x40000>;
93                                         label = "SSD firmware";
94                                 };
95
96                                 partition@2 {
97                                         reg = <0xc0000 0x10000>;
98                                         label = "u-boot env";
99                                 };
100
101                                 partition@3 {
102                                         reg = <0xd0000 0x10000>;
103                                         label = "permanent u-boot env";
104                                 };
105
106                                 partition@4 {
107                                         reg = <0xd0000 0x10000>;
108                                         label = "permanent u-boot env";
109                                 };
110                         };
111                 };
112
113                 i2c@11000 {
114                         status = "okay";
115
116                         alc5621: alc5621@1a {
117                                 compatible = "realtek,alc5621";
118                                 reg = <0x1a>;
119                                 #sound-dai-cells = <0>;
120                                 add-ctrl = <0x3700>;
121                                 jack-det-ctrl = <0x4810>;
122                         };
123                 };
124
125                 serial@12000 {
126                         status = "okay";
127                 };
128
129                 sata@80000 {
130                         status = "okay";
131                         nr-ports = <2>;
132                 };
133
134                 audio: audio-controller@a0000 {
135                         status = "okay";
136                 };
137         };
138
139         regulators {
140                 compatible = "simple-bus";
141                 #address-cells = <1>;
142                 #size-cells = <0>;
143                 pinctrl-0 = <&pmx_usb_sata_power_enable>;
144                 pinctrl-names = "default";
145
146                 usb_power: regulator@1 {
147                         compatible = "regulator-fixed";
148                         reg = <1>;
149                         regulator-name = "USB-SATA Power";
150                         regulator-min-microvolt = <5000000>;
151                         regulator-max-microvolt = <5000000>;
152                         enable-active-high;
153                         regulator-always-on;
154                         regulator-boot-on;
155                         gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>;
156                 };
157         };
158
159         gpio_keys {
160                 compatible = "gpio-keys";
161                 #address-cells = <1>;
162                 #size-cells = <0>;
163                 pinctrl-0 = <&pmx_button_power>;
164                 pinctrl-names = "default";
165
166                 power {
167                         label = "Power Button";
168                         linux,code = <KEY_POWER>;
169                         gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
170                 };
171         };
172
173         gpio_poweroff {
174                 compatible = "gpio-poweroff";
175                 pinctrl-0 = <&pmx_power_off>;
176                 pinctrl-names = "default";
177                 gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
178         };
179
180         sound {
181                 compatible = "simple-audio-card";
182                 simple-audio-card,format = "i2s";
183                 simple-audio-card,routing =
184                         "Headphone Jack", "HPL",
185                         "Headphone Jack", "HPR",
186                         "Speaker", "SPKOUT",
187                         "Speaker", "SPKOUTN",
188                         "MIC1", "Mic Jack",
189                         "MIC2", "Mic Jack";
190                 simple-audio-card,widgets =
191                         "Headphone", "Headphone Jack",
192                         "Speaker", "Speaker",
193                         "Microphone", "Mic Jack";
194
195                 simple-audio-card,mclk-fs = <256>;
196
197                 simple-audio-card,cpu {
198                         sound-dai = <&audio>;
199                 };
200
201                 simple-audio-card,codec {
202                         sound-dai = <&alc5621>;
203                 };
204         };
205 };
206
207 &mdio {
208         status = "okay";
209
210         ethphy0: ethernet-phy@8 {
211                 device_type = "ethernet-phy";
212                 reg = <8>;
213         };
214 };
215
216 &eth0 {
217         status = "okay";
218         ethernet0-port@0 {
219                 phy-handle = <&ethphy0>;
220         };
221 };
222
223 &pciec {
224         status = "okay";
225 };
226
227 &pcie0 {
228         status = "okay";
229 };