diff options
author | Arnd Bergmann <arnd@arndb.de> | 2016-09-19 11:30:06 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2016-09-19 11:30:06 -0400 |
commit | fb90bc50602b34cb3d45bbcd1ba5d527c575dc2e (patch) | |
tree | 33a40fb49e7586eb238cb1ad10fb82b057793b98 /arch/arm/boot/dts | |
parent | 3598f2470b286113c17e85d6f97145b4fbe67ef9 (diff) | |
parent | d30363364811e956816cb586936269ecb9a30299 (diff) |
Merge tag 'mvebu-dt-4.9-2' of git://git.infradead.org/linux-mvebu into next/dt
Pull "mvebu dt for 4.9 (part 2)" from Gregory CLEMENT:
- convert orion5x based SoC Netgear WNR854T to devicetree
- remove obsolete orion-gpio binding description
* tag 'mvebu-dt-4.9-2' of git://git.infradead.org/linux-mvebu:
ARM: dts: orion5x: Configure WNR854T ethernet PHY LEDs
ARM: dts: orion5x: Add description for Netgear WNR854T
ARM: dts: arm: orion5x: Add DT include for mv88f5181
dt-bindings: arm: add DT binding for Marvell Orion5x SoC family
ARM: dts: orion5x: Add required properties for orion-wdt to DT node
dt-binding: mrvl-gpio: remove orion-gpio description
Diffstat (limited to 'arch/arm/boot/dts')
-rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/orion5x-mv88f5181.dtsi | 49 | ||||
-rw-r--r-- | arch/arm/boot/dts/orion5x-netgear-wnr854t.dts | 251 | ||||
-rw-r--r-- | arch/arm/boot/dts/orion5x.dtsi | 3 |
4 files changed, 303 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 50d730101ab2..2fcd6a10b070 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -598,6 +598,7 @@ dtb-$(CONFIG_ARCH_ORION5X) += \ | |||
598 | orion5x-linkstation-lswtgl.dtb \ | 598 | orion5x-linkstation-lswtgl.dtb \ |
599 | orion5x-lswsgl.dtb \ | 599 | orion5x-lswsgl.dtb \ |
600 | orion5x-maxtor-shared-storage-2.dtb \ | 600 | orion5x-maxtor-shared-storage-2.dtb \ |
601 | orion5x-netgear-wnr854t.dtb \ | ||
601 | orion5x-rd88f5182-nas.dtb | 602 | orion5x-rd88f5182-nas.dtb |
602 | dtb-$(CONFIG_ARCH_PRIMA2) += \ | 603 | dtb-$(CONFIG_ARCH_PRIMA2) += \ |
603 | prima2-evb.dtb | 604 | prima2-evb.dtb |
diff --git a/arch/arm/boot/dts/orion5x-mv88f5181.dtsi b/arch/arm/boot/dts/orion5x-mv88f5181.dtsi new file mode 100644 index 000000000000..f667012b26ca --- /dev/null +++ b/arch/arm/boot/dts/orion5x-mv88f5181.dtsi | |||
@@ -0,0 +1,49 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016 Jamie Lentin <jm@lentin.co.uk> | ||
3 | * | ||
4 | * This file is licensed under the terms of the GNU General Public | ||
5 | * License version 2. This program is licensed "as is" without any | ||
6 | * warranty of any kind, whether express or implied. | ||
7 | */ | ||
8 | |||
9 | #include "orion5x.dtsi" | ||
10 | |||
11 | / { | ||
12 | compatible = "marvell,orion5x-88f5181", "marvell,orion5x"; | ||
13 | |||
14 | soc { | ||
15 | compatible = "marvell,orion5x-88f5181-mbus", "simple-bus"; | ||
16 | |||
17 | internal-regs { | ||
18 | pinctrl: pinctrl@10000 { | ||
19 | compatible = "marvell,88f5181-pinctrl"; | ||
20 | reg = <0x10000 0x8>, <0x10050 0x4>; | ||
21 | }; | ||
22 | |||
23 | core_clk: core-clocks@10030 { | ||
24 | compatible = "marvell,mv88f5181-core-clock"; | ||
25 | reg = <0x10010 0x4>; | ||
26 | #clock-cells = <1>; | ||
27 | }; | ||
28 | |||
29 | mbusc: mbus-controller@20000 { | ||
30 | compatible = "marvell,mbus-controller"; | ||
31 | reg = <0x20000 0x100>, <0x1500 0x20>; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | |||
37 | &pinctrl { | ||
38 | pmx_ge: pmx-ge { | ||
39 | marvell,pins = "mpp8", "mpp9", "mpp10", "mpp11", | ||
40 | "mpp12", "mpp13", "mpp14", "mpp15", | ||
41 | "mpp16", "mpp17", "mpp18", "mpp19"; | ||
42 | marvell,function = "ge"; | ||
43 | }; | ||
44 | }; | ||
45 | |||
46 | ð { | ||
47 | pinctrl-0 = <&pmx_ge>; | ||
48 | pinctrl-names = "default"; | ||
49 | }; | ||
diff --git a/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts b/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts new file mode 100644 index 000000000000..9f6ae4e1de06 --- /dev/null +++ b/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts | |||
@@ -0,0 +1,251 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016 Jamie Lentin <jm@lentin.co.uk> | ||
3 | * | ||
4 | * This file is licensed under the terms of the GNU General Public | ||
5 | * License version 2. This program is licensed "as is" without any | ||
6 | * warranty of any kind, whether express or implied. | ||
7 | */ | ||
8 | |||
9 | /dts-v1/; | ||
10 | |||
11 | #include <dt-bindings/gpio/gpio.h> | ||
12 | #include <dt-bindings/input/input.h> | ||
13 | #include "orion5x-mv88f5181.dtsi" | ||
14 | |||
15 | / { | ||
16 | model = "Netgear WNR854-t"; | ||
17 | compatible = "netgear,wnr854t", "marvell,orion5x-88f5181", | ||
18 | "marvell,orion5x"; | ||
19 | aliases { | ||
20 | serial0 = &uart0; | ||
21 | }; | ||
22 | |||
23 | memory { | ||
24 | reg = <0x00000000 0x2000000>; /* 32 MB */ | ||
25 | }; | ||
26 | |||
27 | chosen { | ||
28 | stdout-path = "serial0:115200n8"; | ||
29 | }; | ||
30 | |||
31 | soc { | ||
32 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>, | ||
33 | <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>, | ||
34 | <MBUS_ID(0x01, 0x0f) 0 0xf4000000 0x800000>; | ||
35 | }; | ||
36 | |||
37 | gpio-keys { | ||
38 | compatible = "gpio-keys"; | ||
39 | pinctrl-0 = <&pmx_reset_button>; | ||
40 | pinctrl-names = "default"; | ||
41 | |||
42 | reset { | ||
43 | label = "Reset Button"; | ||
44 | linux,code = <KEY_RESTART>; | ||
45 | gpios = <&gpio0 1 GPIO_ACTIVE_LOW>; | ||
46 | }; | ||
47 | }; | ||
48 | |||
49 | gpio-leds { | ||
50 | compatible = "gpio-leds"; | ||
51 | pinctrl-0 = <&pmx_power_led &pmx_power_led_blink &pmx_wan_led>; | ||
52 | pinctrl-names = "default"; | ||
53 | |||
54 | led@0 { | ||
55 | label = "wnr854t:green:power"; | ||
56 | gpios = <&gpio0 0 GPIO_ACTIVE_LOW>; | ||
57 | }; | ||
58 | |||
59 | led@1 { | ||
60 | label = "wnr854t:blink:power"; | ||
61 | gpios = <&gpio0 2 GPIO_ACTIVE_LOW>; | ||
62 | }; | ||
63 | |||
64 | led@2 { | ||
65 | label = "wnr854t:green:wan"; | ||
66 | gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; | ||
67 | }; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | &devbus_bootcs { | ||
72 | status = "okay"; | ||
73 | |||
74 | devbus,keep-config; | ||
75 | |||
76 | flash@0 { | ||
77 | compatible = "cfi-flash"; | ||
78 | reg = <0 0x800000>; | ||
79 | bank-width = <2>; | ||
80 | |||
81 | partitions { | ||
82 | compatible = "fixed-partitions"; | ||
83 | #address-cells = <1>; | ||
84 | #size-cells = <1>; | ||
85 | |||
86 | partition@0 { | ||
87 | label = "kernel"; | ||
88 | reg = <0x0 0x100000>; | ||
89 | }; | ||
90 | |||
91 | partition@100000 { | ||
92 | label = "rootfs"; | ||
93 | reg = <0x100000 0x660000>; | ||
94 | }; | ||
95 | |||
96 | partition@760000 { | ||
97 | label = "uboot_env"; | ||
98 | reg = <0x760000 0x20000>; | ||
99 | }; | ||
100 | |||
101 | partition@780000 { | ||
102 | label = "uboot"; | ||
103 | reg = <0x780000 0x80000>; | ||
104 | read-only; | ||
105 | }; | ||
106 | }; | ||
107 | }; | ||
108 | }; | ||
109 | |||
110 | &mdio { | ||
111 | status = "okay"; | ||
112 | |||
113 | switch: switch@0 { | ||
114 | compatible = "marvell,mv88e6085"; | ||
115 | #address-cells = <1>; | ||
116 | #size-cells = <0>; | ||
117 | reg = <0>; | ||
118 | dsa,member = <0 0>; | ||
119 | |||
120 | ports { | ||
121 | #address-cells = <1>; | ||
122 | #size-cells = <0>; | ||
123 | |||
124 | port@0 { | ||
125 | reg = <0>; | ||
126 | label = "lan3"; | ||
127 | phy-handle = <&lan3phy>; | ||
128 | }; | ||
129 | |||
130 | port@1 { | ||
131 | reg = <1>; | ||
132 | label = "lan4"; | ||
133 | phy-handle = <&lan4phy>; | ||
134 | }; | ||
135 | |||
136 | port@2 { | ||
137 | reg = <2>; | ||
138 | label = "wan"; | ||
139 | phy-handle = <&wanphy>; | ||
140 | }; | ||
141 | |||
142 | port@3 { | ||
143 | reg = <3>; | ||
144 | label = "cpu"; | ||
145 | ethernet = <ðport>; | ||
146 | }; | ||
147 | |||
148 | port@5 { | ||
149 | reg = <5>; | ||
150 | label = "lan1"; | ||
151 | phy-handle = <&lan1phy>; | ||
152 | }; | ||
153 | |||
154 | port@7 { | ||
155 | reg = <7>; | ||
156 | label = "lan2"; | ||
157 | phy-handle = <&lan2phy>; | ||
158 | }; | ||
159 | }; | ||
160 | |||
161 | mdio { | ||
162 | #address-cells = <1>; | ||
163 | #size-cells = <0>; | ||
164 | |||
165 | lan3phy: ethernet-phy@0 { | ||
166 | /* Marvell 88E1121R (port 1) */ | ||
167 | compatible = "ethernet-phy-id0141.0cb0", | ||
168 | "ethernet-phy-ieee802.3-c22"; | ||
169 | reg = <0>; | ||
170 | marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>; | ||
171 | }; | ||
172 | |||
173 | lan4phy: ethernet-phy@1 { | ||
174 | /* Marvell 88E1121R (port 2) */ | ||
175 | compatible = "ethernet-phy-id0141.0cb0", | ||
176 | "ethernet-phy-ieee802.3-c22"; | ||
177 | reg = <1>; | ||
178 | marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>; | ||
179 | }; | ||
180 | |||
181 | wanphy: ethernet-phy@2 { | ||
182 | /* Marvell 88E1121R (port 1) */ | ||
183 | compatible = "ethernet-phy-id0141.0cb0", | ||
184 | "ethernet-phy-ieee802.3-c22"; | ||
185 | reg = <2>; | ||
186 | marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>; | ||
187 | }; | ||
188 | |||
189 | lan1phy: ethernet-phy@5 { | ||
190 | /* Marvell 88E1112 */ | ||
191 | compatible = "ethernet-phy-id0141.0cb0", | ||
192 | "ethernet-phy-ieee802.3-c22"; | ||
193 | reg = <5>; | ||
194 | marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>; | ||
195 | }; | ||
196 | |||
197 | lan2phy: ethernet-phy@7 { | ||
198 | /* Marvell 88E1112 */ | ||
199 | compatible = "ethernet-phy-id0141.0cb0", | ||
200 | "ethernet-phy-ieee802.3-c22"; | ||
201 | reg = <7>; | ||
202 | marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>; | ||
203 | }; | ||
204 | }; | ||
205 | }; | ||
206 | }; | ||
207 | |||
208 | ð { | ||
209 | status = "okay"; | ||
210 | |||
211 | ethernet-port@0 { | ||
212 | /* Hardwired to DSA switch */ | ||
213 | speed = <1000>; | ||
214 | duplex = <1>; | ||
215 | }; | ||
216 | }; | ||
217 | |||
218 | &pinctrl { | ||
219 | pinctrl-0 = <&pmx_pci_gpios>; | ||
220 | pinctrl-names = "default"; | ||
221 | |||
222 | pmx_power_led: pmx-power-led { | ||
223 | marvell,pins = "mpp0"; | ||
224 | marvell,function = "gpio"; | ||
225 | }; | ||
226 | |||
227 | pmx_reset_button: pmx-reset-button { | ||
228 | marvell,pins = "mpp1"; | ||
229 | marvell,function = "gpio"; | ||
230 | }; | ||
231 | |||
232 | pmx_power_led_blink: pmx-power-led-blink { | ||
233 | marvell,pins = "mpp2"; | ||
234 | marvell,function = "gpio"; | ||
235 | }; | ||
236 | |||
237 | pmx_wan_led: pmx-wan-led { | ||
238 | marvell,pins = "mpp3"; | ||
239 | marvell,function = "gpio"; | ||
240 | }; | ||
241 | |||
242 | pmx_pci_gpios: pmx-pci-gpios { | ||
243 | marvell,pins = "mpp4"; | ||
244 | marvell,function = "gpio"; | ||
245 | }; | ||
246 | }; | ||
247 | |||
248 | &uart0 { | ||
249 | /* Pin 1: Tx, Pin 7: Rx, Pin 8: Gnd */ | ||
250 | status = "okay"; | ||
251 | }; | ||
diff --git a/arch/arm/boot/dts/orion5x.dtsi b/arch/arm/boot/dts/orion5x.dtsi index e1b6d2a2ac49..fbccfbbab223 100644 --- a/arch/arm/boot/dts/orion5x.dtsi +++ b/arch/arm/boot/dts/orion5x.dtsi | |||
@@ -144,9 +144,10 @@ | |||
144 | 144 | ||
145 | wdt: wdt@20300 { | 145 | wdt: wdt@20300 { |
146 | compatible = "marvell,orion-wdt"; | 146 | compatible = "marvell,orion-wdt"; |
147 | reg = <0x20300 0x28>; | 147 | reg = <0x20300 0x28>, <0x20108 0x4>; |
148 | interrupt-parent = <&bridge_intc>; | 148 | interrupt-parent = <&bridge_intc>; |
149 | interrupts = <3>; | 149 | interrupts = <3>; |
150 | clocks = <&core_clk 0>; | ||
150 | status = "okay"; | 151 | status = "okay"; |
151 | }; | 152 | }; |
152 | 153 | ||