summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2016-12-04 00:20:36 +0000
committerRussell King <rmk+kernel@armlinux.org.uk>2019-07-09 16:42:13 +0100
commitf063741511c070e45f724e78b7768a59bb3d7d77 (patch)
tree6fdbd54757d1242907800c0d928bd92f4aed450b
parent66b48e32cf11e6ba82178a1e2b19fe1e416fadd0 (diff)
arm64: dts: marvell: cp110: add Marvell mvpp2x ethernet
Add mdio and ethernet controllers on CP110. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
-rw-r--r--arch/arm64/boot/dts/marvell/armada-cp110.dtsi78
1 files changed, 78 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
index f71afb1de18f..f554d02c42e7 100644
--- a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
@@ -167,6 +167,84 @@
};
};
+ gop {
+ CP110_LABEL(mv_emac0): mac0 {
+ interrupts = <129 IRQ_TYPE_LEVEL_HIGH>; /* Link IRQ */
+ port-id = <0>; /* gop_port_id */
+ };
+ CP110_LABEL(mv_emac2): mac2 {
+ interrupts = <128 IRQ_TYPE_LEVEL_HIGH>; /* Link IRQ */
+ port-id = <2>; /* gop_port_id */
+ };
+ CP110_LABEL(mv_emac3): mac3 {
+ interrupts = <127 IRQ_TYPE_LEVEL_HIGH>; /* Link IRQ */
+ port-id = <3>; /* gop_port_id */
+ };
+ };
+
+ CP110_LABEL(mv_ppv22): ppv22@000000 {
+ compatible = "marvell,mv-pp22";
+ reg = <0x000000 0x90000>, /* Packet Processor regs */
+ <0x129000 0x0600>, /* XMIB regs */
+ <0x12a000 0x0200>, /* LED regs */
+ <0x12a200 0x0200>, /* SMI regs */
+ <0x12a400 0x0200>, /* TAI regs */
+ <0x12a600 0x0200>, /* XSMI regs */
+ <0x12b000 0x1000>, /* MG Internal regs */
+ <0x130000 0x6000>, /* MSPG regs */
+ <0x130400 0x0200>, /* MSPG - XPCS regs */
+ <0x130600 0x0200>, /* FCA - flow control regs*/
+ <0x130e00 0x0100>, /* MSPG - GMAC regs */
+ <0x130f00 0x0100>, /* MSPG - XLG MAC regs */
+ <0x441100 0x0100>; /* RFU-1 Regs */
+ reg-names = "pp", "xmib", "led", "smi", "tai",
+ "xsmi", "mg", "mspg", "xpcs",
+ "fca", "gmac", "xlg", "rfu1";
+ clocks = <&CP110_LABEL(clk) 1 3>,
+ <&CP110_LABEL(clk) 1 18>,
+ <&CP110_LABEL(clk) 1 9>,
+ <&CP110_LABEL(clk) 1 6>,
+ <&CP110_LABEL(clk) 1 5>;
+ clock-names = "pp_clk", "gop_core_clk",
+ "gop_clk", "mg_core_clk",
+ "mg_clk";
+ l4_chksum_jumbo_port = <0>;
+ status = "disabled";
+
+ CP110_LABEL(mv_eth0): eth0@010000 {
+ emac-data = <&CP110_LABEL(mv_emac0)>;
+ interrupts = <39 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#0 Interrupt */
+ <43 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#1 Interrupt */
+ <47 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#2 Interrupt */
+ <51 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#3 Interrupt */
+ <55 IRQ_TYPE_LEVEL_HIGH>; /* RX Shared Interrupt */
+ port-id = <0>; /* pp2_port_id */
+ status = "disabled";
+ };
+
+ CP110_LABEL(mv_eth1): eth1@020000 {
+ emac-data = <&CP110_LABEL(mv_emac2)>;
+ interrupts = <40 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#0 Interrupt */
+ <44 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#1 Interrupt */
+ <48 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#2 Interrupt */
+ <52 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#3 Interrupt */
+ <56 IRQ_TYPE_LEVEL_HIGH>; /* RX Shared Interrupt */
+ port-id = <1>; /* pp2_port_id */
+ status = "disabled";
+ };
+
+ CP110_LABEL(mv_eth2): eth2@030000 {
+ emac-data = <&CP110_LABEL(mv_emac3)>;
+ interrupts = <41 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#0 Interrupt */
+ <45 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#1 Interrupt */
+ <49 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#2 Interrupt */
+ <53 IRQ_TYPE_LEVEL_HIGH>, /* TX CPU#3 Interrupt */
+ <57 IRQ_TYPE_LEVEL_HIGH>; /* RX Shared Interrupt */
+ port-id = <2>; /* pp2_port_id */
+ status = "disabled";
+ };
+ };
+
CP110_LABEL(mdio): mdio@12a200 {
#address-cells = <1>;
#size-cells = <0>;