6a03c41290462c2b2150300f339023f2071d959c
[openwrt.git] / target / linux / kirkwood / patches-3.18 / 170-ea3500.patch
1 --- a/arch/arm/boot/dts/Makefile
2 +++ b/arch/arm/boot/dts/Makefile
3 @@ -128,6 +128,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += kirkwood-
4         kirkwood-is2.dtb \
5         kirkwood-km_kirkwood.dtb \
6         kirkwood-laplug.dtb \
7 +       kirkwood-linksys-audi.dtb \
8         kirkwood-linksys-viper.dtb \
9         kirkwood-lschlv2.dtb \
10         kirkwood-lsxhl.dtb \
11 --- /dev/null
12 +++ b/arch/arm/boot/dts/kirkwood-linksys-audi.dts
13 @@ -0,0 +1,179 @@
14 +/*
15 + * kirkwood-linksys-audi.dts - Device Tree file for Linksys EA3500
16 + *
17 + * (c) 2013 Jonas Gorski <jogo@openwrt.org>
18 + * (c) 2013 Deutsche Telekom Innovation Laboratories
19 + * (c) 2014 Luka Perkov <luka@openwrt.org>
20 + * (c) 2014 Dan Walters <dan@walters.io>
21 + *
22 + * This file is licensed under the terms of the GNU General Public
23 + * License version 2.  This program is licensed "as is" without any
24 + * warranty of any kind, whether express or implied.
25 + */
26 +
27 +/dts-v1/;
28 +
29 +#include "kirkwood.dtsi"
30 +#include "kirkwood-6282.dtsi"
31 +
32 +/ {
33 +       model = "Linksys EA3500";
34 +       compatible = "linksys,audi", "marvell,kirkwood-88f6282", "marvell,kirkwood";
35 +
36 +       memory {
37 +               device_type = "memory";
38 +               reg = <0x00000000 0x4000000>;
39 +       };
40 +
41 +       chosen {
42 +               bootargs = "console=ttyS0,115200n8 earlyprintk";
43 +       };
44 +
45 +       mbus {
46 +               pcie-controller {
47 +                       status = "okay";
48 +
49 +                       pcie@1,0 {
50 +                               status = "okay";
51 +                       };
52 +
53 +                       pcie@2,0 {
54 +                               status = "okay";
55 +                       };
56 +               };
57 +       };
58 +
59 +       ocp@f1000000 {
60 +               pinctrl: pin-controller@10000 {
61 +                       pmx_led_green_power: pmx-led-green-power {
62 +                               marvell,pins = "mpp7";
63 +                               marvell,function = "gpo";
64 +                       };
65 +                       pmx_btn_wps: pmx-btn-wps {
66 +                               marvell,pins = "mpp47";
67 +                               marvell,function = "gpio";
68 +                       };
69 +                       pmx_btn_reset: pmx-btn-reset {
70 +                               marvell,pins = "mpp48";
71 +                               marvell,function = "gpio";
72 +                       };
73 +               };
74 +
75 +               rtc@10300 {
76 +                       status = "disabled";
77 +               };
78 +
79 +               serial@12000 {
80 +                       status = "okay";
81 +               };
82 +
83 +       };
84 +
85 +       gpio_keys {
86 +               compatible = "gpio-keys";
87 +               #address-cells = <1>;
88 +               #size-cells = <0>;
89 +               pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >;
90 +               pinctrl-names = "default";
91 +
92 +               button@15 {
93 +                       label = "WPS Button";
94 +                       linux,code = <KEY_WPS_BUTTON>;
95 +                       gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
96 +               };
97 +
98 +               button@16 {
99 +                       label = "Reset Button";
100 +                       linux,code = <KEY_RESTART>;
101 +                       gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
102 +               };
103 +       };
104 +
105 +       gpio-leds {
106 +               compatible = "gpio-leds";
107 +               pinctrl-0 = < &pmx_led_green_power >;
108 +               pinctrl-names = "default";
109 +
110 +               green-power {
111 +                       label = "audi:green:power";
112 +                       gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
113 +               };
114 +       };
115 +
116 +       mvsw61xx {
117 +               compatible = "marvell,88e6171";
118 +               status = "okay";
119 +               reg = <0x10>;
120 +
121 +               mii-bus = <&mdio>;
122 +               cpu-port-0 = <5>;
123 +               cpu-port-1 = <6>;
124 +               is-indirect;
125 +       };
126 +};
127 +
128 +&nand {
129 +       status = "okay";
130 +       pinctrl-0 = <&pmx_nand>;
131 +       pinctrl-names = "default";
132 +
133 +       partition@0 {
134 +               label = "u-boot";
135 +               reg = <0x0 0x80000>;
136 +       };
137 +
138 +       partition@80000 {
139 +               label = "u_env";
140 +               reg = <0x80000 0x4000>;
141 +       };
142 +
143 +       partition@84000 {
144 +               label = "s_env";
145 +               reg = <0x84000 0x4000>;
146 +       };
147 +
148 +       partition@200000 {
149 +               label = "kernel1";
150 +               reg = <0x200000 0x1400000>;
151 +       };
152 +
153 +       partition@490000 {
154 +               label = "rootfs1";
155 +               reg = <0x490000 0x1170000>;
156 +       };
157 +
158 +       partition@1600000 {
159 +               label = "kernel2";
160 +               reg = <0x1600000 0x1400000>;
161 +       };
162 +
163 +       partition@1890000 {
164 +               label = "rootfs2";
165 +               reg = <0x1890000 0x1170000>;
166 +       };
167 +
168 +       partition@2a00000 {
169 +               label = "syscfg";
170 +               reg = <0x2a00000  0x1600000>;
171 +       };
172 +};
173 +
174 +&mdio {
175 +       status = "okay";
176 +};
177 +
178 +&eth0 {
179 +       status = "okay";
180 +       ethernet0-port@0 {
181 +               speed = <1000>;
182 +               duplex = <1>;
183 +       };
184 +};
185 +
186 +&eth1 {
187 +       status = "okay";
188 +       ethernet1-port@0 {
189 +               speed = <1000>;
190 +               duplex = <1>;
191 +       };
192 +};