aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/patches-3.3/802-rtl8367r_fix_RGMII_support.patch
blob: 285f3f744ead1293b731934a5f9d5cf14e9851bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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
@@ -144,6 +144,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)
@@ -892,6 +896,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: