layerscape: add 64b/32b target for ls1043ardb device
[openwrt/staging/yousong.git] / target / linux / layerscape / patches-4.4 / 7066-fmd-add-2.5G-SGMII-mode-suport.patch
diff --git a/target/linux/layerscape/patches-4.4/7066-fmd-add-2.5G-SGMII-mode-suport.patch b/target/linux/layerscape/patches-4.4/7066-fmd-add-2.5G-SGMII-mode-suport.patch
new file mode 100644 (file)
index 0000000..4014ab4
--- /dev/null
@@ -0,0 +1,38 @@
+From 95d12688fa875f7a00590aaf6de5f34d55531d68 Mon Sep 17 00:00:00 2001
+From: Madalin Bucur <madalin.bucur@freescale.com>
+Date: Thu, 14 Apr 2016 14:12:38 +0300
+Subject: [PATCH 66/70] fmd: add 2.5G SGMII mode suport
+
+Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
+---
+ drivers/net/ethernet/freescale/sdk_dpaa/mac.c |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+--- a/drivers/net/ethernet/freescale/sdk_dpaa/mac.c
++++ b/drivers/net/ethernet/freescale/sdk_dpaa/mac.c
+@@ -74,6 +74,7 @@ static const char phy_str[][11] = {
+       [PHY_INTERFACE_MODE_RGMII_TXID] = "rgmii-txid",
+       [PHY_INTERFACE_MODE_RTBI]       = "rtbi",
+       [PHY_INTERFACE_MODE_XGMII]      = "xgmii",
++      [PHY_INTERFACE_MODE_SGMII_2500] = "sgmii-2500",
+ };
+ static phy_interface_t __pure __attribute__((nonnull)) str2phy(const char *str)
+@@ -100,6 +101,7 @@ static const uint16_t phy2speed[] = {
+       [PHY_INTERFACE_MODE_RGMII_TXID] = SPEED_1000,
+       [PHY_INTERFACE_MODE_RTBI]       = SPEED_1000,
+       [PHY_INTERFACE_MODE_XGMII]      = SPEED_10000,
++      [PHY_INTERFACE_MODE_SGMII_2500] = SPEED_2500,
+ };
+ static struct mac_device * __cold
+@@ -335,7 +337,8 @@ static int __cold mac_probe(struct platf
+       mac_dev->max_speed      = mac_dev->speed;
+       mac_dev->if_support = DTSEC_SUPPORTED;
+       /* We don't support half-duplex in SGMII mode */
+-      if (strstr(char_prop, "sgmii") || strstr(char_prop, "qsgmii"))
++      if (strstr(char_prop, "sgmii") || strstr(char_prop, "qsgmii") ||
++          strstr(char_prop, "sgmii-2500"))
+               mac_dev->if_support &= ~(SUPPORTED_10baseT_Half |
+                                       SUPPORTED_100baseT_Half);