brcm63xx: add linux 4.4 support
[openwrt.git] / target / linux / brcm63xx / patches-4.4 / 802-rtl8367r_fix_RGMII_support.patch
diff --git a/target/linux/brcm63xx/patches-4.4/802-rtl8367r_fix_RGMII_support.patch b/target/linux/brcm63xx/patches-4.4/802-rtl8367r_fix_RGMII_support.patch
new file mode 100644 (file)
index 0000000..9037d89
--- /dev/null
@@ -0,0 +1,30 @@
+From e3208e6087642b95a5bab3101fc9c6e34892c861 Mon Sep 17 00:00:00 2001
+From: Miguel GAIO <miguel.gaio@efixo.com>
+Date: Fri, 6 Jul 2012 14:12:33 +0200
+Subject: [PATCH 6/8] * [rtl8367r] Fix RGMII support
+
+---
+ drivers/net/phy/rtl8367.c  |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+--- a/drivers/net/phy/rtl8367.c
++++ b/drivers/net/phy/rtl8367.c
+@@ -146,6 +146,10 @@
+ #define   RTL8367_EXT_RGMXF_TXDELAY_MASK      1
+ #define   RTL8367_EXT_RGMXF_RXDELAY_MASK      0x7
++#define RTL8367_PHY_AD_REG                    0x130f
++#define    RTL8370_PHY_AD_DUMMY_1_OFFSET      5
++#define    RTL8370_PHY_AD_DUMMY_1_MASK                0xe0
++
+ #define RTL8367_DI_FORCE_REG(_x)              (0x1310 + (_x))
+ #define   RTL8367_DI_FORCE_MODE                       BIT(12)
+ #define   RTL8367_DI_FORCE_NWAY                       BIT(7)
+@@ -894,6 +898,7 @@ static int rtl8367_extif_set_mode(struct
+       case RTL8367_EXTIF_MODE_RGMII_33V:
+               REG_WR(smi, RTL8367_CHIP_DEBUG0_REG, 0x0367);
+               REG_WR(smi, RTL8367_CHIP_DEBUG1_REG, 0x7777);
++              REG_RMW(smi, RTL8367_PHY_AD_REG, BIT(5), 0);
+               break;
+       case RTL8367_EXTIF_MODE_TMII_MAC: