arch/powerpc: Add SGMII support for the L2 Switch ports
authorCodrin Ciubotariu <codrin.ciubotariu@freescale.com>
Mon, 12 Jan 2015 12:08:31 +0000 (14:08 +0200)
committerYork Sun <yorksun@freescale.com>
Fri, 16 Jan 2015 17:32:26 +0000 (09:32 -0800)
Some Freescale SoCs like T1020 and T1040 have an integrated
L2 Switch. The L2 Switch ports may be connected to Ethernet PHYs
over SGMII and QSGMII.

Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c
arch/powerpc/cpu/mpc85xx/t1040_serdes.c
arch/powerpc/include/asm/fsl_serdes.h

index c7d9622beebc9155b730346de69bdfe969907f9d..acb1353e5d207360e8f7c4e7caaeb25219d5f2ea 100644 (file)
@@ -78,6 +78,12 @@ static const char *serdes_prtcl_str[] = {
        [INTERLAKEN] = "INTERLAKEN",
        [QSGMII_SW1_A] = "QSGMII_SW1_A",
        [QSGMII_SW1_B] = "QSGMII_SW1_B",
+       [SGMII_SW1_MAC1] = "SGMII_SW1_MAC1",
+       [SGMII_SW1_MAC2] = "SGMII_SW1_MAC2",
+       [SGMII_SW1_MAC3] = "SGMII_SW1_MAC3",
+       [SGMII_SW1_MAC4] = "SGMII_SW1_MAC4",
+       [SGMII_SW1_MAC5] = "SGMII_SW1_MAC5",
+       [SGMII_SW1_MAC6] = "SGMII_SW1_MAC6",
 };
 #endif
 
index d86bb2737246201e14a63508f2a6c8b3ab0b4015..d5dccd5cf22c7e957831944bcb260c60486f9dd7 100644 (file)
@@ -33,10 +33,10 @@ static u8 serdes_cfg_tbl[][SRDS_MAX_LANES] = {
                PCIE2, PCIE2, SGMII_FM1_DTSEC4, SGMII_FM1_DTSEC5},
        [0x87] = {PCIE1, SGMII_FM1_DTSEC3, SGMII_FM1_DTSEC1, SGMII_FM1_DTSEC2,
                PCIE2, PCIE3, PCIE4, SGMII_FM1_DTSEC5},
-       [0x89] = {PCIE1, QSGMII_SW1_A, QSGMII_SW1_A, QSGMII_SW1_A,
-               PCIE2, PCIE3, QSGMII_SW1_B, SATA1},
-       [0x8D] = {PCIE1, QSGMII_SW1_A, QSGMII_SW1_A, QSGMII_SW1_A,
-               PCIE2, QSGMII_SW1_B, QSGMII_SW1_B, QSGMII_SW1_B},
+       [0x89] = {PCIE1, SGMII_SW1_MAC3, SGMII_SW1_MAC1, SGMII_SW1_MAC2,
+               PCIE2, PCIE3, SGMII_SW1_MAC4, SATA1},
+       [0x8D] = {PCIE1, SGMII_SW1_MAC3, SGMII_SW1_MAC1, SGMII_SW1_MAC2,
+               PCIE2, SGMII_SW1_MAC6, SGMII_SW1_MAC4, SGMII_SW1_MAC5},
        [0x8F] = {PCIE1, SGMII_FM1_DTSEC3, SGMII_FM1_DTSEC1, SGMII_FM1_DTSEC2,
                AURORA, NONE, SGMII_FM1_DTSEC4, SGMII_FM1_DTSEC5},
        [0xA5] = {PCIE1, SGMII_FM1_DTSEC3, SGMII_FM1_DTSEC1, SGMII_FM1_DTSEC2,
index 2dd32c239cd477051401472953e323a6aa9e2c2d..45e248eba18e4713d1454ab99159339463ce18e1 100644 (file)
@@ -87,6 +87,12 @@ enum srds_prtcl {
        SGMII_2500_FM2_DTSEC6,
        SGMII_2500_FM2_DTSEC9,
        SGMII_2500_FM2_DTSEC10,
+       SGMII_SW1_MAC1,
+       SGMII_SW1_MAC2,
+       SGMII_SW1_MAC3,
+       SGMII_SW1_MAC4,
+       SGMII_SW1_MAC5,
+       SGMII_SW1_MAC6,
        SERDES_PRCTL_COUNT      /* Keep this item the last one */
 };