aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-24 20:27:34 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-24 20:27:34 -0500
commit4d8880a0ee5b3cdf7927c6cf59a164f352e4f436 (patch)
treeb11c4af3b283f4850da11f4be856b7a432375720
parent8e585a6c4abdef8562308f3f307aeea6cf168e8b (diff)
parente48ca29d30a10556eb7abd8d91980b8a57dabf10 (diff)
Merge tag 'devicetree-for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
Pull devicetree updates from Rob Herring: - Add new documents with guidelines for DT binding stability and review process. This is one of the outcomes of Kernel Summit DT discussions - Remove a bunch of device_type usage which is only for OF and deprecated with FDT - Fix a long standing issue with compatible string match ordering - Various minor binding documentation updates * tag 'devicetree-for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: dt-bindings: add rockchip vendor prefix serial: vt8500: Add missing binding document for arch-vt8500 serial driver. dt/bindings: submitting patches and ABI documents DT: Add vendor prefix for Emerging Display Technologies of: add vendor prefixe for EPFL of: add vendor prefix for Gumstix of: add vendor prefix for Ka-Ro electronics GmbH devicetree: macb: Document clock properties dts: bindings: trivial clock bindings doc fixes of: Fix __of_device_is_available check dt/bindings: Remove device_type "serial" from marvell,mv64360-mpsc dt/bindings: remove device_type "network" references dt/bindings: remove users of device_type "mdio" dt/bindings: Remove references to linux,phandle properties dt/bindings: Remove all references to device_type "ethernet-phy" of: irq: Ignore disabled intc's when searching map of: irq: Ignore disabled interrupt controllers OF: base: match each node compatible against all given matches first dt-bindings: add GIC-400 binding
-rw-r--r--Documentation/devicetree/bindings/ABI.txt39
-rw-r--r--Documentation/devicetree/bindings/arm/gic.txt1
-rw-r--r--Documentation/devicetree/bindings/clock/clock-bindings.txt2
-rw-r--r--Documentation/devicetree/bindings/marvell.txt8
-rw-r--r--Documentation/devicetree/bindings/net/macb.txt6
-rw-r--r--Documentation/devicetree/bindings/net/marvell-orion-net.txt3
-rw-r--r--Documentation/devicetree/bindings/net/phy.txt5
-rw-r--r--Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt2
-rw-r--r--Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt3
-rw-r--r--Documentation/devicetree/bindings/serial/vt8500-uart.txt26
-rw-r--r--Documentation/devicetree/bindings/submitting-patches.txt38
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt5
-rw-r--r--Documentation/devicetree/booting-without-of.txt3
-rw-r--r--arch/arm/boot/dts/dove.dtsi2
-rw-r--r--arch/arm/boot/dts/kirkwood-cloudbox.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-db.dtsi1
-rw-r--r--arch/arm/boot/dts/kirkwood-dnskw.dtsi1
-rw-r--r--arch/arm/boot/dts/kirkwood-dockstar.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-dreamplug.dts2
-rw-r--r--arch/arm/boot/dts/kirkwood-goflexnet.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts2
-rw-r--r--arch/arm/boot/dts/kirkwood-ib62x0.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-iconnect.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-km_kirkwood.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-lsxl.dtsi2
-rw-r--r--arch/arm/boot/dts/kirkwood-mplcec4.dts2
-rw-r--r--arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-ns2-common.dtsi1
-rw-r--r--arch/arm/boot/dts/kirkwood-openblocks_a6.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-openblocks_a7.dts2
-rw-r--r--arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi1
-rw-r--r--arch/arm/boot/dts/kirkwood-topkick.dts1
-rw-r--r--arch/arm/boot/dts/kirkwood-ts219.dtsi1
-rw-r--r--arch/arm/boot/dts/kirkwood.dtsi2
-rw-r--r--arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts1
-rw-r--r--arch/arm/boot/dts/orion5x.dtsi1
-rw-r--r--arch/microblaze/platform/generic/system.dts1
-rw-r--r--arch/powerpc/boot/dts/adder875-redboot.dts2
-rw-r--r--arch/powerpc/boot/dts/adder875-uboot.dts2
-rw-r--r--arch/powerpc/boot/dts/asp834x-redboot.dts2
-rw-r--r--arch/powerpc/boot/dts/c2k.dts5
-rw-r--r--arch/powerpc/boot/dts/ep8248e.dts3
-rw-r--r--arch/powerpc/boot/dts/ep88xc.dts2
-rw-r--r--arch/powerpc/boot/dts/gef_ppc9a.dts2
-rw-r--r--arch/powerpc/boot/dts/gef_sbc310.dts2
-rw-r--r--arch/powerpc/boot/dts/gef_sbc610.dts2
-rw-r--r--arch/powerpc/boot/dts/holly.dts1
-rw-r--r--arch/powerpc/boot/dts/ksi8560.dts3
-rw-r--r--arch/powerpc/boot/dts/mpc7448hpc2.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8272ads.dts3
-rw-r--r--arch/powerpc/boot/dts/mpc8308_p1m.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8308rdb.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8313erdb.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8315erdb.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc832x_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc832x_rdb.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8349emitx.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8349emitxgp.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc834x_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc836x_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc836x_rdk.dts4
-rw-r--r--arch/powerpc/boot/dts/mpc8377_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8377_rdb.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8377_wlan.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8378_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8378_rdb.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8379_mds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8379_rdb.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc8536ds.dtsi2
-rw-r--r--arch/powerpc/boot/dts/mpc8540ads.dts3
-rw-r--r--arch/powerpc/boot/dts/mpc8541cds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8544ds.dtsi2
-rw-r--r--arch/powerpc/boot/dts/mpc8548cds.dtsi4
-rw-r--r--arch/powerpc/boot/dts/mpc8555cds.dts2
-rw-r--r--arch/powerpc/boot/dts/mpc8560ads.dts4
-rw-r--r--arch/powerpc/boot/dts/mpc8568mds.dts8
-rw-r--r--arch/powerpc/boot/dts/mpc8569mds.dts6
-rw-r--r--arch/powerpc/boot/dts/mpc8641_hpcn.dts4
-rw-r--r--arch/powerpc/boot/dts/mpc8641_hpcn_36b.dts4
-rw-r--r--arch/powerpc/boot/dts/mpc866ads.dts1
-rw-r--r--arch/powerpc/boot/dts/mpc885ads.dts3
-rw-r--r--arch/powerpc/boot/dts/p1021mds.dts2
-rw-r--r--arch/powerpc/boot/dts/p1025rdb_32b.dts2
-rw-r--r--arch/powerpc/boot/dts/ppa8548.dts2
-rw-r--r--arch/powerpc/boot/dts/pq2fads.dts3
-rw-r--r--arch/powerpc/boot/dts/prpmc2800.dts5
-rw-r--r--arch/powerpc/boot/dts/sbc8349.dts2
-rw-r--r--arch/powerpc/boot/dts/sbc8548-post.dtsi2
-rw-r--r--arch/powerpc/boot/dts/sbc8641d.dts4
-rw-r--r--arch/powerpc/boot/dts/stx_gp3_8560.dts2
-rw-r--r--arch/powerpc/boot/dts/stxssa8555.dts2
-rw-r--r--arch/powerpc/boot/dts/tqm8540.dts3
-rw-r--r--arch/powerpc/boot/dts/tqm8541.dts3
-rw-r--r--arch/powerpc/boot/dts/tqm8548-bigflash.dts5
-rw-r--r--arch/powerpc/boot/dts/tqm8548.dts5
-rw-r--r--arch/powerpc/boot/dts/tqm8555.dts3
-rw-r--r--arch/powerpc/boot/dts/tqm8560.dts3
-rw-r--r--arch/powerpc/boot/dts/tqm8xx.dts1
-rw-r--r--arch/powerpc/sysdev/mv64x60_dev.c2
-rw-r--r--arch/powerpc/sysdev/mv64x60_udbg.c2
-rw-r--r--drivers/of/base.c56
-rw-r--r--drivers/of/irq.c6
103 files changed, 163 insertions, 231 deletions
diff --git a/Documentation/devicetree/bindings/ABI.txt b/Documentation/devicetree/bindings/ABI.txt
new file mode 100644
index 000000000000..d25f8d379680
--- /dev/null
+++ b/Documentation/devicetree/bindings/ABI.txt
@@ -0,0 +1,39 @@
1
2 Devicetree (DT) ABI
3
4I. Regarding stable bindings/ABI, we quote from the 2013 ARM mini-summit
5 summary document:
6
7 "That still leaves the question of, what does a stable binding look
8 like? Certainly a stable binding means that a newer kernel will not
9 break on an older device tree, but that doesn't mean the binding is
10 frozen for all time. Grant said there are ways to change bindings that
11 don't result in breakage. For instance, if a new property is added,
12 then default to the previous behaviour if it is missing. If a binding
13 truly needs an incompatible change, then change the compatible string
14 at the same time. The driver can bind against both the old and the
15 new. These guidelines aren't new, but they desperately need to be
16 documented."
17
18II. General binding rules
19
20 1) Maintainers, don't let perfect be the enemy of good. Don't hold up a
21 binding because it isn't perfect.
22
23 2) Use specific compatible strings so that if we need to add a feature (DMA)
24 in the future, we can create a new compatible string. See I.
25
26 3) Bindings can be augmented, but the driver shouldn't break when given
27 the old binding. ie. add additional properties, but don't change the
28 meaning of an existing property. For drivers, default to the original
29 behaviour when a newly added property is missing.
30
31 4) Don't submit bindings for staging or unstable. That will be decided by
32 the devicetree maintainers *after* discussion on the mailinglist.
33
34III. Notes
35
36 1) This document is intended as a general familiarization with the process as
37 decided at the 2013 Kernel Summit. When in doubt, the current word of the
38 devicetree maintainers overrules this document. In that situation, a patch
39 updating this document would be appreciated.
diff --git a/Documentation/devicetree/bindings/arm/gic.txt b/Documentation/devicetree/bindings/arm/gic.txt
index 3dfb0c0384f5..bae0d87a38b2 100644
--- a/Documentation/devicetree/bindings/arm/gic.txt
+++ b/Documentation/devicetree/bindings/arm/gic.txt
@@ -11,6 +11,7 @@ have PPIs or SGIs.
11Main node required properties: 11Main node required properties:
12 12
13- compatible : should be one of: 13- compatible : should be one of:
14 "arm,gic-400"
14 "arm,cortex-a15-gic" 15 "arm,cortex-a15-gic"
15 "arm,cortex-a9-gic" 16 "arm,cortex-a9-gic"
16 "arm,cortex-a7-gic" 17 "arm,cortex-a7-gic"
diff --git a/Documentation/devicetree/bindings/clock/clock-bindings.txt b/Documentation/devicetree/bindings/clock/clock-bindings.txt
index eb65d417f8c4..7c52c29d99fa 100644
--- a/Documentation/devicetree/bindings/clock/clock-bindings.txt
+++ b/Documentation/devicetree/bindings/clock/clock-bindings.txt
@@ -5,7 +5,7 @@ Sources of clock signal can be represented by any node in the device
5tree. Those nodes are designated as clock providers. Clock consumer 5tree. Those nodes are designated as clock providers. Clock consumer
6nodes use a phandle and clock specifier pair to connect clock provider 6nodes use a phandle and clock specifier pair to connect clock provider
7outputs to clock inputs. Similar to the gpio specifiers, a clock 7outputs to clock inputs. Similar to the gpio specifiers, a clock
8specifier is an array of one more more cells identifying the clock 8specifier is an array of zero, one or more cells identifying the clock
9output on a device. The length of a clock specifier is defined by the 9output on a device. The length of a clock specifier is defined by the
10value of a #clock-cells property in the clock provider node. 10value of a #clock-cells property in the clock provider node.
11 11
diff --git a/Documentation/devicetree/bindings/marvell.txt b/Documentation/devicetree/bindings/marvell.txt
index f7a0da6b4022..ea2b16ced49b 100644
--- a/Documentation/devicetree/bindings/marvell.txt
+++ b/Documentation/devicetree/bindings/marvell.txt
@@ -79,7 +79,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
79 Required properties: 79 Required properties:
80 - #address-cells : Should be <1> 80 - #address-cells : Should be <1>
81 - #size-cells : Should be <0> 81 - #size-cells : Should be <0>
82 - device_type : Should be "mdio"
83 - compatible : Should be "marvell,mv64360-mdio" 82 - compatible : Should be "marvell,mv64360-mdio"
84 83
85 Example: 84 Example:
@@ -87,7 +86,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
87 mdio { 86 mdio {
88 #address-cells = <1>; 87 #address-cells = <1>;
89 #size-cells = <0>; 88 #size-cells = <0>;
90 device_type = "mdio";
91 compatible = "marvell,mv64360-mdio"; 89 compatible = "marvell,mv64360-mdio";
92 90
93 ethernet-phy@0 { 91 ethernet-phy@0 {
@@ -132,7 +130,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
132 Ethernet port node 130 Ethernet port node
133 131
134 Required properties: 132 Required properties:
135 - device_type : Should be "network".
136 - compatible : Should be "marvell,mv64360-eth". 133 - compatible : Should be "marvell,mv64360-eth".
137 - reg : Should be <0>, <1>, or <2>, according to which registers 134 - reg : Should be <0>, <1>, or <2>, according to which registers
138 within the silicon block the device uses. 135 within the silicon block the device uses.
@@ -145,7 +142,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
145 142
146 Example Discovery Ethernet port node: 143 Example Discovery Ethernet port node:
147 ethernet@0 { 144 ethernet@0 {
148 device_type = "network";
149 compatible = "marvell,mv64360-eth"; 145 compatible = "marvell,mv64360-eth";
150 reg = <0>; 146 reg = <0>;
151 interrupts = <32>; 147 interrupts = <32>;
@@ -159,7 +155,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
159 c) Marvell Discovery PHY nodes 155 c) Marvell Discovery PHY nodes
160 156
161 Required properties: 157 Required properties:
162 - device_type : Should be "ethernet-phy"
163 - interrupts : <a> where a is the interrupt number for this phy. 158 - interrupts : <a> where a is the interrupt number for this phy.
164 - interrupt-parent : the phandle for the interrupt controller that 159 - interrupt-parent : the phandle for the interrupt controller that
165 services interrupts for this device. 160 services interrupts for this device.
@@ -167,7 +162,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
167 162
168 Example Discovery PHY node: 163 Example Discovery PHY node:
169 ethernet-phy@1 { 164 ethernet-phy@1 {
170 device_type = "ethernet-phy";
171 compatible = "broadcom,bcm5421"; 165 compatible = "broadcom,bcm5421";
172 interrupts = <76>; /* GPP 12 */ 166 interrupts = <76>; /* GPP 12 */
173 interrupt-parent = <&PIC>; 167 interrupt-parent = <&PIC>;
@@ -271,7 +265,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
271 serial port. 265 serial port.
272 266
273 Required properties: 267 Required properties:
274 - device_type : "serial"
275 - compatible : "marvell,mv64360-mpsc" 268 - compatible : "marvell,mv64360-mpsc"
276 - reg : Offset and length of the register set for this device 269 - reg : Offset and length of the register set for this device
277 - sdma : the phandle for the SDMA node used by this port 270 - sdma : the phandle for the SDMA node used by this port
@@ -288,7 +281,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
288 281
289 Example Discovery MPSCINTR node: 282 Example Discovery MPSCINTR node:
290 mpsc@8000 { 283 mpsc@8000 {
291 device_type = "serial";
292 compatible = "marvell,mv64360-mpsc"; 284 compatible = "marvell,mv64360-mpsc";
293 reg = <0x8000 0x38>; 285 reg = <0x8000 0x38>;
294 virtual-reg = <0xf1008000>; 286 virtual-reg = <0xf1008000>;
diff --git a/Documentation/devicetree/bindings/net/macb.txt b/Documentation/devicetree/bindings/net/macb.txt
index 4ff65047bb9a..70af2ec12b09 100644
--- a/Documentation/devicetree/bindings/net/macb.txt
+++ b/Documentation/devicetree/bindings/net/macb.txt
@@ -10,6 +10,10 @@ Required properties:
10- interrupts: Should contain macb interrupt 10- interrupts: Should contain macb interrupt
11- phy-mode: String, operation mode of the PHY interface. 11- phy-mode: String, operation mode of the PHY interface.
12 Supported values are: "mii", "rmii", "gmii", "rgmii". 12 Supported values are: "mii", "rmii", "gmii", "rgmii".
13- clock-names: Tuple listing input clock names.
14 Required elements: 'pclk', 'hclk'
15 Optional elements: 'tx_clk'
16- clocks: Phandles to input clocks.
13 17
14Optional properties: 18Optional properties:
15- local-mac-address: 6 bytes, mac address 19- local-mac-address: 6 bytes, mac address
@@ -22,4 +26,6 @@ Examples:
22 interrupts = <21>; 26 interrupts = <21>;
23 phy-mode = "rmii"; 27 phy-mode = "rmii";
24 local-mac-address = [3a 0e 03 04 05 06]; 28 local-mac-address = [3a 0e 03 04 05 06];
29 clock-names = "pclk", "hclk", "tx_clk";
30 clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>;
25 }; 31 };
diff --git a/Documentation/devicetree/bindings/net/marvell-orion-net.txt b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
index a73b79f227e1..c233b6114242 100644
--- a/Documentation/devicetree/bindings/net/marvell-orion-net.txt
+++ b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
@@ -32,7 +32,6 @@ Optional controller properties:
32* Ethernet port node 32* Ethernet port node
33 33
34Required port properties: 34Required port properties:
35 - device_type: shall be "network".
36 - compatible: shall be one of "marvell,orion-eth-port", 35 - compatible: shall be one of "marvell,orion-eth-port",
37 "marvell,kirkwood-eth-port". 36 "marvell,kirkwood-eth-port".
38 - reg: port number relative to ethernet controller, shall be 0, 1, or 2. 37 - reg: port number relative to ethernet controller, shall be 0, 1, or 2.
@@ -61,7 +60,6 @@ or
61mdio-bus { 60mdio-bus {
62 ... 61 ...
63 ethphy: ethernet-phy@8 { 62 ethphy: ethernet-phy@8 {
64 device_type = "ethernet-phy";
65 ... 63 ...
66 }; 64 };
67}; 65};
@@ -75,7 +73,6 @@ eth: ethernet-controller@72000 {
75 marvell,tx-checksum-limit = <1600>; 73 marvell,tx-checksum-limit = <1600>;
76 74
77 ethernet@0 { 75 ethernet@0 {
78 device_type = "network";
79 compatible = "marvell,orion-eth-port"; 76 compatible = "marvell,orion-eth-port";
80 reg = <0>; 77 reg = <0>;
81 interrupts = <29>; 78 interrupts = <29>;
diff --git a/Documentation/devicetree/bindings/net/phy.txt b/Documentation/devicetree/bindings/net/phy.txt
index 7cd18fbfcf71..85de6107b98f 100644
--- a/Documentation/devicetree/bindings/net/phy.txt
+++ b/Documentation/devicetree/bindings/net/phy.txt
@@ -2,7 +2,6 @@ PHY nodes
2 2
3Required properties: 3Required properties:
4 4
5 - device_type : Should be "ethernet-phy"
6 - interrupts : <a b> where a is the interrupt number and b is a 5 - interrupts : <a b> where a is the interrupt number and b is a
7 field that represents an encoding of the sense and level 6 field that represents an encoding of the sense and level
8 information for the interrupt. This should be encoded based on 7 information for the interrupt. This should be encoded based on
@@ -11,8 +10,6 @@ Required properties:
11 - interrupt-parent : the phandle for the interrupt controller that 10 - interrupt-parent : the phandle for the interrupt controller that
12 services interrupts for this device. 11 services interrupts for this device.
13 - reg : The ID number for the phy, usually a small integer 12 - reg : The ID number for the phy, usually a small integer
14 - linux,phandle : phandle for this node; likely referenced by an
15 ethernet controller node.
16 13
17Optional Properties: 14Optional Properties:
18 15
@@ -27,9 +24,7 @@ Example:
27 24
28ethernet-phy@0 { 25ethernet-phy@0 {
29 compatible = "ethernet-phy-ieee802.3-c22"; 26 compatible = "ethernet-phy-ieee802.3-c22";
30 linux,phandle = <2452000>;
31 interrupt-parent = <40000>; 27 interrupt-parent = <40000>;
32 interrupts = <35 1>; 28 interrupts = <35 1>;
33 reg = <0>; 29 reg = <0>;
34 device_type = "ethernet-phy";
35}; 30};
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
index 0e4269446580..29b28b8f9a89 100644
--- a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
+++ b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
@@ -10,7 +10,6 @@ Currently defined compatibles:
10Example: 10Example:
11 11
12 ethernet@11300 { 12 ethernet@11300 {
13 device_type = "network";
14 compatible = "fsl,mpc8272-fcc-enet", 13 compatible = "fsl,mpc8272-fcc-enet",
15 "fsl,cpm2-fcc-enet"; 14 "fsl,cpm2-fcc-enet";
16 reg = <11300 20 8400 100 11390 1>; 15 reg = <11300 20 8400 100 11390 1>;
@@ -33,7 +32,6 @@ fsl,mdc-pin : pin of port C controlling mdio clock
33 32
34Example: 33Example:
35 mdio@10d40 { 34 mdio@10d40 {
36 device_type = "mdio";
37 compatible = "fsl,mpc8272ads-mdio-bitbang", 35 compatible = "fsl,mpc8272ads-mdio-bitbang",
38 "fsl,mpc8272-mdio-bitbang", 36 "fsl,mpc8272-mdio-bitbang",
39 "fsl,cpm2-mdio-bitbang"; 37 "fsl,cpm2-mdio-bitbang";
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
index c5b43061db3a..ec6ee2e864a2 100644
--- a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
+++ b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
@@ -1,8 +1,6 @@
1* Pin configuration nodes 1* Pin configuration nodes
2 2
3Required properties: 3Required properties:
4- linux,phandle : phandle of this node; likely referenced by a QE
5 device.
6- pio-map : array of pin configurations. Each pin is defined by 6 4- pio-map : array of pin configurations. Each pin is defined by 6
7 integers. The six numbers are respectively: port, pin, dir, 5 integers. The six numbers are respectively: port, pin, dir,
8 open_drain, assignment, has_irq. 6 open_drain, assignment, has_irq.
@@ -29,7 +27,6 @@ Required properties:
29 27
30Example: 28Example:
31 ucc_pin@01 { 29 ucc_pin@01 {
32 linux,phandle = <140001>;
33 pio-map = < 30 pio-map = <
34 /* port pin dir open_drain assignment has_irq */ 31 /* port pin dir open_drain assignment has_irq */
35 0 3 1 0 1 0 /* TxD0 */ 32 0 3 1 0 1 0 /* TxD0 */
diff --git a/Documentation/devicetree/bindings/serial/vt8500-uart.txt b/Documentation/devicetree/bindings/serial/vt8500-uart.txt
new file mode 100644
index 000000000000..795c393d09c4
--- /dev/null
+++ b/Documentation/devicetree/bindings/serial/vt8500-uart.txt
@@ -0,0 +1,26 @@
1* VIA VT8500 and WonderMedia WM8xxx UART Controller
2
3Required properties:
4- compatible: should be "via,vt8500-uart"
5
6- reg: base physical address of the controller and length of memory mapped
7 region.
8
9- interrupts: hardware interrupt number
10
11- clocks: shall be the input parent clock phandle for the clock. This should
12 be the 24Mhz reference clock.
13
14Aliases may be defined to ensure the correct ordering of the uarts.
15
16Example:
17 aliases {
18 serial0 = &uart0;
19 };
20
21 uart0: serial@d8200000 {
22 compatible = "via,vt8500-uart";
23 reg = <0xd8200000 0x1040>;
24 interrupts = <32>;
25 clocks = <&clkuart0>;
26 };
diff --git a/Documentation/devicetree/bindings/submitting-patches.txt b/Documentation/devicetree/bindings/submitting-patches.txt
new file mode 100644
index 000000000000..042a0273b8ba
--- /dev/null
+++ b/Documentation/devicetree/bindings/submitting-patches.txt
@@ -0,0 +1,38 @@
1
2 Submitting devicetree (DT) binding patches
3
4I. For patch submitters
5
6 0) Normal patch submission rules from Documentation/SubmittingPatches
7 applies.
8
9 1) The Documentation/ portion of the patch should be a separate patch.
10
11 2) Submit the entire series to the devicetree mailinglist at
12
13 devicetree@vger.kernel.org
14
15II. For kernel maintainers
16
17 1) If you aren't comfortable reviewing a given binding, reply to it and ask
18 the devicetree maintainers for guidance. This will help them prioritize
19 which ones to review and which ones are ok to let go.
20
21 2) For driver (not subsystem) bindings: If you are comfortable with the
22 binding, and it hasn't received an Acked-by from the devicetree
23 maintainers after a few weeks, go ahead and take it.
24
25 Subsystem bindings (anything affecting more than a single device)
26 then getting a devicetree maintainer to review it is required.
27
28 3) For a series going though multiple trees, the binding patch should be
29 kept with the driver using the binding.
30
31III. Notes
32
33 0) Please see ...bindings/ABI.txt for details regarding devicetree ABI.
34
35 1) This document is intended as a general familiarization with the process as
36 decided at the 2013 Kernel Summit. When in doubt, the current word of the
37 devicetree maintainers overrules this document. In that situation, a patch
38 updating this document would be appreciated.
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 520596da7953..5780ffcd79af 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -27,13 +27,16 @@ cortina Cortina Systems, Inc.
27dallas Maxim Integrated Products (formerly Dallas Semiconductor) 27dallas Maxim Integrated Products (formerly Dallas Semiconductor)
28davicom DAVICOM Semiconductor, Inc. 28davicom DAVICOM Semiconductor, Inc.
29denx Denx Software Engineering 29denx Denx Software Engineering
30edt Emerging Display Technologies
30emmicro EM Microelectronic 31emmicro EM Microelectronic
32epfl Ecole Polytechnique Fédérale de Lausanne
31epson Seiko Epson Corp. 33epson Seiko Epson Corp.
32est ESTeem Wireless Modems 34est ESTeem Wireless Modems
33fsl Freescale Semiconductor 35fsl Freescale Semiconductor
34GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc. 36GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc.
35gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. 37gef GE Fanuc Intelligent Platforms Embedded Systems, Inc.
36gmt Global Mixed-mode Technology, Inc. 38gmt Global Mixed-mode Technology, Inc.
39gumstix Gumstix, Inc.
37haoyu Haoyu Microelectronic Co. Ltd. 40haoyu Haoyu Microelectronic Co. Ltd.
38hisilicon Hisilicon Limited. 41hisilicon Hisilicon Limited.
39hp Hewlett Packard 42hp Hewlett Packard
@@ -42,6 +45,7 @@ idt Integrated Device Technologies, Inc.
42img Imagination Technologies Ltd. 45img Imagination Technologies Ltd.
43intercontrol Inter Control Group 46intercontrol Inter Control Group
44isl Intersil 47isl Intersil
48karo Ka-Ro electronics GmbH
45lg LG Corporation 49lg LG Corporation
46linux Linux-specific binding 50linux Linux-specific binding
47lsi LSI Corp. (LSI Logic) 51lsi LSI Corp. (LSI Logic)
@@ -64,6 +68,7 @@ ralink Mediatek/Ralink Technology Corp.
64ramtron Ramtron International 68ramtron Ramtron International
65realtek Realtek Semiconductor Corp. 69realtek Realtek Semiconductor Corp.
66renesas Renesas Electronics Corporation 70renesas Renesas Electronics Corporation
71rockchip Fuzhou Rockchip Electronics Co., Ltd
67samsung Samsung Semiconductor 72samsung Samsung Semiconductor
68sbs Smart Battery System 73sbs Smart Battery System
69schindler Schindler 74schindler Schindler
diff --git a/Documentation/devicetree/booting-without-of.txt b/Documentation/devicetree/booting-without-of.txt
index b2fb2f5e1922..1f013bd0d320 100644
--- a/Documentation/devicetree/booting-without-of.txt
+++ b/Documentation/devicetree/booting-without-of.txt
@@ -1364,19 +1364,16 @@ Appendix A - Sample SOC node for MPC8540
1364 phy0: ethernet-phy@0 { 1364 phy0: ethernet-phy@0 {
1365 interrupts = <5 1>; 1365 interrupts = <5 1>;
1366 reg = <0>; 1366 reg = <0>;
1367 device_type = "ethernet-phy";
1368 }; 1367 };
1369 1368
1370 phy1: ethernet-phy@1 { 1369 phy1: ethernet-phy@1 {
1371 interrupts = <5 1>; 1370 interrupts = <5 1>;
1372 reg = <1>; 1371 reg = <1>;
1373 device_type = "ethernet-phy";
1374 }; 1372 };
1375 1373
1376 phy3: ethernet-phy@3 { 1374 phy3: ethernet-phy@3 {
1377 interrupts = <7 1>; 1375 interrupts = <7 1>;
1378 reg = <3>; 1376 reg = <3>;
1379 device_type = "ethernet-phy";
1380 }; 1377 };
1381 }; 1378 };
1382 }; 1379 };
diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi
index 8de1031233ae..2b76524f4aa7 100644
--- a/arch/arm/boot/dts/dove.dtsi
+++ b/arch/arm/boot/dts/dove.dtsi
@@ -296,7 +296,6 @@
296 status = "disabled"; 296 status = "disabled";
297 297
298 ethernet-port@0 { 298 ethernet-port@0 {
299 device_type = "network";
300 compatible = "marvell,orion-eth-port"; 299 compatible = "marvell,orion-eth-port";
301 reg = <0>; 300 reg = <0>;
302 interrupts = <29>; 301 interrupts = <29>;
@@ -316,7 +315,6 @@
316 status = "disabled"; 315 status = "disabled";
317 316
318 ethphy: ethernet-phy { 317 ethphy: ethernet-phy {
319 device_type = "ethernet-phy";
320 /* set phy address in board file */ 318 /* set phy address in board file */
321 }; 319 };
322 }; 320 };
diff --git a/arch/arm/boot/dts/kirkwood-cloudbox.dts b/arch/arm/boot/dts/kirkwood-cloudbox.dts
index bb4df405527c..0e06fd3cee4d 100644
--- a/arch/arm/boot/dts/kirkwood-cloudbox.dts
+++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
@@ -94,7 +94,6 @@
94 status = "okay"; 94 status = "okay";
95 95
96 ethphy0: ethernet-phy@0 { 96 ethphy0: ethernet-phy@0 {
97 device_type = "ethernet-phy";
98 reg = <0>; 97 reg = <0>;
99 }; 98 };
100}; 99};
diff --git a/arch/arm/boot/dts/kirkwood-db.dtsi b/arch/arm/boot/dts/kirkwood-db.dtsi
index afebc1570318..02d1225ef99f 100644
--- a/arch/arm/boot/dts/kirkwood-db.dtsi
+++ b/arch/arm/boot/dts/kirkwood-db.dtsi
@@ -84,7 +84,6 @@
84 status = "okay"; 84 status = "okay";
85 85
86 ethphy0: ethernet-phy@8 { 86 ethphy0: ethernet-phy@8 {
87 device_type = "ethernet-phy";
88 reg = <8>; 87 reg = <8>;
89 }; 88 };
90}; 89};
diff --git a/arch/arm/boot/dts/kirkwood-dnskw.dtsi b/arch/arm/boot/dts/kirkwood-dnskw.dtsi
index 12087566ac6d..d5aa9564a287 100644
--- a/arch/arm/boot/dts/kirkwood-dnskw.dtsi
+++ b/arch/arm/boot/dts/kirkwood-dnskw.dtsi
@@ -224,7 +224,6 @@
224 status = "okay"; 224 status = "okay";
225 225
226 ethphy0: ethernet-phy@8 { 226 ethphy0: ethernet-phy@8 {
227 device_type = "ethernet-phy";
228 reg = <8>; 227 reg = <8>;
229 }; 228 };
230}; 229};
diff --git a/arch/arm/boot/dts/kirkwood-dockstar.dts b/arch/arm/boot/dts/kirkwood-dockstar.dts
index 2a41c75c5c21..f31312ebd0d6 100644
--- a/arch/arm/boot/dts/kirkwood-dockstar.dts
+++ b/arch/arm/boot/dts/kirkwood-dockstar.dts
@@ -95,7 +95,6 @@
95 status = "okay"; 95 status = "okay";
96 96
97 ethphy0: ethernet-phy@0 { 97 ethphy0: ethernet-phy@0 {
98 device_type = "ethernet-phy";
99 compatible = "marvell,88e1116"; 98 compatible = "marvell,88e1116";
100 reg = <0>; 99 reg = <0>;
101 }; 100 };
diff --git a/arch/arm/boot/dts/kirkwood-dreamplug.dts b/arch/arm/boot/dts/kirkwood-dreamplug.dts
index a7558375e06f..ef3463e0ae19 100644
--- a/arch/arm/boot/dts/kirkwood-dreamplug.dts
+++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts
@@ -104,12 +104,10 @@
104 status = "okay"; 104 status = "okay";
105 105
106 ethphy0: ethernet-phy@0 { 106 ethphy0: ethernet-phy@0 {
107 device_type = "ethernet-phy";
108 reg = <0>; 107 reg = <0>;
109 }; 108 };
110 109
111 ethphy1: ethernet-phy@1 { 110 ethphy1: ethernet-phy@1 {
112 device_type = "ethernet-phy";
113 reg = <1>; 111 reg = <1>;
114 }; 112 };
115}; 113};
diff --git a/arch/arm/boot/dts/kirkwood-goflexnet.dts b/arch/arm/boot/dts/kirkwood-goflexnet.dts
index c2e512953570..eb9329420107 100644
--- a/arch/arm/boot/dts/kirkwood-goflexnet.dts
+++ b/arch/arm/boot/dts/kirkwood-goflexnet.dts
@@ -176,7 +176,6 @@
176 status = "okay"; 176 status = "okay";
177 177
178 ethphy0: ethernet-phy@0 { 178 ethphy0: ethernet-phy@0 {
179 device_type = "ethernet-phy";
180 reg = <0>; 179 reg = <0>;
181 }; 180 };
182}; 181};
diff --git a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
index 0b557d5cb723..2d51fce74a5a 100644
--- a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
+++ b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
@@ -101,13 +101,11 @@
101 status = "okay"; 101 status = "okay";
102 102
103 ethphy0: ethernet-phy@0 { 103 ethphy0: ethernet-phy@0 {
104 device_type = "ethernet-phy";
105 compatible = "marvell,88e1121"; 104 compatible = "marvell,88e1121";
106 reg = <0>; 105 reg = <0>;
107 }; 106 };
108 107
109 ethphy1: ethernet-phy@1 { 108 ethphy1: ethernet-phy@1 {
110 device_type = "ethernet-phy";
111 compatible = "marvell,88e1121"; 109 compatible = "marvell,88e1121";
112 reg = <1>; 110 reg = <1>;
113 }; 111 };
diff --git a/arch/arm/boot/dts/kirkwood-ib62x0.dts b/arch/arm/boot/dts/kirkwood-ib62x0.dts
index 6ccc78866e6d..a1add3f215e3 100644
--- a/arch/arm/boot/dts/kirkwood-ib62x0.dts
+++ b/arch/arm/boot/dts/kirkwood-ib62x0.dts
@@ -133,7 +133,6 @@
133 status = "okay"; 133 status = "okay";
134 134
135 ethphy0: ethernet-phy@8 { 135 ethphy0: ethernet-phy@8 {
136 device_type = "ethernet-phy";
137 reg = <8>; 136 reg = <8>;
138 }; 137 };
139}; 138};
diff --git a/arch/arm/boot/dts/kirkwood-iconnect.dts b/arch/arm/boot/dts/kirkwood-iconnect.dts
index f7636291de77..8d8c80e3656d 100644
--- a/arch/arm/boot/dts/kirkwood-iconnect.dts
+++ b/arch/arm/boot/dts/kirkwood-iconnect.dts
@@ -183,7 +183,6 @@
183 status = "okay"; 183 status = "okay";
184 184
185 ethphy0: ethernet-phy@11 { 185 ethphy0: ethernet-phy@11 {
186 device_type = "ethernet-phy";
187 reg = <11>; 186 reg = <11>;
188 }; 187 };
189}; 188};
diff --git a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
index 589000631b5a..59e7a5adeedb 100644
--- a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
+++ b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
@@ -200,7 +200,6 @@
200 status = "okay"; 200 status = "okay";
201 201
202 ethphy1: ethernet-phy@11 { 202 ethphy1: ethernet-phy@11 {
203 device_type = "ethernet-phy";
204 reg = <11>; 203 reg = <11>;
205 }; 204 };
206}; 205};
diff --git a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
index 5b5808ebc6e0..04a1e44541b3 100644
--- a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
+++ b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
@@ -55,7 +55,6 @@
55 status = "okay"; 55 status = "okay";
56 56
57 ethphy0: ethernet-phy@0 { 57 ethphy0: ethernet-phy@0 {
58 device_type = "ethernet-phy";
59 reg = <0>; 58 reg = <0>;
60 }; 59 };
61}; 60};
diff --git a/arch/arm/boot/dts/kirkwood-lsxl.dtsi b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
index fc1cd3b7b968..1656653d339b 100644
--- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
+++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
@@ -212,12 +212,10 @@
212 status = "okay"; 212 status = "okay";
213 213
214 ethphy0: ethernet-phy@0 { 214 ethphy0: ethernet-phy@0 {
215 device_type = "ethernet-phy";
216 reg = <0>; 215 reg = <0>;
217 }; 216 };
218 217
219 ethphy1: ethernet-phy@8 { 218 ethphy1: ethernet-phy@8 {
220 device_type = "ethernet-phy";
221 reg = <8>; 219 reg = <8>;
222 }; 220 };
223}; 221};
diff --git a/arch/arm/boot/dts/kirkwood-mplcec4.dts b/arch/arm/boot/dts/kirkwood-mplcec4.dts
index c20607cd7d7c..73722c067501 100644
--- a/arch/arm/boot/dts/kirkwood-mplcec4.dts
+++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts
@@ -197,12 +197,10 @@
197 status = "okay"; 197 status = "okay";
198 198
199 ethphy0: ethernet-phy@1 { 199 ethphy0: ethernet-phy@1 {
200 device_type = "ethernet-phy";
201 reg = <1>; 200 reg = <1>;
202 }; 201 };
203 202
204 ethphy1: ethernet-phy@2 { 203 ethphy1: ethernet-phy@2 {
205 device_type = "ethernet-phy";
206 reg = <2>; 204 reg = <2>;
207 }; 205 };
208}; 206};
diff --git a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
index 4d2a8db9ab77..4838478019cc 100644
--- a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
+++ b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
@@ -242,7 +242,6 @@
242 status = "okay"; 242 status = "okay";
243 243
244 ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */ 244 ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */
245 device_type = "ethernet-phy";
246 reg = <0>; 245 reg = <0>;
247 }; 246 };
248}; 247};
diff --git a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
index ae1ccbe41029..743152f31a81 100644
--- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
+++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
@@ -89,7 +89,6 @@
89 status = "okay"; 89 status = "okay";
90 90
91 ethphy0: ethernet-phy { 91 ethphy0: ethernet-phy {
92 device_type = "ethernet-phy";
93 /* overwrite reg property in board file */ 92 /* overwrite reg property in board file */
94 }; 93 };
95}; 94};
diff --git a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
index 5c6a4f1b4e93..b88da9392c32 100644
--- a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
+++ b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
@@ -171,7 +171,6 @@
171 status = "okay"; 171 status = "okay";
172 172
173 ethphy0: ethernet-phy@0 { 173 ethphy0: ethernet-phy@0 {
174 device_type = "ethernet-phy";
175 reg = <0>; 174 reg = <0>;
176 }; 175 };
177}; 176};
diff --git a/arch/arm/boot/dts/kirkwood-openblocks_a7.dts b/arch/arm/boot/dts/kirkwood-openblocks_a7.dts
index c054ef61cff5..b2f7cae06839 100644
--- a/arch/arm/boot/dts/kirkwood-openblocks_a7.dts
+++ b/arch/arm/boot/dts/kirkwood-openblocks_a7.dts
@@ -196,12 +196,10 @@
196 status = "okay"; 196 status = "okay";
197 197
198 ethphy0: ethernet-phy@0 { 198 ethphy0: ethernet-phy@0 {
199 device_type = "ethernet-phy";
200 reg = <0>; 199 reg = <0>;
201 }; 200 };
202 201
203 ethphy1: ethernet-phy@1 { 202 ethphy1: ethernet-phy@1 {
204 device_type = "ethernet-phy";
205 reg = <1>; 203 reg = <1>;
206 }; 204 };
207}; 205};
diff --git a/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi b/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
index 7b1cd993e891..1ff848d570a9 100644
--- a/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
+++ b/arch/arm/boot/dts/kirkwood-sheevaplug-common.dtsi
@@ -96,7 +96,6 @@
96 status = "okay"; 96 status = "okay";
97 97
98 ethphy0: ethernet-phy@0 { 98 ethphy0: ethernet-phy@0 {
99 device_type = "ethernet-phy";
100 reg = <0>; 99 reg = <0>;
101 }; 100 };
102}; 101};
diff --git a/arch/arm/boot/dts/kirkwood-topkick.dts b/arch/arm/boot/dts/kirkwood-topkick.dts
index 40d6adf678ca..5fc817c2cb87 100644
--- a/arch/arm/boot/dts/kirkwood-topkick.dts
+++ b/arch/arm/boot/dts/kirkwood-topkick.dts
@@ -208,7 +208,6 @@
208 status = "okay"; 208 status = "okay";
209 209
210 ethphy0: ethernet-phy@0 { 210 ethphy0: ethernet-phy@0 {
211 device_type = "ethernet-phy";
212 reg = <0>; 211 reg = <0>;
213 }; 212 };
214}; 213};
diff --git a/arch/arm/boot/dts/kirkwood-ts219.dtsi b/arch/arm/boot/dts/kirkwood-ts219.dtsi
index 39158cf16258..911f3a8cee23 100644
--- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
+++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
@@ -104,7 +104,6 @@
104 status = "okay"; 104 status = "okay";
105 105
106 ethphy0: ethernet-phy { 106 ethphy0: ethernet-phy {
107 device_type = "ethernet-phy";
108 /* overwrite reg property in board file */ 107 /* overwrite reg property in board file */
109 }; 108 };
110}; 109};
diff --git a/arch/arm/boot/dts/kirkwood.dtsi b/arch/arm/boot/dts/kirkwood.dtsi
index 81e6c409284e..6abf44d257df 100644
--- a/arch/arm/boot/dts/kirkwood.dtsi
+++ b/arch/arm/boot/dts/kirkwood.dtsi
@@ -243,7 +243,6 @@
243 status = "disabled"; 243 status = "disabled";
244 244
245 ethernet0-port@0 { 245 ethernet0-port@0 {
246 device_type = "network";
247 compatible = "marvell,kirkwood-eth-port"; 246 compatible = "marvell,kirkwood-eth-port";
248 reg = <0>; 247 reg = <0>;
249 interrupts = <11>; 248 interrupts = <11>;
@@ -275,7 +274,6 @@
275 status = "disabled"; 274 status = "disabled";
276 275
277 ethernet1-port@0 { 276 ethernet1-port@0 {
278 device_type = "network";
279 compatible = "marvell,kirkwood-eth-port"; 277 compatible = "marvell,kirkwood-eth-port";
280 reg = <0>; 278 reg = <0>;
281 interrupts = <15>; 279 interrupts = <15>;
diff --git a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
index fcc5bb63f03a..5ed6c1376901 100644
--- a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
+++ b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
@@ -58,7 +58,6 @@
58 status = "okay"; 58 status = "okay";
59 59
60 ethphy: ethernet-phy { 60 ethphy: ethernet-phy {
61 device_type = "ethernet-phy";
62 reg = <8>; 61 reg = <8>;
63 }; 62 };
64}; 63};
diff --git a/arch/arm/boot/dts/orion5x.dtsi b/arch/arm/boot/dts/orion5x.dtsi
index 9f51538cd9ef..174d89241f70 100644
--- a/arch/arm/boot/dts/orion5x.dtsi
+++ b/arch/arm/boot/dts/orion5x.dtsi
@@ -120,7 +120,6 @@
120 status = "disabled"; 120 status = "disabled";
121 121
122 ethernet-port@0 { 122 ethernet-port@0 {
123 device_type = "network";
124 compatible = "marvell,orion-eth-port"; 123 compatible = "marvell,orion-eth-port";
125 reg = <0>; 124 reg = <0>;
126 /* overwrite MAC address in bootloader */ 125 /* overwrite MAC address in bootloader */
diff --git a/arch/microblaze/platform/generic/system.dts b/arch/microblaze/platform/generic/system.dts
index 3f85df2b73b3..b620da23febb 100644
--- a/arch/microblaze/platform/generic/system.dts
+++ b/arch/microblaze/platform/generic/system.dts
@@ -222,7 +222,6 @@
222 ranges ; 222 ranges ;
223 ethernet@81c00000 { 223 ethernet@81c00000 {
224 compatible = "xlnx,xps-ll-temac-1.01.b", "xlnx,xps-ll-temac-1.00.a"; 224 compatible = "xlnx,xps-ll-temac-1.01.b", "xlnx,xps-ll-temac-1.00.a";
225 device_type = "network";
226 interrupt-parent = <&xps_intc_0>; 225 interrupt-parent = <&xps_intc_0>;
227 interrupts = < 5 2 >; 226 interrupts = < 5 2 >;
228 llink-connected = <&PIM3>; 227 llink-connected = <&PIM3>;
diff --git a/arch/powerpc/boot/dts/adder875-redboot.dts b/arch/powerpc/boot/dts/adder875-redboot.dts
index 28e9cd3d7a21..083984720b2f 100644
--- a/arch/powerpc/boot/dts/adder875-redboot.dts
+++ b/arch/powerpc/boot/dts/adder875-redboot.dts
@@ -87,12 +87,10 @@
87 87
88 PHY0: ethernet-phy@0 { 88 PHY0: ethernet-phy@0 {
89 reg = <0>; 89 reg = <0>;
90 device_type = "ethernet-phy";
91 }; 90 };
92 91
93 PHY1: ethernet-phy@1 { 92 PHY1: ethernet-phy@1 {
94 reg = <1>; 93 reg = <1>;
95 device_type = "ethernet-phy";
96 }; 94 };
97 }; 95 };
98 96
diff --git a/arch/powerpc/boot/dts/adder875-uboot.dts b/arch/powerpc/boot/dts/adder875-uboot.dts
index 54fb60ec03e5..e4554caf8f8d 100644
--- a/arch/powerpc/boot/dts/adder875-uboot.dts
+++ b/arch/powerpc/boot/dts/adder875-uboot.dts
@@ -86,12 +86,10 @@
86 86
87 PHY0: ethernet-phy@0 { 87 PHY0: ethernet-phy@0 {
88 reg = <0>; 88 reg = <0>;
89 device_type = "ethernet-phy";
90 }; 89 };
91 90
92 PHY1: ethernet-phy@1 { 91 PHY1: ethernet-phy@1 {
93 reg = <1>; 92 reg = <1>;
94 device_type = "ethernet-phy";
95 }; 93 };
96 }; 94 };
97 95
diff --git a/arch/powerpc/boot/dts/asp834x-redboot.dts b/arch/powerpc/boot/dts/asp834x-redboot.dts
index 227290db866d..9198745f45fb 100644
--- a/arch/powerpc/boot/dts/asp834x-redboot.dts
+++ b/arch/powerpc/boot/dts/asp834x-redboot.dts
@@ -207,14 +207,12 @@
207 interrupt-parent = <&ipic>; 207 interrupt-parent = <&ipic>;
208 interrupts = <17 0x8>; 208 interrupts = <17 0x8>;
209 reg = <0x1>; 209 reg = <0x1>;
210 device_type = "ethernet-phy";
211 }; 210 };
212 211
213 phy1: ethernet-phy@1 { 212 phy1: ethernet-phy@1 {
214 interrupt-parent = <&ipic>; 213 interrupt-parent = <&ipic>;
215 interrupts = <18 0x8>; 214 interrupts = <18 0x8>;
216 reg = <0x2>; 215 reg = <0x2>;
217 device_type = "ethernet-phy";
218 }; 216 };
219 217
220 tbi0: tbi-phy@11 { 218 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/c2k.dts b/arch/powerpc/boot/dts/c2k.dts
index f5d625fa3e52..1e32903cb0a8 100644
--- a/arch/powerpc/boot/dts/c2k.dts
+++ b/arch/powerpc/boot/dts/c2k.dts
@@ -73,19 +73,16 @@
73 compatible = "marvell,mv64360-mdio"; 73 compatible = "marvell,mv64360-mdio";
74 reg = <0x2000 4>; 74 reg = <0x2000 4>;
75 PHY0: ethernet-phy@0 { 75 PHY0: ethernet-phy@0 {
76 device_type = "ethernet-phy";
77 interrupts = <76>; /* GPP 12 */ 76 interrupts = <76>; /* GPP 12 */
78 interrupt-parent = <&PIC>; 77 interrupt-parent = <&PIC>;
79 reg = <0>; 78 reg = <0>;
80 }; 79 };
81 PHY1: ethernet-phy@1 { 80 PHY1: ethernet-phy@1 {
82 device_type = "ethernet-phy";
83 interrupts = <76>; /* GPP 12 */ 81 interrupts = <76>; /* GPP 12 */
84 interrupt-parent = <&PIC>; 82 interrupt-parent = <&PIC>;
85 reg = <1>; 83 reg = <1>;
86 }; 84 };
87 PHY2: ethernet-phy@2 { 85 PHY2: ethernet-phy@2 {
88 device_type = "ethernet-phy";
89 interrupts = <76>; /* GPP 12 */ 86 interrupts = <76>; /* GPP 12 */
90 interrupt-parent = <&PIC>; 87 interrupt-parent = <&PIC>;
91 reg = <2>; 88 reg = <2>;
@@ -174,7 +171,6 @@
174 }; 171 };
175 172
176 MPSC0: mpsc@8000 { 173 MPSC0: mpsc@8000 {
177 device_type = "serial";
178 compatible = "marvell,mv64360-mpsc"; 174 compatible = "marvell,mv64360-mpsc";
179 reg = <0x8000 0x38>; 175 reg = <0x8000 0x38>;
180 virtual-reg = <0xd8008000>; 176 virtual-reg = <0xd8008000>;
@@ -189,7 +185,6 @@
189 }; 185 };
190 186
191 MPSC1: mpsc@9000 { 187 MPSC1: mpsc@9000 {
192 device_type = "serial";
193 compatible = "marvell,mv64360-mpsc"; 188 compatible = "marvell,mv64360-mpsc";
194 reg = <0x9000 0x38>; 189 reg = <0x9000 0x38>;
195 virtual-reg = <0xd8009000>; 190 virtual-reg = <0xd8009000>;
diff --git a/arch/powerpc/boot/dts/ep8248e.dts b/arch/powerpc/boot/dts/ep8248e.dts
index 756758fb5b7b..8b3a49f34f5a 100644
--- a/arch/powerpc/boot/dts/ep8248e.dts
+++ b/arch/powerpc/boot/dts/ep8248e.dts
@@ -67,7 +67,6 @@
67 ranges; 67 ranges;
68 68
69 mdio { 69 mdio {
70 device_type = "mdio";
71 compatible = "fsl,ep8248e-mdio-bitbang"; 70 compatible = "fsl,ep8248e-mdio-bitbang";
72 #address-cells = <1>; 71 #address-cells = <1>;
73 #size-cells = <0>; 72 #size-cells = <0>;
@@ -76,13 +75,11 @@
76 PHY0: ethernet-phy@0 { 75 PHY0: ethernet-phy@0 {
77 interrupt-parent = <&PIC>; 76 interrupt-parent = <&PIC>;
78 reg = <0>; 77 reg = <0>;
79 device_type = "ethernet-phy";
80 }; 78 };
81 79
82 PHY1: ethernet-phy@1 { 80 PHY1: ethernet-phy@1 {
83 interrupt-parent = <&PIC>; 81 interrupt-parent = <&PIC>;
84 reg = <1>; 82 reg = <1>;
85 device_type = "ethernet-phy";
86 }; 83 };
87 }; 84 };
88 }; 85 };
diff --git a/arch/powerpc/boot/dts/ep88xc.dts b/arch/powerpc/boot/dts/ep88xc.dts
index ae57d6240120..2aa5bf559645 100644
--- a/arch/powerpc/boot/dts/ep88xc.dts
+++ b/arch/powerpc/boot/dts/ep88xc.dts
@@ -85,12 +85,10 @@
85 85
86 PHY0: ethernet-phy@0 { 86 PHY0: ethernet-phy@0 {
87 reg = <0x0>; 87 reg = <0x0>;
88 device_type = "ethernet-phy";
89 }; 88 };
90 89
91 PHY1: ethernet-phy@1 { 90 PHY1: ethernet-phy@1 {
92 reg = <0x1>; 91 reg = <0x1>;
93 device_type = "ethernet-phy";
94 }; 92 };
95 }; 93 };
96 94
diff --git a/arch/powerpc/boot/dts/gef_ppc9a.dts b/arch/powerpc/boot/dts/gef_ppc9a.dts
index 38dcb96c8e26..83eb0fda2666 100644
--- a/arch/powerpc/boot/dts/gef_ppc9a.dts
+++ b/arch/powerpc/boot/dts/gef_ppc9a.dts
@@ -292,13 +292,11 @@
292 interrupt-parent = <&gef_pic>; 292 interrupt-parent = <&gef_pic>;
293 interrupts = <0x9 0x4>; 293 interrupts = <0x9 0x4>;
294 reg = <1>; 294 reg = <1>;
295 device_type = "ethernet-phy";
296 }; 295 };
297 phy2: ethernet-phy@2 { 296 phy2: ethernet-phy@2 {
298 interrupt-parent = <&gef_pic>; 297 interrupt-parent = <&gef_pic>;
299 interrupts = <0x8 0x4>; 298 interrupts = <0x8 0x4>;
300 reg = <3>; 299 reg = <3>;
301 device_type = "ethernet-phy";
302 }; 300 };
303 tbi0: tbi-phy@11 { 301 tbi0: tbi-phy@11 {
304 reg = <0x11>; 302 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/gef_sbc310.dts b/arch/powerpc/boot/dts/gef_sbc310.dts
index 5ab8932d09b7..d426dd3de9ef 100644
--- a/arch/powerpc/boot/dts/gef_sbc310.dts
+++ b/arch/powerpc/boot/dts/gef_sbc310.dts
@@ -290,13 +290,11 @@
290 interrupt-parent = <&gef_pic>; 290 interrupt-parent = <&gef_pic>;
291 interrupts = <0x9 0x4>; 291 interrupts = <0x9 0x4>;
292 reg = <1>; 292 reg = <1>;
293 device_type = "ethernet-phy";
294 }; 293 };
295 phy2: ethernet-phy@2 { 294 phy2: ethernet-phy@2 {
296 interrupt-parent = <&gef_pic>; 295 interrupt-parent = <&gef_pic>;
297 interrupts = <0x8 0x4>; 296 interrupts = <0x8 0x4>;
298 reg = <3>; 297 reg = <3>;
299 device_type = "ethernet-phy";
300 }; 298 };
301 tbi0: tbi-phy@11 { 299 tbi0: tbi-phy@11 {
302 reg = <0x11>; 300 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/gef_sbc610.dts b/arch/powerpc/boot/dts/gef_sbc610.dts
index d5341f5741aa..5db3399b76b7 100644
--- a/arch/powerpc/boot/dts/gef_sbc610.dts
+++ b/arch/powerpc/boot/dts/gef_sbc610.dts
@@ -290,13 +290,11 @@
290 interrupt-parent = <&gef_pic>; 290 interrupt-parent = <&gef_pic>;
291 interrupts = <0x9 0x4>; 291 interrupts = <0x9 0x4>;
292 reg = <1>; 292 reg = <1>;
293 device_type = "ethernet-phy";
294 }; 293 };
295 phy2: ethernet-phy@2 { 294 phy2: ethernet-phy@2 {
296 interrupt-parent = <&gef_pic>; 295 interrupt-parent = <&gef_pic>;
297 interrupts = <0x8 0x4>; 296 interrupts = <0x8 0x4>;
298 reg = <3>; 297 reg = <3>;
299 device_type = "ethernet-phy";
300 }; 298 };
301 tbi0: tbi-phy@11 { 299 tbi0: tbi-phy@11 {
302 reg = <0x11>; 300 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/holly.dts b/arch/powerpc/boot/dts/holly.dts
index c6e11ebecebb..43e6f0c8e449 100644
--- a/arch/powerpc/boot/dts/holly.dts
+++ b/arch/powerpc/boot/dts/holly.dts
@@ -58,7 +58,6 @@
58 }; 58 };
59 59
60 MDIO: mdio@6000 { 60 MDIO: mdio@6000 {
61 device_type = "mdio";
62 compatible = "tsi109-mdio", "tsi108-mdio"; 61 compatible = "tsi109-mdio", "tsi108-mdio";
63 reg = <0x00006000 0x00000050>; 62 reg = <0x00006000 0x00000050>;
64 #address-cells = <1>; 63 #address-cells = <1>;
diff --git a/arch/powerpc/boot/dts/ksi8560.dts b/arch/powerpc/boot/dts/ksi8560.dts
index 296c572ea605..5d68236e7c3c 100644
--- a/arch/powerpc/boot/dts/ksi8560.dts
+++ b/arch/powerpc/boot/dts/ksi8560.dts
@@ -161,13 +161,11 @@
161 PHY1: ethernet-phy@1 { 161 PHY1: ethernet-phy@1 {
162 interrupt-parent = <&mpic>; 162 interrupt-parent = <&mpic>;
163 reg = <0x1>; 163 reg = <0x1>;
164 device_type = "ethernet-phy";
165 }; 164 };
166 165
167 PHY2: ethernet-phy@2 { 166 PHY2: ethernet-phy@2 {
168 interrupt-parent = <&mpic>; 167 interrupt-parent = <&mpic>;
169 reg = <0x2>; 168 reg = <0x2>;
170 device_type = "ethernet-phy";
171 }; 169 };
172 170
173 tbi0: tbi-phy@11 { 171 tbi0: tbi-phy@11 {
@@ -284,7 +282,6 @@
284 PHY0: ethernet-phy@0 { 282 PHY0: ethernet-phy@0 {
285 interrupt-parent = <&mpic>; 283 interrupt-parent = <&mpic>;
286 reg = <0x0>; 284 reg = <0x0>;
287 device_type = "ethernet-phy";
288 }; 285 };
289 }; 286 };
290 287
diff --git a/arch/powerpc/boot/dts/mpc7448hpc2.dts b/arch/powerpc/boot/dts/mpc7448hpc2.dts
index 2544f3ecd6e9..20a0d22df473 100644
--- a/arch/powerpc/boot/dts/mpc7448hpc2.dts
+++ b/arch/powerpc/boot/dts/mpc7448hpc2.dts
@@ -68,7 +68,6 @@
68 }; 68 };
69 69
70 MDIO: mdio@6000 { 70 MDIO: mdio@6000 {
71 device_type = "mdio";
72 compatible = "tsi108-mdio"; 71 compatible = "tsi108-mdio";
73 reg = <0x6000 0x50>; 72 reg = <0x6000 0x50>;
74 #address-cells = <1>; 73 #address-cells = <1>;
diff --git a/arch/powerpc/boot/dts/mpc8272ads.dts b/arch/powerpc/boot/dts/mpc8272ads.dts
index e802ebd88cb1..6d2cddf64cfd 100644
--- a/arch/powerpc/boot/dts/mpc8272ads.dts
+++ b/arch/powerpc/boot/dts/mpc8272ads.dts
@@ -182,7 +182,6 @@
182 }; 182 };
183 183
184 mdio@10d40 { 184 mdio@10d40 {
185 device_type = "mdio";
186 compatible = "fsl,mpc8272ads-mdio-bitbang", 185 compatible = "fsl,mpc8272ads-mdio-bitbang",
187 "fsl,mpc8272-mdio-bitbang", 186 "fsl,mpc8272-mdio-bitbang",
188 "fsl,cpm2-mdio-bitbang"; 187 "fsl,cpm2-mdio-bitbang";
@@ -196,14 +195,12 @@
196 interrupt-parent = <&PIC>; 195 interrupt-parent = <&PIC>;
197 interrupts = <23 8>; 196 interrupts = <23 8>;
198 reg = <0x0>; 197 reg = <0x0>;
199 device_type = "ethernet-phy";
200 }; 198 };
201 199
202 PHY1: ethernet-phy@1 { 200 PHY1: ethernet-phy@1 {
203 interrupt-parent = <&PIC>; 201 interrupt-parent = <&PIC>;
204 interrupts = <23 8>; 202 interrupts = <23 8>;
205 reg = <0x3>; 203 reg = <0x3>;
206 device_type = "ethernet-phy";
207 }; 204 };
208 }; 205 };
209 206
diff --git a/arch/powerpc/boot/dts/mpc8308_p1m.dts b/arch/powerpc/boot/dts/mpc8308_p1m.dts
index 22b0832b6c31..651e4f55acdb 100644
--- a/arch/powerpc/boot/dts/mpc8308_p1m.dts
+++ b/arch/powerpc/boot/dts/mpc8308_p1m.dts
@@ -189,13 +189,11 @@
189 interrupt-parent = <&ipic>; 189 interrupt-parent = <&ipic>;
190 interrupts = <17 0x8>; 190 interrupts = <17 0x8>;
191 reg = <0x1>; 191 reg = <0x1>;
192 device_type = "ethernet-phy";
193 }; 192 };
194 phy2: ethernet-phy@2 { 193 phy2: ethernet-phy@2 {
195 interrupt-parent = <&ipic>; 194 interrupt-parent = <&ipic>;
196 interrupts = <19 0x8>; 195 interrupts = <19 0x8>;
197 reg = <0x2>; 196 reg = <0x2>;
198 device_type = "ethernet-phy";
199 }; 197 };
200 tbi0: tbi-phy@11 { 198 tbi0: tbi-phy@11 {
201 reg = <0x11>; 199 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8308rdb.dts b/arch/powerpc/boot/dts/mpc8308rdb.dts
index f66d10d95a8d..9ce45f2efd34 100644
--- a/arch/powerpc/boot/dts/mpc8308rdb.dts
+++ b/arch/powerpc/boot/dts/mpc8308rdb.dts
@@ -166,7 +166,6 @@
166 interrupt-parent = <&ipic>; 166 interrupt-parent = <&ipic>;
167 interrupts = <17 0x8>; 167 interrupts = <17 0x8>;
168 reg = <0x2>; 168 reg = <0x2>;
169 device_type = "ethernet-phy";
170 }; 169 };
171 tbi0: tbi-phy@11 { 170 tbi0: tbi-phy@11 {
172 reg = <0x11>; 171 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8313erdb.dts b/arch/powerpc/boot/dts/mpc8313erdb.dts
index 1c836c6c5be6..4b635dc4ecde 100644
--- a/arch/powerpc/boot/dts/mpc8313erdb.dts
+++ b/arch/powerpc/boot/dts/mpc8313erdb.dts
@@ -217,7 +217,6 @@
217 interrupt-parent = <&ipic>; 217 interrupt-parent = <&ipic>;
218 interrupts = <20 0x8>; 218 interrupts = <20 0x8>;
219 reg = <0x4>; 219 reg = <0x4>;
220 device_type = "ethernet-phy";
221 }; 220 };
222 tbi0: tbi-phy@11 { 221 tbi0: tbi-phy@11 {
223 reg = <0x11>; 222 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8315erdb.dts b/arch/powerpc/boot/dts/mpc8315erdb.dts
index 811848e93aef..43546844ea5a 100644
--- a/arch/powerpc/boot/dts/mpc8315erdb.dts
+++ b/arch/powerpc/boot/dts/mpc8315erdb.dts
@@ -216,14 +216,12 @@
216 interrupt-parent = <&ipic>; 216 interrupt-parent = <&ipic>;
217 interrupts = <20 0x8>; 217 interrupts = <20 0x8>;
218 reg = <0x0>; 218 reg = <0x0>;
219 device_type = "ethernet-phy";
220 }; 219 };
221 220
222 phy1: ethernet-phy@1 { 221 phy1: ethernet-phy@1 {
223 interrupt-parent = <&ipic>; 222 interrupt-parent = <&ipic>;
224 interrupts = <19 0x8>; 223 interrupts = <19 0x8>;
225 reg = <0x1>; 224 reg = <0x1>;
226 device_type = "ethernet-phy";
227 }; 225 };
228 226
229 tbi0: tbi-phy@11 { 227 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc832x_mds.dts b/arch/powerpc/boot/dts/mpc832x_mds.dts
index da9c72ddc343..0793cdf0d46e 100644
--- a/arch/powerpc/boot/dts/mpc832x_mds.dts
+++ b/arch/powerpc/boot/dts/mpc832x_mds.dts
@@ -356,13 +356,11 @@
356 interrupt-parent = <&ipic>; 356 interrupt-parent = <&ipic>;
357 interrupts = <17 0x8>; 357 interrupts = <17 0x8>;
358 reg = <0x3>; 358 reg = <0x3>;
359 device_type = "ethernet-phy";
360 }; 359 };
361 phy4: ethernet-phy@04 { 360 phy4: ethernet-phy@04 {
362 interrupt-parent = <&ipic>; 361 interrupt-parent = <&ipic>;
363 interrupts = <18 0x8>; 362 interrupts = <18 0x8>;
364 reg = <0x4>; 363 reg = <0x4>;
365 device_type = "ethernet-phy";
366 }; 364 };
367 }; 365 };
368 366
diff --git a/arch/powerpc/boot/dts/mpc832x_rdb.dts b/arch/powerpc/boot/dts/mpc832x_rdb.dts
index ff7b15b340a3..91df1eb16667 100644
--- a/arch/powerpc/boot/dts/mpc832x_rdb.dts
+++ b/arch/powerpc/boot/dts/mpc832x_rdb.dts
@@ -314,13 +314,11 @@
314 interrupt-parent = <&ipic>; 314 interrupt-parent = <&ipic>;
315 interrupts = <0>; 315 interrupts = <0>;
316 reg = <0x0>; 316 reg = <0x0>;
317 device_type = "ethernet-phy";
318 }; 317 };
319 phy04:ethernet-phy@04 { 318 phy04:ethernet-phy@04 {
320 interrupt-parent = <&ipic>; 319 interrupt-parent = <&ipic>;
321 interrupts = <0>; 320 interrupts = <0>;
322 reg = <0x4>; 321 reg = <0x4>;
323 device_type = "ethernet-phy";
324 }; 322 };
325 }; 323 };
326 324
diff --git a/arch/powerpc/boot/dts/mpc8349emitx.dts b/arch/powerpc/boot/dts/mpc8349emitx.dts
index 2608679d0d4a..cf8542401a3c 100644
--- a/arch/powerpc/boot/dts/mpc8349emitx.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitx.dts
@@ -240,7 +240,6 @@
240 interrupt-parent = <&ipic>; 240 interrupt-parent = <&ipic>;
241 interrupts = <18 0x8>; 241 interrupts = <18 0x8>;
242 reg = <0x1c>; 242 reg = <0x1c>;
243 device_type = "ethernet-phy";
244 }; 243 };
245 244
246 tbi0: tbi-phy@11 { 245 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8349emitxgp.dts b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
index 6cd044d8fb89..f00066dcc8de 100644
--- a/arch/powerpc/boot/dts/mpc8349emitxgp.dts
+++ b/arch/powerpc/boot/dts/mpc8349emitxgp.dts
@@ -176,7 +176,6 @@
176 interrupt-parent = <&ipic>; 176 interrupt-parent = <&ipic>;
177 interrupts = <18 0x8>; 177 interrupts = <18 0x8>;
178 reg = <0x1c>; 178 reg = <0x1c>;
179 device_type = "ethernet-phy";
180 }; 179 };
181 180
182 tbi0: tbi-phy@11 { 181 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc834x_mds.dts b/arch/powerpc/boot/dts/mpc834x_mds.dts
index 4552864082c2..4843c3ff7166 100644
--- a/arch/powerpc/boot/dts/mpc834x_mds.dts
+++ b/arch/powerpc/boot/dts/mpc834x_mds.dts
@@ -193,14 +193,12 @@
193 interrupt-parent = <&ipic>; 193 interrupt-parent = <&ipic>;
194 interrupts = <17 0x8>; 194 interrupts = <17 0x8>;
195 reg = <0x0>; 195 reg = <0x0>;
196 device_type = "ethernet-phy";
197 }; 196 };
198 197
199 phy1: ethernet-phy@1 { 198 phy1: ethernet-phy@1 {
200 interrupt-parent = <&ipic>; 199 interrupt-parent = <&ipic>;
201 interrupts = <18 0x8>; 200 interrupts = <18 0x8>;
202 reg = <0x1>; 201 reg = <0x1>;
203 device_type = "ethernet-phy";
204 }; 202 };
205 203
206 tbi0: tbi-phy@11 { 204 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc836x_mds.dts b/arch/powerpc/boot/dts/mpc836x_mds.dts
index 81dd513d6308..ecb6ccd3a6aa 100644
--- a/arch/powerpc/boot/dts/mpc836x_mds.dts
+++ b/arch/powerpc/boot/dts/mpc836x_mds.dts
@@ -397,13 +397,11 @@
397 interrupt-parent = <&ipic>; 397 interrupt-parent = <&ipic>;
398 interrupts = <17 0x8>; 398 interrupts = <17 0x8>;
399 reg = <0x0>; 399 reg = <0x0>;
400 device_type = "ethernet-phy";
401 }; 400 };
402 phy1: ethernet-phy@01 { 401 phy1: ethernet-phy@01 {
403 interrupt-parent = <&ipic>; 402 interrupt-parent = <&ipic>;
404 interrupts = <18 0x8>; 403 interrupts = <18 0x8>;
405 reg = <0x1>; 404 reg = <0x1>;
406 device_type = "ethernet-phy";
407 }; 405 };
408 tbi-phy@2 { 406 tbi-phy@2 {
409 device_type = "tbi-phy"; 407 device_type = "tbi-phy";
diff --git a/arch/powerpc/boot/dts/mpc836x_rdk.dts b/arch/powerpc/boot/dts/mpc836x_rdk.dts
index b6e9aec1d860..daeacbdcf8b4 100644
--- a/arch/powerpc/boot/dts/mpc836x_rdk.dts
+++ b/arch/powerpc/boot/dts/mpc836x_rdk.dts
@@ -332,25 +332,21 @@
332 reg = <0x2120 0x18>; 332 reg = <0x2120 0x18>;
333 333
334 phy1: ethernet-phy@1 { 334 phy1: ethernet-phy@1 {
335 device_type = "ethernet-phy";
336 compatible = "national,DP83848VV"; 335 compatible = "national,DP83848VV";
337 reg = <1>; 336 reg = <1>;
338 }; 337 };
339 338
340 phy2: ethernet-phy@2 { 339 phy2: ethernet-phy@2 {
341 device_type = "ethernet-phy";
342 compatible = "broadcom,BCM5481UA2KMLG"; 340 compatible = "broadcom,BCM5481UA2KMLG";
343 reg = <2>; 341 reg = <2>;
344 }; 342 };
345 343
346 phy3: ethernet-phy@3 { 344 phy3: ethernet-phy@3 {
347 device_type = "ethernet-phy";
348 compatible = "national,DP83848VV"; 345 compatible = "national,DP83848VV";
349 reg = <3>; 346 reg = <3>;
350 }; 347 };
351 348
352 phy4: ethernet-phy@4 { 349 phy4: ethernet-phy@4 {
353 device_type = "ethernet-phy";
354 compatible = "broadcom,BCM5481UA2KMLG"; 350 compatible = "broadcom,BCM5481UA2KMLG";
355 reg = <4>; 351 reg = <4>;
356 }; 352 };
diff --git a/arch/powerpc/boot/dts/mpc8377_mds.dts b/arch/powerpc/boot/dts/mpc8377_mds.dts
index cfccef57cd1d..c2c062e8175d 100644
--- a/arch/powerpc/boot/dts/mpc8377_mds.dts
+++ b/arch/powerpc/boot/dts/mpc8377_mds.dts
@@ -225,14 +225,12 @@
225 interrupt-parent = <&ipic>; 225 interrupt-parent = <&ipic>;
226 interrupts = <17 0x8>; 226 interrupts = <17 0x8>;
227 reg = <0x2>; 227 reg = <0x2>;
228 device_type = "ethernet-phy";
229 }; 228 };
230 229
231 phy3: ethernet-phy@3 { 230 phy3: ethernet-phy@3 {
232 interrupt-parent = <&ipic>; 231 interrupt-parent = <&ipic>;
233 interrupts = <18 0x8>; 232 interrupts = <18 0x8>;
234 reg = <0x3>; 233 reg = <0x3>;
235 device_type = "ethernet-phy";
236 }; 234 };
237 235
238 tbi0: tbi-phy@11 { 236 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8377_rdb.dts b/arch/powerpc/boot/dts/mpc8377_rdb.dts
index 353deff1b7f6..2b4b6532d69c 100644
--- a/arch/powerpc/boot/dts/mpc8377_rdb.dts
+++ b/arch/powerpc/boot/dts/mpc8377_rdb.dts
@@ -277,7 +277,6 @@
277 interrupt-parent = <&ipic>; 277 interrupt-parent = <&ipic>;
278 interrupts = <17 0x8>; 278 interrupts = <17 0x8>;
279 reg = <0x2>; 279 reg = <0x2>;
280 device_type = "ethernet-phy";
281 }; 280 };
282 281
283 tbi0: tbi-phy@11 { 282 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8377_wlan.dts b/arch/powerpc/boot/dts/mpc8377_wlan.dts
index ef4a305a0d0c..c0c790168b96 100644
--- a/arch/powerpc/boot/dts/mpc8377_wlan.dts
+++ b/arch/powerpc/boot/dts/mpc8377_wlan.dts
@@ -253,14 +253,12 @@
253 interrupt-parent = <&ipic>; 253 interrupt-parent = <&ipic>;
254 interrupts = <17 0x8>; 254 interrupts = <17 0x8>;
255 reg = <0x2>; 255 reg = <0x2>;
256 device_type = "ethernet-phy";
257 }; 256 };
258 257
259 phy3: ethernet-phy@3 { 258 phy3: ethernet-phy@3 {
260 interrupt-parent = <&ipic>; 259 interrupt-parent = <&ipic>;
261 interrupts = <18 0x8>; 260 interrupts = <18 0x8>;
262 reg = <0x3>; 261 reg = <0x3>;
263 device_type = "ethernet-phy";
264 }; 262 };
265 263
266 tbi0: tbi-phy@11 { 264 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8378_mds.dts b/arch/powerpc/boot/dts/mpc8378_mds.dts
index 538fcb927337..1b82b77f9415 100644
--- a/arch/powerpc/boot/dts/mpc8378_mds.dts
+++ b/arch/powerpc/boot/dts/mpc8378_mds.dts
@@ -264,14 +264,12 @@
264 interrupt-parent = <&ipic>; 264 interrupt-parent = <&ipic>;
265 interrupts = <17 0x8>; 265 interrupts = <17 0x8>;
266 reg = <0x2>; 266 reg = <0x2>;
267 device_type = "ethernet-phy";
268 }; 267 };
269 268
270 phy3: ethernet-phy@3 { 269 phy3: ethernet-phy@3 {
271 interrupt-parent = <&ipic>; 270 interrupt-parent = <&ipic>;
272 interrupts = <18 0x8>; 271 interrupts = <18 0x8>;
273 reg = <0x3>; 272 reg = <0x3>;
274 device_type = "ethernet-phy";
275 }; 273 };
276 274
277 tbi0: tbi-phy@11 { 275 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8378_rdb.dts b/arch/powerpc/boot/dts/mpc8378_rdb.dts
index 32333a908f3d..74b6a535a413 100644
--- a/arch/powerpc/boot/dts/mpc8378_rdb.dts
+++ b/arch/powerpc/boot/dts/mpc8378_rdb.dts
@@ -277,7 +277,6 @@
277 interrupt-parent = <&ipic>; 277 interrupt-parent = <&ipic>;
278 interrupts = <17 0x8>; 278 interrupts = <17 0x8>;
279 reg = <0x2>; 279 reg = <0x2>;
280 device_type = "ethernet-phy";
281 }; 280 };
282 281
283 tbi0: tbi-phy@11 { 282 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8379_mds.dts b/arch/powerpc/boot/dts/mpc8379_mds.dts
index 5387092fdfb4..38e5048d65d2 100644
--- a/arch/powerpc/boot/dts/mpc8379_mds.dts
+++ b/arch/powerpc/boot/dts/mpc8379_mds.dts
@@ -262,14 +262,12 @@
262 interrupt-parent = <&ipic>; 262 interrupt-parent = <&ipic>;
263 interrupts = <17 0x8>; 263 interrupts = <17 0x8>;
264 reg = <0x2>; 264 reg = <0x2>;
265 device_type = "ethernet-phy";
266 }; 265 };
267 266
268 phy3: ethernet-phy@3 { 267 phy3: ethernet-phy@3 {
269 interrupt-parent = <&ipic>; 268 interrupt-parent = <&ipic>;
270 interrupts = <18 0x8>; 269 interrupts = <18 0x8>;
271 reg = <0x3>; 270 reg = <0x3>;
272 device_type = "ethernet-phy";
273 }; 271 };
274 272
275 tbi0: tbi-phy@11 { 273 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8379_rdb.dts b/arch/powerpc/boot/dts/mpc8379_rdb.dts
index 46224c2430ff..3b5cbac85368 100644
--- a/arch/powerpc/boot/dts/mpc8379_rdb.dts
+++ b/arch/powerpc/boot/dts/mpc8379_rdb.dts
@@ -275,7 +275,6 @@
275 interrupt-parent = <&ipic>; 275 interrupt-parent = <&ipic>;
276 interrupts = <17 0x8>; 276 interrupts = <17 0x8>;
277 reg = <0x2>; 277 reg = <0x2>;
278 device_type = "ethernet-phy";
279 }; 278 };
280 279
281 tbi0: tbi-phy@11 { 280 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/mpc8536ds.dtsi b/arch/powerpc/boot/dts/mpc8536ds.dtsi
index 7c3dde84d193..937ad7e46119 100644
--- a/arch/powerpc/boot/dts/mpc8536ds.dtsi
+++ b/arch/powerpc/boot/dts/mpc8536ds.dtsi
@@ -200,12 +200,10 @@
200 phy0: ethernet-phy@0 { 200 phy0: ethernet-phy@0 {
201 interrupts = <10 0x1 0 0>; 201 interrupts = <10 0x1 0 0>;
202 reg = <0>; 202 reg = <0>;
203 device_type = "ethernet-phy";
204 }; 203 };
205 phy1: ethernet-phy@1 { 204 phy1: ethernet-phy@1 {
206 interrupts = <10 0x1 0 0>; 205 interrupts = <10 0x1 0 0>;
207 reg = <1>; 206 reg = <1>;
208 device_type = "ethernet-phy";
209 }; 207 };
210 sgmii_phy0: sgmii-phy@0 { 208 sgmii_phy0: sgmii-phy@0 {
211 interrupts = <6 1 0 0>; 209 interrupts = <6 1 0 0>;
diff --git a/arch/powerpc/boot/dts/mpc8540ads.dts b/arch/powerpc/boot/dts/mpc8540ads.dts
index 2d31863accf5..7ce274c9a2d5 100644
--- a/arch/powerpc/boot/dts/mpc8540ads.dts
+++ b/arch/powerpc/boot/dts/mpc8540ads.dts
@@ -165,19 +165,16 @@
165 interrupt-parent = <&mpic>; 165 interrupt-parent = <&mpic>;
166 interrupts = <5 1>; 166 interrupts = <5 1>;
167 reg = <0x0>; 167 reg = <0x0>;
168 device_type = "ethernet-phy";
169 }; 168 };
170 phy1: ethernet-phy@1 { 169 phy1: ethernet-phy@1 {
171 interrupt-parent = <&mpic>; 170 interrupt-parent = <&mpic>;
172 interrupts = <5 1>; 171 interrupts = <5 1>;
173 reg = <0x1>; 172 reg = <0x1>;
174 device_type = "ethernet-phy";
175 }; 173 };
176 phy3: ethernet-phy@3 { 174 phy3: ethernet-phy@3 {
177 interrupt-parent = <&mpic>; 175 interrupt-parent = <&mpic>;
178 interrupts = <7 1>; 176 interrupts = <7 1>;
179 reg = <0x3>; 177 reg = <0x3>;
180 device_type = "ethernet-phy";
181 }; 178 };
182 tbi0: tbi-phy@11 { 179 tbi0: tbi-phy@11 {
183 reg = <0x11>; 180 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8541cds.dts b/arch/powerpc/boot/dts/mpc8541cds.dts
index 1c03c2667373..4d35a3e0fb02 100644
--- a/arch/powerpc/boot/dts/mpc8541cds.dts
+++ b/arch/powerpc/boot/dts/mpc8541cds.dts
@@ -165,13 +165,11 @@
165 interrupt-parent = <&mpic>; 165 interrupt-parent = <&mpic>;
166 interrupts = <5 1>; 166 interrupts = <5 1>;
167 reg = <0x0>; 167 reg = <0x0>;
168 device_type = "ethernet-phy";
169 }; 168 };
170 phy1: ethernet-phy@1 { 169 phy1: ethernet-phy@1 {
171 interrupt-parent = <&mpic>; 170 interrupt-parent = <&mpic>;
172 interrupts = <5 1>; 171 interrupts = <5 1>;
173 reg = <0x1>; 172 reg = <0x1>;
174 device_type = "ethernet-phy";
175 }; 173 };
176 tbi0: tbi-phy@11 { 174 tbi0: tbi-phy@11 {
177 reg = <0x11>; 175 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8544ds.dtsi b/arch/powerpc/boot/dts/mpc8544ds.dtsi
index b219d035d794..47d986b041f6 100644
--- a/arch/powerpc/boot/dts/mpc8544ds.dtsi
+++ b/arch/powerpc/boot/dts/mpc8544ds.dtsi
@@ -82,12 +82,10 @@
82 phy0: ethernet-phy@0 { 82 phy0: ethernet-phy@0 {
83 interrupts = <10 1 0 0>; 83 interrupts = <10 1 0 0>;
84 reg = <0x0>; 84 reg = <0x0>;
85 device_type = "ethernet-phy";
86 }; 85 };
87 phy1: ethernet-phy@1 { 86 phy1: ethernet-phy@1 {
88 interrupts = <10 1 0 0>; 87 interrupts = <10 1 0 0>;
89 reg = <0x1>; 88 reg = <0x1>;
90 device_type = "ethernet-phy";
91 }; 89 };
92 90
93 sgmii_phy0: sgmii-phy@0 { 91 sgmii_phy0: sgmii-phy@0 {
diff --git a/arch/powerpc/boot/dts/mpc8548cds.dtsi b/arch/powerpc/boot/dts/mpc8548cds.dtsi
index c61f525e4740..3bc7d4711220 100644
--- a/arch/powerpc/boot/dts/mpc8548cds.dtsi
+++ b/arch/powerpc/boot/dts/mpc8548cds.dtsi
@@ -109,22 +109,18 @@
109 phy0: ethernet-phy@0 { 109 phy0: ethernet-phy@0 {
110 interrupts = <5 1 0 0>; 110 interrupts = <5 1 0 0>;
111 reg = <0x0>; 111 reg = <0x0>;
112 device_type = "ethernet-phy";
113 }; 112 };
114 phy1: ethernet-phy@1 { 113 phy1: ethernet-phy@1 {
115 interrupts = <5 1 0 0>; 114 interrupts = <5 1 0 0>;
116 reg = <0x1>; 115 reg = <0x1>;
117 device_type = "ethernet-phy";
118 }; 116 };
119 phy2: ethernet-phy@2 { 117 phy2: ethernet-phy@2 {
120 interrupts = <5 1 0 0>; 118 interrupts = <5 1 0 0>;
121 reg = <0x2>; 119 reg = <0x2>;
122 device_type = "ethernet-phy";
123 }; 120 };
124 phy3: ethernet-phy@3 { 121 phy3: ethernet-phy@3 {
125 interrupts = <5 1 0 0>; 122 interrupts = <5 1 0 0>;
126 reg = <0x3>; 123 reg = <0x3>;
127 device_type = "ethernet-phy";
128 }; 124 };
129 tbi0: tbi-phy@11 { 125 tbi0: tbi-phy@11 {
130 reg = <0x11>; 126 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8555cds.dts b/arch/powerpc/boot/dts/mpc8555cds.dts
index 36a7ea138c2f..f115f21cb0ae 100644
--- a/arch/powerpc/boot/dts/mpc8555cds.dts
+++ b/arch/powerpc/boot/dts/mpc8555cds.dts
@@ -165,13 +165,11 @@
165 interrupt-parent = <&mpic>; 165 interrupt-parent = <&mpic>;
166 interrupts = <5 1>; 166 interrupts = <5 1>;
167 reg = <0x0>; 167 reg = <0x0>;
168 device_type = "ethernet-phy";
169 }; 168 };
170 phy1: ethernet-phy@1 { 169 phy1: ethernet-phy@1 {
171 interrupt-parent = <&mpic>; 170 interrupt-parent = <&mpic>;
172 interrupts = <5 1>; 171 interrupts = <5 1>;
173 reg = <0x1>; 172 reg = <0x1>;
174 device_type = "ethernet-phy";
175 }; 173 };
176 tbi0: tbi-phy@11 { 174 tbi0: tbi-phy@11 {
177 reg = <0x11>; 175 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8560ads.dts b/arch/powerpc/boot/dts/mpc8560ads.dts
index 1a43f5a968f5..0d70921d6125 100644
--- a/arch/powerpc/boot/dts/mpc8560ads.dts
+++ b/arch/powerpc/boot/dts/mpc8560ads.dts
@@ -154,25 +154,21 @@
154 interrupt-parent = <&mpic>; 154 interrupt-parent = <&mpic>;
155 interrupts = <5 1>; 155 interrupts = <5 1>;
156 reg = <0x0>; 156 reg = <0x0>;
157 device_type = "ethernet-phy";
158 }; 157 };
159 phy1: ethernet-phy@1 { 158 phy1: ethernet-phy@1 {
160 interrupt-parent = <&mpic>; 159 interrupt-parent = <&mpic>;
161 interrupts = <5 1>; 160 interrupts = <5 1>;
162 reg = <0x1>; 161 reg = <0x1>;
163 device_type = "ethernet-phy";
164 }; 162 };
165 phy2: ethernet-phy@2 { 163 phy2: ethernet-phy@2 {
166 interrupt-parent = <&mpic>; 164 interrupt-parent = <&mpic>;
167 interrupts = <7 1>; 165 interrupts = <7 1>;
168 reg = <0x2>; 166 reg = <0x2>;
169 device_type = "ethernet-phy";
170 }; 167 };
171 phy3: ethernet-phy@3 { 168 phy3: ethernet-phy@3 {
172 interrupt-parent = <&mpic>; 169 interrupt-parent = <&mpic>;
173 interrupts = <7 1>; 170 interrupts = <7 1>;
174 reg = <0x3>; 171 reg = <0x3>;
175 device_type = "ethernet-phy";
176 }; 172 };
177 tbi0: tbi-phy@11 { 173 tbi0: tbi-phy@11 {
178 reg = <0x11>; 174 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8568mds.dts b/arch/powerpc/boot/dts/mpc8568mds.dts
index 09598bb5d443..bead2b655b9f 100644
--- a/arch/powerpc/boot/dts/mpc8568mds.dts
+++ b/arch/powerpc/boot/dts/mpc8568mds.dts
@@ -91,22 +91,18 @@
91 phy0: ethernet-phy@7 { 91 phy0: ethernet-phy@7 {
92 interrupts = <1 1 0 0>; 92 interrupts = <1 1 0 0>;
93 reg = <0x7>; 93 reg = <0x7>;
94 device_type = "ethernet-phy";
95 }; 94 };
96 phy1: ethernet-phy@1 { 95 phy1: ethernet-phy@1 {
97 interrupts = <2 1 0 0>; 96 interrupts = <2 1 0 0>;
98 reg = <0x1>; 97 reg = <0x1>;
99 device_type = "ethernet-phy";
100 }; 98 };
101 phy2: ethernet-phy@2 { 99 phy2: ethernet-phy@2 {
102 interrupts = <1 1 0 0>; 100 interrupts = <1 1 0 0>;
103 reg = <0x2>; 101 reg = <0x2>;
104 device_type = "ethernet-phy";
105 }; 102 };
106 phy3: ethernet-phy@3 { 103 phy3: ethernet-phy@3 {
107 interrupts = <2 1 0 0>; 104 interrupts = <2 1 0 0>;
108 reg = <0x3>; 105 reg = <0x3>;
109 device_type = "ethernet-phy";
110 }; 106 };
111 tbi0: tbi-phy@11 { 107 tbi0: tbi-phy@11 {
112 reg = <0x11>; 108 reg = <0x11>;
@@ -236,25 +232,21 @@
236 interrupt-parent = <&mpic>; 232 interrupt-parent = <&mpic>;
237 interrupts = <1 1 0 0>; 233 interrupts = <1 1 0 0>;
238 reg = <0x7>; 234 reg = <0x7>;
239 device_type = "ethernet-phy";
240 }; 235 };
241 qe_phy1: ethernet-phy@01 { 236 qe_phy1: ethernet-phy@01 {
242 interrupt-parent = <&mpic>; 237 interrupt-parent = <&mpic>;
243 interrupts = <2 1 0 0>; 238 interrupts = <2 1 0 0>;
244 reg = <0x1>; 239 reg = <0x1>;
245 device_type = "ethernet-phy";
246 }; 240 };
247 qe_phy2: ethernet-phy@02 { 241 qe_phy2: ethernet-phy@02 {
248 interrupt-parent = <&mpic>; 242 interrupt-parent = <&mpic>;
249 interrupts = <1 1 0 0>; 243 interrupts = <1 1 0 0>;
250 reg = <0x2>; 244 reg = <0x2>;
251 device_type = "ethernet-phy";
252 }; 245 };
253 qe_phy3: ethernet-phy@03 { 246 qe_phy3: ethernet-phy@03 {
254 interrupt-parent = <&mpic>; 247 interrupt-parent = <&mpic>;
255 interrupts = <2 1 0 0>; 248 interrupts = <2 1 0 0>;
256 reg = <0x3>; 249 reg = <0x3>;
257 device_type = "ethernet-phy";
258 }; 250 };
259 }; 251 };
260 }; 252 };
diff --git a/arch/powerpc/boot/dts/mpc8569mds.dts b/arch/powerpc/boot/dts/mpc8569mds.dts
index fe0d60935e9b..d0dcdafa5eb2 100644
--- a/arch/powerpc/boot/dts/mpc8569mds.dts
+++ b/arch/powerpc/boot/dts/mpc8569mds.dts
@@ -276,33 +276,27 @@
276 interrupt-parent = <&mpic>; 276 interrupt-parent = <&mpic>;
277 interrupts = <1 1 0 0>; 277 interrupts = <1 1 0 0>;
278 reg = <0x7>; 278 reg = <0x7>;
279 device_type = "ethernet-phy";
280 }; 279 };
281 qe_phy1: ethernet-phy@01 { 280 qe_phy1: ethernet-phy@01 {
282 interrupt-parent = <&mpic>; 281 interrupt-parent = <&mpic>;
283 interrupts = <2 1 0 0>; 282 interrupts = <2 1 0 0>;
284 reg = <0x1>; 283 reg = <0x1>;
285 device_type = "ethernet-phy";
286 }; 284 };
287 qe_phy2: ethernet-phy@02 { 285 qe_phy2: ethernet-phy@02 {
288 interrupt-parent = <&mpic>; 286 interrupt-parent = <&mpic>;
289 interrupts = <3 1 0 0>; 287 interrupts = <3 1 0 0>;
290 reg = <0x2>; 288 reg = <0x2>;
291 device_type = "ethernet-phy";
292 }; 289 };
293 qe_phy3: ethernet-phy@03 { 290 qe_phy3: ethernet-phy@03 {
294 interrupt-parent = <&mpic>; 291 interrupt-parent = <&mpic>;
295 interrupts = <4 1 0 0>; 292 interrupts = <4 1 0 0>;
296 reg = <0x3>; 293 reg = <0x3>;
297 device_type = "ethernet-phy";
298 }; 294 };
299 qe_phy5: ethernet-phy@04 { 295 qe_phy5: ethernet-phy@04 {
300 reg = <0x04>; 296 reg = <0x04>;
301 device_type = "ethernet-phy";
302 }; 297 };
303 qe_phy7: ethernet-phy@06 { 298 qe_phy7: ethernet-phy@06 {
304 reg = <0x6>; 299 reg = <0x6>;
305 device_type = "ethernet-phy";
306 }; 300 };
307 tbi1: tbi-phy@11 { 301 tbi1: tbi-phy@11 {
308 reg = <0x11>; 302 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8641_hpcn.dts b/arch/powerpc/boot/dts/mpc8641_hpcn.dts
index 1e8666ccbed8..1c03060dd0b8 100644
--- a/arch/powerpc/boot/dts/mpc8641_hpcn.dts
+++ b/arch/powerpc/boot/dts/mpc8641_hpcn.dts
@@ -211,25 +211,21 @@
211 interrupt-parent = <&mpic>; 211 interrupt-parent = <&mpic>;
212 interrupts = <10 1>; 212 interrupts = <10 1>;
213 reg = <0>; 213 reg = <0>;
214 device_type = "ethernet-phy";
215 }; 214 };
216 phy1: ethernet-phy@1 { 215 phy1: ethernet-phy@1 {
217 interrupt-parent = <&mpic>; 216 interrupt-parent = <&mpic>;
218 interrupts = <10 1>; 217 interrupts = <10 1>;
219 reg = <1>; 218 reg = <1>;
220 device_type = "ethernet-phy";
221 }; 219 };
222 phy2: ethernet-phy@2 { 220 phy2: ethernet-phy@2 {
223 interrupt-parent = <&mpic>; 221 interrupt-parent = <&mpic>;
224 interrupts = <10 1>; 222 interrupts = <10 1>;
225 reg = <2>; 223 reg = <2>;
226 device_type = "ethernet-phy";
227 }; 224 };
228 phy3: ethernet-phy@3 { 225 phy3: ethernet-phy@3 {
229 interrupt-parent = <&mpic>; 226 interrupt-parent = <&mpic>;
230 interrupts = <10 1>; 227 interrupts = <10 1>;
231 reg = <3>; 228 reg = <3>;
232 device_type = "ethernet-phy";
233 }; 229 };
234 tbi0: tbi-phy@11 { 230 tbi0: tbi-phy@11 {
235 reg = <0x11>; 231 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc8641_hpcn_36b.dts b/arch/powerpc/boot/dts/mpc8641_hpcn_36b.dts
index fd4cd4da60b5..bb575e28042a 100644
--- a/arch/powerpc/boot/dts/mpc8641_hpcn_36b.dts
+++ b/arch/powerpc/boot/dts/mpc8641_hpcn_36b.dts
@@ -211,25 +211,21 @@
211 interrupt-parent = <&mpic>; 211 interrupt-parent = <&mpic>;
212 interrupts = <10 1>; 212 interrupts = <10 1>;
213 reg = <0>; 213 reg = <0>;
214 device_type = "ethernet-phy";
215 }; 214 };
216 phy1: ethernet-phy@1 { 215 phy1: ethernet-phy@1 {
217 interrupt-parent = <&mpic>; 216 interrupt-parent = <&mpic>;
218 interrupts = <10 1>; 217 interrupts = <10 1>;
219 reg = <1>; 218 reg = <1>;
220 device_type = "ethernet-phy";
221 }; 219 };
222 phy2: ethernet-phy@2 { 220 phy2: ethernet-phy@2 {
223 interrupt-parent = <&mpic>; 221 interrupt-parent = <&mpic>;
224 interrupts = <10 1>; 222 interrupts = <10 1>;
225 reg = <2>; 223 reg = <2>;
226 device_type = "ethernet-phy";
227 }; 224 };
228 phy3: ethernet-phy@3 { 225 phy3: ethernet-phy@3 {
229 interrupt-parent = <&mpic>; 226 interrupt-parent = <&mpic>;
230 interrupts = <10 1>; 227 interrupts = <10 1>;
231 reg = <3>; 228 reg = <3>;
232 device_type = "ethernet-phy";
233 }; 229 };
234 tbi0: tbi-phy@11 { 230 tbi0: tbi-phy@11 {
235 reg = <0x11>; 231 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/mpc866ads.dts b/arch/powerpc/boot/dts/mpc866ads.dts
index bd700651f360..34c1f48b1a09 100644
--- a/arch/powerpc/boot/dts/mpc866ads.dts
+++ b/arch/powerpc/boot/dts/mpc866ads.dts
@@ -74,7 +74,6 @@
74 #size-cells = <0>; 74 #size-cells = <0>;
75 PHY: ethernet-phy@f { 75 PHY: ethernet-phy@f {
76 reg = <0xf>; 76 reg = <0xf>;
77 device_type = "ethernet-phy";
78 }; 77 };
79 }; 78 };
80 79
diff --git a/arch/powerpc/boot/dts/mpc885ads.dts b/arch/powerpc/boot/dts/mpc885ads.dts
index b123e9f7a5a8..4e93bd961e0f 100644
--- a/arch/powerpc/boot/dts/mpc885ads.dts
+++ b/arch/powerpc/boot/dts/mpc885ads.dts
@@ -86,17 +86,14 @@
86 86
87 PHY0: ethernet-phy@0 { 87 PHY0: ethernet-phy@0 {
88 reg = <0x0>; 88 reg = <0x0>;
89 device_type = "ethernet-phy";
90 }; 89 };
91 90
92 PHY1: ethernet-phy@1 { 91 PHY1: ethernet-phy@1 {
93 reg = <0x1>; 92 reg = <0x1>;
94 device_type = "ethernet-phy";
95 }; 93 };
96 94
97 PHY2: ethernet-phy@2 { 95 PHY2: ethernet-phy@2 {
98 reg = <0x2>; 96 reg = <0x2>;
99 device_type = "ethernet-phy";
100 }; 97 };
101 }; 98 };
102 99
diff --git a/arch/powerpc/boot/dts/p1021mds.dts b/arch/powerpc/boot/dts/p1021mds.dts
index 97116f198a37..76559044df41 100644
--- a/arch/powerpc/boot/dts/p1021mds.dts
+++ b/arch/powerpc/boot/dts/p1021mds.dts
@@ -295,13 +295,11 @@
295 interrupt-parent = <&mpic>; 295 interrupt-parent = <&mpic>;
296 interrupts = <4 1 0 0>; 296 interrupts = <4 1 0 0>;
297 reg = <0x0>; 297 reg = <0x0>;
298 device_type = "ethernet-phy";
299 }; 298 };
300 qe_phy1: ethernet-phy@03 { 299 qe_phy1: ethernet-phy@03 {
301 interrupt-parent = <&mpic>; 300 interrupt-parent = <&mpic>;
302 interrupts = <5 1 0 0>; 301 interrupts = <5 1 0 0>;
303 reg = <0x3>; 302 reg = <0x3>;
304 device_type = "ethernet-phy";
305 }; 303 };
306 tbi-phy@11 { 304 tbi-phy@11 {
307 reg = <0x11>; 305 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/p1025rdb_32b.dts b/arch/powerpc/boot/dts/p1025rdb_32b.dts
index ac5729c14eda..a2ed6280ba7a 100644
--- a/arch/powerpc/boot/dts/p1025rdb_32b.dts
+++ b/arch/powerpc/boot/dts/p1025rdb_32b.dts
@@ -105,13 +105,11 @@
105 interrupt-parent = <&mpic>; 105 interrupt-parent = <&mpic>;
106 interrupts = <4 1 0 0>; 106 interrupts = <4 1 0 0>;
107 reg = <0x6>; 107 reg = <0x6>;
108 device_type = "ethernet-phy";
109 }; 108 };
110 qe_phy1: ethernet-phy@03 { 109 qe_phy1: ethernet-phy@03 {
111 interrupt-parent = <&mpic>; 110 interrupt-parent = <&mpic>;
112 interrupts = <5 1 0 0>; 111 interrupts = <5 1 0 0>;
113 reg = <0x3>; 112 reg = <0x3>;
114 device_type = "ethernet-phy";
115 }; 113 };
116 tbi-phy@11 { 114 tbi-phy@11 {
117 reg = <0x11>; 115 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/ppa8548.dts b/arch/powerpc/boot/dts/ppa8548.dts
index f97eceed610a..27b0699ee923 100644
--- a/arch/powerpc/boot/dts/ppa8548.dts
+++ b/arch/powerpc/boot/dts/ppa8548.dts
@@ -110,12 +110,10 @@
110 phy0: ethernet-phy@0 { 110 phy0: ethernet-phy@0 {
111 interrupts = <7 1 0 0>; 111 interrupts = <7 1 0 0>;
112 reg = <0x0>; 112 reg = <0x0>;
113 device_type = "ethernet-phy";
114 }; 113 };
115 phy1: ethernet-phy@1 { 114 phy1: ethernet-phy@1 {
116 interrupts = <8 1 0 0>; 115 interrupts = <8 1 0 0>;
117 reg = <0x1>; 116 reg = <0x1>;
118 device_type = "ethernet-phy";
119 }; 117 };
120 tbi0: tbi-phy@11 { 118 tbi0: tbi-phy@11 {
121 reg = <0x11>; 119 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/pq2fads.dts b/arch/powerpc/boot/dts/pq2fads.dts
index 0bb669376743..0c525ff0c257 100644
--- a/arch/powerpc/boot/dts/pq2fads.dts
+++ b/arch/powerpc/boot/dts/pq2fads.dts
@@ -198,7 +198,6 @@
198 }; 198 };
199 199
200 mdio@10d40 { 200 mdio@10d40 {
201 device_type = "mdio";
202 compatible = "fsl,pq2fads-mdio-bitbang", 201 compatible = "fsl,pq2fads-mdio-bitbang",
203 "fsl,mpc8280-mdio-bitbang", 202 "fsl,mpc8280-mdio-bitbang",
204 "fsl,cpm2-mdio-bitbang"; 203 "fsl,cpm2-mdio-bitbang";
@@ -212,14 +211,12 @@
212 interrupt-parent = <&PIC>; 211 interrupt-parent = <&PIC>;
213 interrupts = <25 2>; 212 interrupts = <25 2>;
214 reg = <0x0>; 213 reg = <0x0>;
215 device_type = "ethernet-phy";
216 }; 214 };
217 215
218 PHY1: ethernet-phy@1 { 216 PHY1: ethernet-phy@1 {
219 interrupt-parent = <&PIC>; 217 interrupt-parent = <&PIC>;
220 interrupts = <25 2>; 218 interrupts = <25 2>;
221 reg = <0x3>; 219 reg = <0x3>;
222 device_type = "ethernet-phy";
223 }; 220 };
224 }; 221 };
225 222
diff --git a/arch/powerpc/boot/dts/prpmc2800.dts b/arch/powerpc/boot/dts/prpmc2800.dts
index 1ee6ff43dd57..00afaacf8c8c 100644
--- a/arch/powerpc/boot/dts/prpmc2800.dts
+++ b/arch/powerpc/boot/dts/prpmc2800.dts
@@ -73,17 +73,14 @@
73 mdio { 73 mdio {
74 #address-cells = <1>; 74 #address-cells = <1>;
75 #size-cells = <0>; 75 #size-cells = <0>;
76 device_type = "mdio";
77 compatible = "marvell,mv64360-mdio"; 76 compatible = "marvell,mv64360-mdio";
78 PHY0: ethernet-phy@1 { 77 PHY0: ethernet-phy@1 {
79 device_type = "ethernet-phy";
80 compatible = "broadcom,bcm5421"; 78 compatible = "broadcom,bcm5421";
81 interrupts = <76>; /* GPP 12 */ 79 interrupts = <76>; /* GPP 12 */
82 interrupt-parent = <&PIC>; 80 interrupt-parent = <&PIC>;
83 reg = <1>; 81 reg = <1>;
84 }; 82 };
85 PHY1: ethernet-phy@3 { 83 PHY1: ethernet-phy@3 {
86 device_type = "ethernet-phy";
87 compatible = "broadcom,bcm5421"; 84 compatible = "broadcom,bcm5421";
88 interrupts = <76>; /* GPP 12 */ 85 interrupts = <76>; /* GPP 12 */
89 interrupt-parent = <&PIC>; 86 interrupt-parent = <&PIC>;
@@ -162,7 +159,6 @@
162 }; 159 };
163 160
164 MPSC0: mpsc@8000 { 161 MPSC0: mpsc@8000 {
165 device_type = "serial";
166 compatible = "marvell,mv64360-mpsc"; 162 compatible = "marvell,mv64360-mpsc";
167 reg = <0x8000 0x38>; 163 reg = <0x8000 0x38>;
168 virtual-reg = <0xf1008000>; 164 virtual-reg = <0xf1008000>;
@@ -177,7 +173,6 @@
177 }; 173 };
178 174
179 MPSC1: mpsc@9000 { 175 MPSC1: mpsc@9000 {
180 device_type = "serial";
181 compatible = "marvell,mv64360-mpsc"; 176 compatible = "marvell,mv64360-mpsc";
182 reg = <0x9000 0x38>; 177 reg = <0x9000 0x38>;
183 virtual-reg = <0xf1009000>; 178 virtual-reg = <0xf1009000>;
diff --git a/arch/powerpc/boot/dts/sbc8349.dts b/arch/powerpc/boot/dts/sbc8349.dts
index b1e45a8537a5..fc89e00b765c 100644
--- a/arch/powerpc/boot/dts/sbc8349.dts
+++ b/arch/powerpc/boot/dts/sbc8349.dts
@@ -173,14 +173,12 @@
173 interrupt-parent = <&ipic>; 173 interrupt-parent = <&ipic>;
174 interrupts = <20 0x8>; 174 interrupts = <20 0x8>;
175 reg = <0x19>; 175 reg = <0x19>;
176 device_type = "ethernet-phy";
177 }; 176 };
178 177
179 phy1: ethernet-phy@1a { 178 phy1: ethernet-phy@1a {
180 interrupt-parent = <&ipic>; 179 interrupt-parent = <&ipic>;
181 interrupts = <21 0x8>; 180 interrupts = <21 0x8>;
182 reg = <0x1a>; 181 reg = <0x1a>;
183 device_type = "ethernet-phy";
184 }; 182 };
185 183
186 tbi0: tbi-phy@11 { 184 tbi0: tbi-phy@11 {
diff --git a/arch/powerpc/boot/dts/sbc8548-post.dtsi b/arch/powerpc/boot/dts/sbc8548-post.dtsi
index 33a47e27a11e..9b505c8e5350 100644
--- a/arch/powerpc/boot/dts/sbc8548-post.dtsi
+++ b/arch/powerpc/boot/dts/sbc8548-post.dtsi
@@ -137,13 +137,11 @@
137 interrupt-parent = <&mpic>; 137 interrupt-parent = <&mpic>;
138 interrupts = <0x6 0x1>; 138 interrupts = <0x6 0x1>;
139 reg = <0x19>; 139 reg = <0x19>;
140 device_type = "ethernet-phy";
141 }; 140 };
142 phy1: ethernet-phy@1a { 141 phy1: ethernet-phy@1a {
143 interrupt-parent = <&mpic>; 142 interrupt-parent = <&mpic>;
144 interrupts = <0x7 0x1>; 143 interrupts = <0x7 0x1>;
145 reg = <0x1a>; 144 reg = <0x1a>;
146 device_type = "ethernet-phy";
147 }; 145 };
148 tbi0: tbi-phy@11 { 146 tbi0: tbi-phy@11 {
149 reg = <0x11>; 147 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/sbc8641d.dts b/arch/powerpc/boot/dts/sbc8641d.dts
index 56bebce87842..631ede72e226 100644
--- a/arch/powerpc/boot/dts/sbc8641d.dts
+++ b/arch/powerpc/boot/dts/sbc8641d.dts
@@ -230,25 +230,21 @@
230 interrupt-parent = <&mpic>; 230 interrupt-parent = <&mpic>;
231 interrupts = <10 1>; 231 interrupts = <10 1>;
232 reg = <0x1f>; 232 reg = <0x1f>;
233 device_type = "ethernet-phy";
234 }; 233 };
235 phy1: ethernet-phy@0 { 234 phy1: ethernet-phy@0 {
236 interrupt-parent = <&mpic>; 235 interrupt-parent = <&mpic>;
237 interrupts = <10 1>; 236 interrupts = <10 1>;
238 reg = <0>; 237 reg = <0>;
239 device_type = "ethernet-phy";
240 }; 238 };
241 phy2: ethernet-phy@1 { 239 phy2: ethernet-phy@1 {
242 interrupt-parent = <&mpic>; 240 interrupt-parent = <&mpic>;
243 interrupts = <10 1>; 241 interrupts = <10 1>;
244 reg = <1>; 242 reg = <1>;
245 device_type = "ethernet-phy";
246 }; 243 };
247 phy3: ethernet-phy@2 { 244 phy3: ethernet-phy@2 {
248 interrupt-parent = <&mpic>; 245 interrupt-parent = <&mpic>;
249 interrupts = <10 1>; 246 interrupts = <10 1>;
250 reg = <2>; 247 reg = <2>;
251 device_type = "ethernet-phy";
252 }; 248 };
253 tbi0: tbi-phy@11 { 249 tbi0: tbi-phy@11 {
254 reg = <0x11>; 250 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/stx_gp3_8560.dts b/arch/powerpc/boot/dts/stx_gp3_8560.dts
index b670d03fbcd9..78a72ee48205 100644
--- a/arch/powerpc/boot/dts/stx_gp3_8560.dts
+++ b/arch/powerpc/boot/dts/stx_gp3_8560.dts
@@ -161,13 +161,11 @@
161 interrupt-parent = <&mpic>; 161 interrupt-parent = <&mpic>;
162 interrupts = <5 4>; 162 interrupts = <5 4>;
163 reg = <2>; 163 reg = <2>;
164 device_type = "ethernet-phy";
165 }; 164 };
166 phy4: ethernet-phy@4 { 165 phy4: ethernet-phy@4 {
167 interrupt-parent = <&mpic>; 166 interrupt-parent = <&mpic>;
168 interrupts = <5 4>; 167 interrupts = <5 4>;
169 reg = <4>; 168 reg = <4>;
170 device_type = "ethernet-phy";
171 }; 169 };
172 tbi0: tbi-phy@11 { 170 tbi0: tbi-phy@11 {
173 reg = <0x11>; 171 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/stxssa8555.dts b/arch/powerpc/boot/dts/stxssa8555.dts
index 4f166b01c1b6..859f854ba538 100644
--- a/arch/powerpc/boot/dts/stxssa8555.dts
+++ b/arch/powerpc/boot/dts/stxssa8555.dts
@@ -164,13 +164,11 @@
164 interrupt-parent = <&mpic>; 164 interrupt-parent = <&mpic>;
165 interrupts = <5 1>; 165 interrupts = <5 1>;
166 reg = <0x2>; 166 reg = <0x2>;
167 device_type = "ethernet-phy";
168 }; 167 };
169 phy1: ethernet-phy@4 { 168 phy1: ethernet-phy@4 {
170 interrupt-parent = <&mpic>; 169 interrupt-parent = <&mpic>;
171 interrupts = <5 1>; 170 interrupts = <5 1>;
172 reg = <0x4>; 171 reg = <0x4>;
173 device_type = "ethernet-phy";
174 }; 172 };
175 tbi0: tbi-phy@11 { 173 tbi0: tbi-phy@11 {
176 reg = <0x11>; 174 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8540.dts b/arch/powerpc/boot/dts/tqm8540.dts
index ed264d9ae356..91cbd7acd276 100644
--- a/arch/powerpc/boot/dts/tqm8540.dts
+++ b/arch/powerpc/boot/dts/tqm8540.dts
@@ -172,19 +172,16 @@
172 interrupt-parent = <&mpic>; 172 interrupt-parent = <&mpic>;
173 interrupts = <8 1>; 173 interrupts = <8 1>;
174 reg = <1>; 174 reg = <1>;
175 device_type = "ethernet-phy";
176 }; 175 };
177 phy2: ethernet-phy@2 { 176 phy2: ethernet-phy@2 {
178 interrupt-parent = <&mpic>; 177 interrupt-parent = <&mpic>;
179 interrupts = <8 1>; 178 interrupts = <8 1>;
180 reg = <2>; 179 reg = <2>;
181 device_type = "ethernet-phy";
182 }; 180 };
183 phy3: ethernet-phy@3 { 181 phy3: ethernet-phy@3 {
184 interrupt-parent = <&mpic>; 182 interrupt-parent = <&mpic>;
185 interrupts = <8 1>; 183 interrupts = <8 1>;
186 reg = <3>; 184 reg = <3>;
187 device_type = "ethernet-phy";
188 }; 185 };
189 tbi0: tbi-phy@11 { 186 tbi0: tbi-phy@11 {
190 reg = <0x11>; 187 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8541.dts b/arch/powerpc/boot/dts/tqm8541.dts
index 925242115814..84dce2d5fc48 100644
--- a/arch/powerpc/boot/dts/tqm8541.dts
+++ b/arch/powerpc/boot/dts/tqm8541.dts
@@ -172,19 +172,16 @@
172 interrupt-parent = <&mpic>; 172 interrupt-parent = <&mpic>;
173 interrupts = <8 1>; 173 interrupts = <8 1>;
174 reg = <1>; 174 reg = <1>;
175 device_type = "ethernet-phy";
176 }; 175 };
177 phy2: ethernet-phy@2 { 176 phy2: ethernet-phy@2 {
178 interrupt-parent = <&mpic>; 177 interrupt-parent = <&mpic>;
179 interrupts = <8 1>; 178 interrupts = <8 1>;
180 reg = <2>; 179 reg = <2>;
181 device_type = "ethernet-phy";
182 }; 180 };
183 phy3: ethernet-phy@3 { 181 phy3: ethernet-phy@3 {
184 interrupt-parent = <&mpic>; 182 interrupt-parent = <&mpic>;
185 interrupts = <8 1>; 183 interrupts = <8 1>;
186 reg = <3>; 184 reg = <3>;
187 device_type = "ethernet-phy";
188 }; 185 };
189 tbi0: tbi-phy@11 { 186 tbi0: tbi-phy@11 {
190 reg = <0x11>; 187 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8548-bigflash.dts b/arch/powerpc/boot/dts/tqm8548-bigflash.dts
index 6e1ac50852a4..7a333dd02d9c 100644
--- a/arch/powerpc/boot/dts/tqm8548-bigflash.dts
+++ b/arch/powerpc/boot/dts/tqm8548-bigflash.dts
@@ -185,31 +185,26 @@
185 interrupt-parent = <&mpic>; 185 interrupt-parent = <&mpic>;
186 interrupts = <8 1>; 186 interrupts = <8 1>;
187 reg = <1>; 187 reg = <1>;
188 device_type = "ethernet-phy";
189 }; 188 };
190 phy2: ethernet-phy@1 { 189 phy2: ethernet-phy@1 {
191 interrupt-parent = <&mpic>; 190 interrupt-parent = <&mpic>;
192 interrupts = <8 1>; 191 interrupts = <8 1>;
193 reg = <2>; 192 reg = <2>;
194 device_type = "ethernet-phy";
195 }; 193 };
196 phy3: ethernet-phy@3 { 194 phy3: ethernet-phy@3 {
197 interrupt-parent = <&mpic>; 195 interrupt-parent = <&mpic>;
198 interrupts = <8 1>; 196 interrupts = <8 1>;
199 reg = <3>; 197 reg = <3>;
200 device_type = "ethernet-phy";
201 }; 198 };
202 phy4: ethernet-phy@4 { 199 phy4: ethernet-phy@4 {
203 interrupt-parent = <&mpic>; 200 interrupt-parent = <&mpic>;
204 interrupts = <8 1>; 201 interrupts = <8 1>;
205 reg = <4>; 202 reg = <4>;
206 device_type = "ethernet-phy";
207 }; 203 };
208 phy5: ethernet-phy@5 { 204 phy5: ethernet-phy@5 {
209 interrupt-parent = <&mpic>; 205 interrupt-parent = <&mpic>;
210 interrupts = <8 1>; 206 interrupts = <8 1>;
211 reg = <5>; 207 reg = <5>;
212 device_type = "ethernet-phy";
213 }; 208 };
214 tbi0: tbi-phy@11 { 209 tbi0: tbi-phy@11 {
215 reg = <0x11>; 210 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8548.dts b/arch/powerpc/boot/dts/tqm8548.dts
index 161e75eac7f7..c737caff10c7 100644
--- a/arch/powerpc/boot/dts/tqm8548.dts
+++ b/arch/powerpc/boot/dts/tqm8548.dts
@@ -185,31 +185,26 @@
185 interrupt-parent = <&mpic>; 185 interrupt-parent = <&mpic>;
186 interrupts = <8 1>; 186 interrupts = <8 1>;
187 reg = <1>; 187 reg = <1>;
188 device_type = "ethernet-phy";
189 }; 188 };
190 phy2: ethernet-phy@1 { 189 phy2: ethernet-phy@1 {
191 interrupt-parent = <&mpic>; 190 interrupt-parent = <&mpic>;
192 interrupts = <8 1>; 191 interrupts = <8 1>;
193 reg = <2>; 192 reg = <2>;
194 device_type = "ethernet-phy";
195 }; 193 };
196 phy3: ethernet-phy@3 { 194 phy3: ethernet-phy@3 {
197 interrupt-parent = <&mpic>; 195 interrupt-parent = <&mpic>;
198 interrupts = <8 1>; 196 interrupts = <8 1>;
199 reg = <3>; 197 reg = <3>;
200 device_type = "ethernet-phy";
201 }; 198 };
202 phy4: ethernet-phy@4 { 199 phy4: ethernet-phy@4 {
203 interrupt-parent = <&mpic>; 200 interrupt-parent = <&mpic>;
204 interrupts = <8 1>; 201 interrupts = <8 1>;
205 reg = <4>; 202 reg = <4>;
206 device_type = "ethernet-phy";
207 }; 203 };
208 phy5: ethernet-phy@5 { 204 phy5: ethernet-phy@5 {
209 interrupt-parent = <&mpic>; 205 interrupt-parent = <&mpic>;
210 interrupts = <8 1>; 206 interrupts = <8 1>;
211 reg = <5>; 207 reg = <5>;
212 device_type = "ethernet-phy";
213 }; 208 };
214 tbi0: tbi-phy@11 { 209 tbi0: tbi-phy@11 {
215 reg = <0x11>; 210 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8555.dts b/arch/powerpc/boot/dts/tqm8555.dts
index aa6ff0d3dd9a..d0416a5cdddf 100644
--- a/arch/powerpc/boot/dts/tqm8555.dts
+++ b/arch/powerpc/boot/dts/tqm8555.dts
@@ -172,19 +172,16 @@
172 interrupt-parent = <&mpic>; 172 interrupt-parent = <&mpic>;
173 interrupts = <8 1>; 173 interrupts = <8 1>;
174 reg = <1>; 174 reg = <1>;
175 device_type = "ethernet-phy";
176 }; 175 };
177 phy2: ethernet-phy@2 { 176 phy2: ethernet-phy@2 {
178 interrupt-parent = <&mpic>; 177 interrupt-parent = <&mpic>;
179 interrupts = <8 1>; 178 interrupts = <8 1>;
180 reg = <2>; 179 reg = <2>;
181 device_type = "ethernet-phy";
182 }; 180 };
183 phy3: ethernet-phy@3 { 181 phy3: ethernet-phy@3 {
184 interrupt-parent = <&mpic>; 182 interrupt-parent = <&mpic>;
185 interrupts = <8 1>; 183 interrupts = <8 1>;
186 reg = <3>; 184 reg = <3>;
187 device_type = "ethernet-phy";
188 }; 185 };
189 tbi0: tbi-phy@11 { 186 tbi0: tbi-phy@11 {
190 reg = <0x11>; 187 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8560.dts b/arch/powerpc/boot/dts/tqm8560.dts
index 7665a16a8b9a..f9a11ebf736c 100644
--- a/arch/powerpc/boot/dts/tqm8560.dts
+++ b/arch/powerpc/boot/dts/tqm8560.dts
@@ -174,19 +174,16 @@
174 interrupt-parent = <&mpic>; 174 interrupt-parent = <&mpic>;
175 interrupts = <8 1>; 175 interrupts = <8 1>;
176 reg = <1>; 176 reg = <1>;
177 device_type = "ethernet-phy";
178 }; 177 };
179 phy2: ethernet-phy@2 { 178 phy2: ethernet-phy@2 {
180 interrupt-parent = <&mpic>; 179 interrupt-parent = <&mpic>;
181 interrupts = <8 1>; 180 interrupts = <8 1>;
182 reg = <2>; 181 reg = <2>;
183 device_type = "ethernet-phy";
184 }; 182 };
185 phy3: ethernet-phy@3 { 183 phy3: ethernet-phy@3 {
186 interrupt-parent = <&mpic>; 184 interrupt-parent = <&mpic>;
187 interrupts = <8 1>; 185 interrupts = <8 1>;
188 reg = <3>; 186 reg = <3>;
189 device_type = "ethernet-phy";
190 }; 187 };
191 tbi0: tbi-phy@11 { 188 tbi0: tbi-phy@11 {
192 reg = <0x11>; 189 reg = <0x11>;
diff --git a/arch/powerpc/boot/dts/tqm8xx.dts b/arch/powerpc/boot/dts/tqm8xx.dts
index c3dba2518d8c..3d1446b99c7e 100644
--- a/arch/powerpc/boot/dts/tqm8xx.dts
+++ b/arch/powerpc/boot/dts/tqm8xx.dts
@@ -107,7 +107,6 @@
107 #size-cells = <0>; 107 #size-cells = <0>;
108 PHY: ethernet-phy@f { 108 PHY: ethernet-phy@f {
109 reg = <0xf>; 109 reg = <0xf>;
110 device_type = "ethernet-phy";
111 }; 110 };
112 }; 111 };
113 112
diff --git a/arch/powerpc/sysdev/mv64x60_dev.c b/arch/powerpc/sysdev/mv64x60_dev.c
index a3a8fad8537d..c2dba7db71ad 100644
--- a/arch/powerpc/sysdev/mv64x60_dev.c
+++ b/arch/powerpc/sysdev/mv64x60_dev.c
@@ -448,7 +448,7 @@ static int __init mv64x60_device_setup(void)
448 int err; 448 int err;
449 449
450 id = 0; 450 id = 0;
451 for_each_compatible_node(np, "serial", "marvell,mv64360-mpsc") { 451 for_each_compatible_node(np, NULL, "marvell,mv64360-mpsc") {
452 err = mv64x60_mpsc_device_setup(np, id++); 452 err = mv64x60_mpsc_device_setup(np, id++);
453 if (err) 453 if (err)
454 printk(KERN_ERR "Failed to initialize MV64x60 " 454 printk(KERN_ERR "Failed to initialize MV64x60 "
diff --git a/arch/powerpc/sysdev/mv64x60_udbg.c b/arch/powerpc/sysdev/mv64x60_udbg.c
index 50a81387e9b1..3b8734b870e9 100644
--- a/arch/powerpc/sysdev/mv64x60_udbg.c
+++ b/arch/powerpc/sysdev/mv64x60_udbg.c
@@ -85,7 +85,7 @@ static void mv64x60_udbg_init(void)
85 if (!stdout) 85 if (!stdout)
86 return; 86 return;
87 87
88 for_each_compatible_node(np, "serial", "marvell,mv64360-mpsc") { 88 for_each_compatible_node(np, NULL, "marvell,mv64360-mpsc") {
89 if (np == stdout) 89 if (np == stdout)
90 break; 90 break;
91 } 91 }
diff --git a/drivers/of/base.c b/drivers/of/base.c
index f807d0edabf3..ff85450d5683 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -415,6 +415,9 @@ static int __of_device_is_available(const struct device_node *device)
415 const char *status; 415 const char *status;
416 int statlen; 416 int statlen;
417 417
418 if (!device)
419 return 0;
420
418 status = __of_get_property(device, "status", &statlen); 421 status = __of_get_property(device, "status", &statlen);
419 if (status == NULL) 422 if (status == NULL)
420 return 1; 423 return 1;
@@ -731,24 +734,42 @@ static
731const struct of_device_id *__of_match_node(const struct of_device_id *matches, 734const struct of_device_id *__of_match_node(const struct of_device_id *matches,
732 const struct device_node *node) 735 const struct device_node *node)
733{ 736{
737 const char *cp;
738 int cplen, l;
739
734 if (!matches) 740 if (!matches)
735 return NULL; 741 return NULL;
736 742
737 while (matches->name[0] || matches->type[0] || matches->compatible[0]) { 743 cp = __of_get_property(node, "compatible", &cplen);
738 int match = 1; 744 do {
739 if (matches->name[0]) 745 const struct of_device_id *m = matches;
740 match &= node->name 746
741 && !strcmp(matches->name, node->name); 747 /* Check against matches with current compatible string */
742 if (matches->type[0]) 748 while (m->name[0] || m->type[0] || m->compatible[0]) {
743 match &= node->type 749 int match = 1;
744 && !strcmp(matches->type, node->type); 750 if (m->name[0])
745 if (matches->compatible[0]) 751 match &= node->name
746 match &= __of_device_is_compatible(node, 752 && !strcmp(m->name, node->name);
747 matches->compatible); 753 if (m->type[0])
748 if (match) 754 match &= node->type
749 return matches; 755 && !strcmp(m->type, node->type);
750 matches++; 756 if (m->compatible[0])
751 } 757 match &= cp
758 && !of_compat_cmp(m->compatible, cp,
759 strlen(m->compatible));
760 if (match)
761 return m;
762 m++;
763 }
764
765 /* Get node's next compatible string */
766 if (cp) {
767 l = strlen(cp) + 1;
768 cp += l;
769 cplen -= l;
770 }
771 } while (cp && (cplen > 0));
772
752 return NULL; 773 return NULL;
753} 774}
754 775
@@ -757,7 +778,10 @@ const struct of_device_id *__of_match_node(const struct of_device_id *matches,
757 * @matches: array of of device match structures to search in 778 * @matches: array of of device match structures to search in
758 * @node: the of device structure to match against 779 * @node: the of device structure to match against
759 * 780 *
760 * Low level utility function used by device matching. 781 * Low level utility function used by device matching. Matching order
782 * is to compare each of the node's compatibles with all given matches
783 * first. This implies node's compatible is sorted from specific to
784 * generic while matches can be in any order.
761 */ 785 */
762const struct of_device_id *of_match_node(const struct of_device_id *matches, 786const struct of_device_id *of_match_node(const struct of_device_id *matches,
763 const struct device_node *node) 787 const struct device_node *node)
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index 27212402c532..9bcf2cf19357 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -216,6 +216,9 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq)
216 goto fail; 216 goto fail;
217 } 217 }
218 218
219 if (!of_device_is_available(newpar))
220 match = 0;
221
219 /* Get #interrupt-cells and #address-cells of new 222 /* Get #interrupt-cells and #address-cells of new
220 * parent 223 * parent
221 */ 224 */
@@ -435,7 +438,8 @@ void __init of_irq_init(const struct of_device_id *matches)
435 INIT_LIST_HEAD(&intc_parent_list); 438 INIT_LIST_HEAD(&intc_parent_list);
436 439
437 for_each_matching_node(np, matches) { 440 for_each_matching_node(np, matches) {
438 if (!of_find_property(np, "interrupt-controller", NULL)) 441 if (!of_find_property(np, "interrupt-controller", NULL) ||
442 !of_device_is_available(np))
439 continue; 443 continue;
440 /* 444 /*
441 * Here, we allocate and populate an intc_desc with the node 445 * Here, we allocate and populate an intc_desc with the node