aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/leon/patches/026-greth_gbit_mac_set_ee_when_edcl.patch
blob: 94fa0bd3444b33abc23bb550c2aabc6199580be1 (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
31
From 50fcb51c42bc721f18f1bfa10f705519cd344a2a Mon Sep 17 00:00:00 2001
From: Daniel Hellstrom <daniel@gaisler.com>
Date: Wed, 1 Dec 2010 16:20:01 +0100
Subject: [PATCH] GRETH: Newer GBit MACs need setting EE bit when EDCL should be enabled

---
 drivers/net/greth.c |    2 +-
 drivers/net/greth.h |    1 +
 2 files changed, 2 insertions(+), 1 deletions(-)

--- a/drivers/net/greth.c
+++ b/drivers/net/greth.c
@@ -1511,7 +1511,7 @@ static int __devinit greth_of_probe(stru
 	/* If we have EDCL we disable the EDCL speed-duplex FSM so
 	 * it doesn't interfere with the software */
 	if (greth->edcl != 0)
-		GRETH_REGORIN(regs->control, GRETH_CTRL_DISDUPLEX);
+		GRETH_REGORIN(regs->control, GRETH_CTRL_DISDUPLEX|GRETH_CTRL_EE);
 
 	/* Check if MAC can handle MDIO interrupts */
 	greth->mdio_int_en = (tmp >> 26) & 1;
--- a/drivers/net/greth.h
+++ b/drivers/net/greth.h
@@ -15,6 +15,7 @@
 #define GRETH_CTRL_PSTATIEN   0x400
 #define GRETH_CTRL_MCEN       0x800
 #define GRETH_CTRL_DISDUPLEX  0x1000
+#define GRETH_CTRL_EE         0x4000
 #define GRETH_STATUS_PHYSTAT  0x100
 
 #define GRETH_BD_EN 0x800