From 38936426f7d4d569f918cb2ca646263b4c38e25b Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Thu, 3 Oct 2013 02:50:00 +0000 Subject: kirkwood: update patches and configuration (3.10) Signed-off-by: Luka Perkov SVN-Revision: 38295 --- ...d-add-gigabit-ethernet-and-mvmdio-device-.patch | 617 +++++++++++++++++++++ 1 file changed, 617 insertions(+) create mode 100644 target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch (limited to 'target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch') diff --git a/target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch b/target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch new file mode 100644 index 0000000000..23349093d7 --- /dev/null +++ b/target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch @@ -0,0 +1,617 @@ +From 678cc6aa6f66182cddfc0c8fc34d4ef196669b83 Mon Sep 17 00:00:00 2001 +From: Sebastian Hesselbarth +Date: Sun, 7 Jul 2013 22:34:56 +0200 +Subject: [PATCH 26/29] ARM: kirkwood: add gigabit ethernet and mvmdio device + tree nodes + +This patch adds mv643xx_eth and mvmdio device tree nodes for DT enabled +Kirkwood boards. Phy nodes are also added with reg property set on a +per-board basis. + +Signed-off-by: Sebastian Hesselbarth +Signed-off-by: Jason Cooper +--- + arch/arm/boot/dts/kirkwood-cloudbox.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-db.dtsi | 16 +++++++ + arch/arm/boot/dts/kirkwood-dnskw.dtsi | 16 +++++++ + arch/arm/boot/dts/kirkwood-dockstar.dts | 17 +++++++ + arch/arm/boot/dts/kirkwood-dreamplug.dts | 28 ++++++++++++ + arch/arm/boot/dts/kirkwood-goflexnet.dts | 16 +++++++ + .../arm/boot/dts/kirkwood-guruplug-server-plus.dts | 30 +++++++++++++ + arch/arm/boot/dts/kirkwood-ib62x0.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-iconnect.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts | 24 ++++++++++ + arch/arm/boot/dts/kirkwood-is2.dts | 2 + + arch/arm/boot/dts/kirkwood-km_kirkwood.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-lsxl.dtsi | 28 ++++++++++++ + arch/arm/boot/dts/kirkwood-mplcec4.dts | 27 +++++++++++ + .../boot/dts/kirkwood-netgear_readynas_duo_v2.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-ns2-common.dtsi | 16 +++++++ + arch/arm/boot/dts/kirkwood-ns2.dts | 2 + + arch/arm/boot/dts/kirkwood-ns2lite.dts | 2 + + arch/arm/boot/dts/kirkwood-ns2max.dts | 2 + + arch/arm/boot/dts/kirkwood-ns2mini.dts | 2 + + arch/arm/boot/dts/kirkwood-openblocks_a6.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-topkick.dts | 16 +++++++ + arch/arm/boot/dts/kirkwood-ts219-6281.dts | 4 +- + arch/arm/boot/dts/kirkwood-ts219-6282.dts | 4 +- + arch/arm/boot/dts/kirkwood-ts219.dtsi | 16 +++++++ + arch/arm/boot/dts/kirkwood.dtsi | 52 ++++++++++++++++++++++ + 26 files changed, 414 insertions(+), 2 deletions(-) + +--- a/arch/arm/boot/dts/kirkwood-cloudbox.dts ++++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts +@@ -87,3 +87,19 @@ + gpios = <&gpio0 17 0>; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-db.dtsi ++++ b/arch/arm/boot/dts/kirkwood-db.dtsi +@@ -87,3 +87,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@8 { ++ device_type = "ethernet-phy"; ++ reg = <8>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-dnskw.dtsi ++++ b/arch/arm/boot/dts/kirkwood-dnskw.dtsi +@@ -217,3 +217,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@8 { ++ device_type = "ethernet-phy"; ++ reg = <8>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-dockstar.dts ++++ b/arch/arm/boot/dts/kirkwood-dockstar.dts +@@ -91,3 +91,20 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ compatible = "marvell,88e1116"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-dreamplug.dts ++++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts +@@ -99,3 +99,31 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++ ++ ethphy1: ethernet-phy@1 { ++ device_type = "ethernet-phy"; ++ reg = <1>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-goflexnet.dts ++++ b/arch/arm/boot/dts/kirkwood-goflexnet.dts +@@ -170,3 +170,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts ++++ b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts +@@ -96,3 +96,33 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ compatible = "marvell,88e1121"; ++ reg = <0>; ++ }; ++ ++ ethphy1: ethernet-phy@1 { ++ device_type = "ethernet-phy"; ++ compatible = "marvell,88e1121"; ++ reg = <1>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-ib62x0.dts ++++ b/arch/arm/boot/dts/kirkwood-ib62x0.dts +@@ -119,3 +119,19 @@ + + + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@8 { ++ device_type = "ethernet-phy"; ++ reg = <8>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-iconnect.dts ++++ b/arch/arm/boot/dts/kirkwood-iconnect.dts +@@ -176,3 +176,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@11 { ++ device_type = "ethernet-phy"; ++ reg = <11>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts ++++ b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts +@@ -191,3 +191,27 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy1: ethernet-phy@11 { ++ device_type = "ethernet-phy"; ++ reg = <11>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ speed = <1000>; ++ duplex = <1>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-is2.dts ++++ b/arch/arm/boot/dts/kirkwood-is2.dts +@@ -28,3 +28,5 @@ + }; + }; + }; ++ ++ðphy0 { reg = <8>; }; +--- a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts ++++ b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts +@@ -43,3 +43,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi ++++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi +@@ -201,3 +201,31 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++ ++ ethphy1: ethernet-phy@8 { ++ device_type = "ethernet-phy"; ++ reg = <8>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-mplcec4.dts ++++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts +@@ -190,3 +190,30 @@ + }; + }; + ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@1 { ++ device_type = "ethernet-phy"; ++ reg = <1>; ++ }; ++ ++ ethphy1: ethernet-phy@2 { ++ device_type = "ethernet-phy"; ++ reg = <2>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts ++++ b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts +@@ -178,3 +178,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi ++++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi +@@ -82,3 +82,19 @@ + }; + + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy { ++ device_type = "ethernet-phy"; ++ /* overwrite reg property in board file */ ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-ns2.dts ++++ b/arch/arm/boot/dts/kirkwood-ns2.dts +@@ -28,3 +28,5 @@ + }; + }; + }; ++ ++ðphy0 { reg = <8>; }; +--- a/arch/arm/boot/dts/kirkwood-ns2lite.dts ++++ b/arch/arm/boot/dts/kirkwood-ns2lite.dts +@@ -28,3 +28,5 @@ + }; + }; + }; ++ ++ðphy0 { reg = <0>; }; +--- a/arch/arm/boot/dts/kirkwood-ns2max.dts ++++ b/arch/arm/boot/dts/kirkwood-ns2max.dts +@@ -47,3 +47,5 @@ + }; + }; + }; ++ ++ðphy0 { reg = <8>; }; +--- a/arch/arm/boot/dts/kirkwood-ns2mini.dts ++++ b/arch/arm/boot/dts/kirkwood-ns2mini.dts +@@ -48,3 +48,5 @@ + }; + }; + }; ++ ++ðphy0 { reg = <0>; }; +--- a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts ++++ b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts +@@ -210,3 +210,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-topkick.dts ++++ b/arch/arm/boot/dts/kirkwood-topkick.dts +@@ -201,3 +201,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-ts219-6281.dts ++++ b/arch/arm/boot/dts/kirkwood-ts219-6281.dts +@@ -50,4 +50,6 @@ + gpios = <&gpio0 16 1>; + }; + }; +-}; +\ No newline at end of file ++}; ++ ++ðphy0 { reg = <8>; }; +--- a/arch/arm/boot/dts/kirkwood-ts219-6282.dts ++++ b/arch/arm/boot/dts/kirkwood-ts219-6282.dts +@@ -50,4 +50,6 @@ + gpios = <&gpio1 5 1>; + }; + }; +-}; +\ No newline at end of file ++}; ++ ++ðphy0 { reg = <0>; }; +--- a/arch/arm/boot/dts/kirkwood-ts219.dtsi ++++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi +@@ -81,3 +81,19 @@ + }; + }; + }; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy { ++ device_type = "ethernet-phy"; ++ /* overwrite reg property in board file */ ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood.dtsi ++++ b/arch/arm/boot/dts/kirkwood.dtsi +@@ -203,5 +203,57 @@ + clocks = <&gate_clk 4>; + status = "disabled"; + }; ++ ++ mdio: mdio-bus@72004 { ++ compatible = "marvell,orion-mdio"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <0x72004 0x84>; ++ interrupts = <46>; ++ clocks = <&gate_clk 0>; ++ status = "disabled"; ++ ++ /* add phy nodes in board file */ ++ }; ++ ++ eth0: ethernet-controller@72000 { ++ compatible = "marvell,kirkwood-eth"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <0x72000 0x4000>; ++ clocks = <&gate_clk 0>; ++ marvell,tx-checksum-limit = <1600>; ++ status = "disabled"; ++ ++ ethernet0-port@0 { ++ device_type = "network"; ++ compatible = "marvell,kirkwood-eth-port"; ++ reg = <0>; ++ interrupts = <11>; ++ /* overwrite MAC address in bootloader */ ++ local-mac-address = [00 00 00 00 00 00]; ++ /* set phy-handle property in board file */ ++ }; ++ }; ++ ++ eth1: ethernet-controller@76000 { ++ compatible = "marvell,kirkwood-eth"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <0x76000 0x4000>; ++ clocks = <&gate_clk 19>; ++ marvell,tx-checksum-limit = <1600>; ++ status = "disabled"; ++ ++ ethernet1-port@0 { ++ device_type = "network"; ++ compatible = "marvell,kirkwood-eth-port"; ++ reg = <0>; ++ interrupts = <15>; ++ /* overwrite MAC address in bootloader */ ++ local-mac-address = [00 00 00 00 00 00]; ++ /* set phy-handle property in board file */ ++ }; ++ }; + }; + }; -- cgit v1.2.3