94fa0bd3444b33abc23bb550c2aabc6199580be1
[openwrt.git] / target / linux / leon / patches / 026-greth_gbit_mac_set_ee_when_edcl.patch
1 From 50fcb51c42bc721f18f1bfa10f705519cd344a2a Mon Sep 17 00:00:00 2001
2 From: Daniel Hellstrom <daniel@gaisler.com>
3 Date: Wed, 1 Dec 2010 16:20:01 +0100
4 Subject: [PATCH] GRETH: Newer GBit MACs need setting EE bit when EDCL should be enabled
5
6 ---
7  drivers/net/greth.c |    2 +-
8  drivers/net/greth.h |    1 +
9  2 files changed, 2 insertions(+), 1 deletions(-)
10
11 --- a/drivers/net/greth.c
12 +++ b/drivers/net/greth.c
13 @@ -1511,7 +1511,7 @@ static int __devinit greth_of_probe(stru
14         /* If we have EDCL we disable the EDCL speed-duplex FSM so
15          * it doesn't interfere with the software */
16         if (greth->edcl != 0)
17 -               GRETH_REGORIN(regs->control, GRETH_CTRL_DISDUPLEX);
18 +               GRETH_REGORIN(regs->control, GRETH_CTRL_DISDUPLEX|GRETH_CTRL_EE);
19  
20         /* Check if MAC can handle MDIO interrupts */
21         greth->mdio_int_en = (tmp >> 26) & 1;
22 --- a/drivers/net/greth.h
23 +++ b/drivers/net/greth.h
24 @@ -15,6 +15,7 @@
25  #define GRETH_CTRL_PSTATIEN   0x400
26  #define GRETH_CTRL_MCEN       0x800
27  #define GRETH_CTRL_DISDUPLEX  0x1000
28 +#define GRETH_CTRL_EE         0x4000
29  #define GRETH_STATUS_PHYSTAT  0x100
30  
31  #define GRETH_BD_EN 0x800