summaryrefslogtreecommitdiff
path: root/arch/powerpc/boot/dts/p5040ds.dts
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/boot/dts/p5040ds.dts')
-rw-r--r--arch/powerpc/boot/dts/p5040ds.dts407
1 files changed, 401 insertions, 6 deletions
diff --git a/arch/powerpc/boot/dts/p5040ds.dts b/arch/powerpc/boot/dts/p5040ds.dts
index 860b5cc..934ebb0 100644
--- a/arch/powerpc/boot/dts/p5040ds.dts
+++ b/arch/powerpc/boot/dts/p5040ds.dts
@@ -6,13 +6,13 @@
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
+ * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
* * Neither the name of Freescale Semiconductor nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
*
*
* ALTERNATIVELY, this software may be distributed under the terms of the
@@ -41,6 +41,49 @@
#size-cells = <2>;
interrupt-parent = <&mpic>;
+ aliases {
+ ethernet0 = &fm1dtsec1;
+ ethernet1 = &fm1dtsec2;
+ ethernet2 = &fm1dtsec3;
+ ethernet3 = &fm1dtsec4;
+ ethernet4 = &fm1dtsec5;
+ ethernet5 = &fm1tgec;
+ ethernet6 = &fm2dtsec1;
+ ethernet7 = &fm2dtsec2;
+ ethernet8 = &fm2dtsec3;
+ ethernet9 = &fm2dtsec4;
+ ethernet10 = &fm2dtsec5;
+ ethernet11 = &fm2tgec;
+
+ phy_sgmii_slot2_1c = &phy_sgmii_slot2_1c;
+ phy_sgmii_slot2_1d = &phy_sgmii_slot2_1d;
+ phy_sgmii_slot2_1e = &phy_sgmii_slot2_1e;
+ phy_sgmii_slot2_1f = &phy_sgmii_slot2_1f;
+
+ phy_sgmii_slot3_1c = &phy_sgmii_slot3_1c;
+ phy_sgmii_slot3_1d = &phy_sgmii_slot3_1d;
+ phy_sgmii_slot3_1e = &phy_sgmii_slot3_1e;
+ phy_sgmii_slot3_1f = &phy_sgmii_slot3_1f;
+
+ phy_sgmii_slot5_1c = &phy_sgmii_slot5_1c;
+ phy_sgmii_slot5_1d = &phy_sgmii_slot5_1d;
+ phy_sgmii_slot5_1e = &phy_sgmii_slot5_1e;
+ phy_sgmii_slot5_1f = &phy_sgmii_slot5_1f;
+
+ phy_sgmii_slot6_1c = &phy_sgmii_slot6_1c;
+ phy_sgmii_slot6_1d = &phy_sgmii_slot6_1d;
+ phy_sgmii_slot6_1e = &phy_sgmii_slot6_1e;
+ phy_sgmii_slot6_1f = &phy_sgmii_slot6_1f;
+
+ hydra_rg = &hydra_rg;
+ hydra_sg_slot2 = &hydra_sg_slot2;
+ hydra_sg_slot3 = &hydra_sg_slot3;
+ hydra_sg_slot5 = &hydra_sg_slot5;
+ hydra_sg_slot6 = &hydra_sg_slot6;
+ hydra_xg_slot1 = &hydra_xg_slot1;
+ hydra_xg_slot2 = &hydra_xg_slot2;
+ };
+
memory {
device_type = "memory";
};
@@ -49,6 +92,14 @@
ranges = <0x00000000 0xf 0x00000000 0x01008000>;
};
+ bportals: bman-portals@ff4000000 {
+ ranges = <0x0 0xf 0xf4000000 0x200000>;
+ };
+
+ qportals: qman-portals@ff4200000 {
+ ranges = <0x0 0xf 0xf4200000 0x200000>;
+ };
+
soc: soc@ffe000000 {
ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
reg = <0xf 0xfe000000 0 0x00001000>;
@@ -62,14 +113,17 @@
partition@u-boot {
label = "u-boot";
reg = <0x00000000 0x00100000>;
+ read-only;
};
partition@kernel {
label = "kernel";
reg = <0x00100000 0x00500000>;
+ read-only;
};
partition@dtb {
label = "dtb";
reg = <0x00600000 0x00100000>;
+ read-only;
};
partition@fs {
label = "file system";
@@ -100,6 +154,148 @@
reg = <0x4c>;
};
};
+
+ fman0: fman@400000 {
+ fm1dtsec1: ethernet@e0000 {
+ tbi-handle = <&tbi0>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio0: mdio@e1120 {
+ tbi0: tbi-phy@8 {
+ reg = <0x8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm1dtsec2: ethernet@e2000 {
+ tbi-handle = <&tbi1>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e3120 {
+ tbi1: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm1dtsec3: ethernet@e4000 {
+ tbi-handle = <&tbi2>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e5120 {
+ tbi2: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm1dtsec4: ethernet@e6000 {
+ tbi-handle = <&tbi3>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e7120 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ tbi3: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm1dtsec5: ethernet@e8000 {
+ tbi-handle = <&tbi4>;
+ phy-handle = <&phy_rgmii_0>;
+ phy-connection-type = "rgmii";
+ };
+
+ mdio@e9120 {
+ tbi4: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm1tgec: ethernet@f0000 {
+ phy-handle = <&phy_xgmii_slot_2>;
+ phy-connection-type = "xgmii";
+ };
+
+ xmdio0: mdio@f1000 {
+ };
+
+ };
+
+ fman1: fman@500000 {
+ fm2dtsec1: ethernet@e0000 {
+ tbi-handle = <&tbi5>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e1120 {
+ tbi5: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm2dtsec2: ethernet@e2000 {
+ tbi-handle = <&tbi6>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e3120 {
+ tbi6: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm2dtsec3: ethernet@e4000 {
+ tbi-handle = <&tbi7>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e5120 {
+ tbi7: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm2dtsec4: ethernet@e6000 {
+ tbi-handle = <&tbi8>;
+ phy-connection-type = "sgmii";
+ };
+
+ mdio@e7120 {
+ tbi8: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm2dtsec5: ethernet@e8000 {
+ tbi-handle = <&tbi9>;
+ phy-handle = <&phy_rgmii_1>;
+ phy-connection-type = "rgmii";
+ };
+
+ mdio@e9120 {
+ tbi9: tbi-phy@8 {
+ reg = <8>;
+ device_type = "tbi-phy";
+ };
+ };
+
+ fm2tgec: ethernet@f0000 {
+ phy-handle = <&phy_xgmii_slot_1>;
+ phy-connection-type = "xgmii";
+ };
+ };
};
lbc: localbus@ffe124000 {
@@ -124,6 +320,7 @@
partition@0 {
label = "NAND U-Boot Image";
reg = <0x0 0x02000000>;
+ read-only;
};
partition@2000000 {
@@ -153,8 +350,150 @@
};
board-control@3,0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
compatible = "fsl,p5040ds-fpga", "fsl,fpga-ngpixis";
- reg = <3 0 0x40>;
+ reg = <3 0 0x30>;
+ ranges = <0 3 0 0x30>;
+
+ mdio-mux-emi1 {
+ compatible = "mdio-mux-mmioreg", "mdio-mux";
+ mdio-parent-bus = <&mdio0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <9 1>; // BRDCFG1
+ mux-mask = <0x78>; // EMI1
+
+ /*
+ * Virtual MDIO for the two on-board RGMII
+ * ports. The reg property is already correct.
+ */
+ hydra_rg: rgmii-mdio@8 {
+ status = "disabled";
+ reg = <8>; /* EMI1_EN | 0 */
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ phy_rgmii_0: ethernet-phy@0 {
+ reg = <0x0>;
+ };
+ phy_rgmii_1: ethernet-phy@1 {
+ reg = <0x1>;
+ };
+ };
+ /*
+ * Virtual MDIO for the four-port SGMII cards.
+ */
+ hydra_sg_slot2: sgmii-mdio@28 {
+ reg = <0x28>; /* EMI1_EN | 0x20 */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+
+ phy_sgmii_slot2_1c: ethernet-phy@1c {
+ reg = <0x1c>;
+ };
+ phy_sgmii_slot2_1d: ethernet-phy@1d {
+ reg = <0x1d>;
+ };
+ phy_sgmii_slot2_1e: ethernet-phy@1e {
+ reg = <0x1e>;
+ };
+ phy_sgmii_slot2_1f: ethernet-phy@1f {
+ reg = <0x1f>;
+ };
+ };
+ hydra_sg_slot3: sgmii-mdio@68 {
+ reg = <0x68>; /* EMI1_EN | 0x60 */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+
+ phy_sgmii_slot3_1c: ethernet-phy@1c {
+ reg = <0x1c>;
+ };
+ phy_sgmii_slot3_1d: ethernet-phy@1d {
+ reg = <0x1d>;
+ };
+ phy_sgmii_slot3_1e: ethernet-phy@1e {
+ reg = <0x1e>;
+ };
+ phy_sgmii_slot3_1f: ethernet-phy@1f {
+ reg = <0x1f>;
+ };
+ };
+ hydra_sg_slot5: sgmii-mdio@38 {
+ reg = <0x38>; /* EMI1_EN | 0x30 */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+
+ phy_sgmii_slot5_1c: ethernet-phy@1c {
+ reg = <0x1c>;
+ };
+ phy_sgmii_slot5_1d: ethernet-phy@1d {
+ reg = <0x1d>;
+ };
+ phy_sgmii_slot5_1e: ethernet-phy@1e {
+ reg = <0x1e>;
+ };
+ phy_sgmii_slot5_1f: ethernet-phy@1f {
+ reg = <0x1f>;
+ };
+ };
+ hydra_sg_slot6: sgmii-mdio@48 {
+ reg = <0x48>; /* EMI1_EN | 0x40 */
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+
+ phy_sgmii_slot6_1c: ethernet-phy@1c {
+ reg = <0x1c>;
+ };
+ phy_sgmii_slot6_1d: ethernet-phy@1d {
+ reg = <0x1d>;
+ };
+ phy_sgmii_slot6_1e: ethernet-phy@1e {
+ reg = <0x1e>;
+ };
+ phy_sgmii_slot6_1f: ethernet-phy@1f {
+ reg = <0x1f>;
+ };
+ };
+ };
+ mdio-mux-emi2 {
+ compatible = "mdio-mux-mmioreg", "mdio-mux";
+ mdio-parent-bus = <&xmdio0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <9 1>; // BRDCFG1
+ mux-mask = <0x06>; // EMI2
+
+ /* FM2 10GEC1 is always on slot 1 */
+ hydra_xg_slot1: hydra-xg-slot1@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+ status = "disabled";
+
+ phy_xgmii_slot_1: ethernet-phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c45";
+ reg = <4>;
+ };
+ };
+
+ /* FM1 10GEC1 is always on slot 2 */
+ hydra_xg_slot2: hydra-xg-slot2@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <2>;
+
+ phy_xgmii_slot_2: ethernet-phy@4 {
+ compatible = "ethernet-phy-ieee802.3-c45";
+ reg = <0>;
+ };
+ };
+ };
};
};
@@ -202,6 +541,62 @@
0 0x00010000>;
};
};
+
+ fsl,dpaa {
+ compatible = "fsl,p5040-dpaa", "fsl,dpaa";
+
+ ethernet@0 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1dtsec1>;
+ status = "disabled";
+ };
+ ethernet@1 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1dtsec2>;
+ };
+ ethernet@2 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1dtsec3>;
+ };
+ ethernet@3 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1dtsec4>;
+ };
+ ethernet@4 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1dtsec5>;
+ };
+ ethernet@5 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm1tgec>;
+ };
+ ethernet@6 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2dtsec1>;
+ status = "disabled";
+ };
+ ethernet@7 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2dtsec2>;
+ };
+ ethernet@8 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2dtsec3>;
+ };
+ ethernet@9 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2dtsec4>;
+ };
+ ethernet@10 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2dtsec5>;
+ };
+ ethernet@11 {
+ compatible = "fsl,p5040-dpa-ethernet", "fsl,dpa-ethernet";
+ fsl,fman-mac = <&fm2tgec>;
+ };
+ };
};
/include/ "fsl/p5040si-post.dtsi"
+/include/ "fsl/qoriq-dpaa-res1.dtsi"