diff options
author | françois romieu <romieu@fr.zoreil.com> | 2010-04-26 07:42:58 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-26 18:36:48 -0400 |
commit | 908ba2bfd22253f26fa910cd855e4ccffb1467d0 (patch) | |
tree | 038148421bc028680704eaeb8304f084ccfd4a97 /drivers | |
parent | 87aeec767e1de60d7f76abbb44df5372b0932b7b (diff) |
r8169: more broken register writes workaround
78f1cd02457252e1ffbc6caa44a17424a45286b8 ("fix broken register writes")
does not work for Al Viro's r8169 (XID 18000000).
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/r8169.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 2b54389c8f57..4748c21eb72e 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -2826,8 +2826,13 @@ static void rtl_rar_set(struct rtl8169_private *tp, u8 *addr) | |||
2826 | spin_lock_irq(&tp->lock); | 2826 | spin_lock_irq(&tp->lock); |
2827 | 2827 | ||
2828 | RTL_W8(Cfg9346, Cfg9346_Unlock); | 2828 | RTL_W8(Cfg9346, Cfg9346_Unlock); |
2829 | |||
2829 | RTL_W32(MAC4, high); | 2830 | RTL_W32(MAC4, high); |
2831 | RTL_R32(MAC4); | ||
2832 | |||
2830 | RTL_W32(MAC0, low); | 2833 | RTL_W32(MAC0, low); |
2834 | RTL_R32(MAC0); | ||
2835 | |||
2831 | RTL_W8(Cfg9346, Cfg9346_Lock); | 2836 | RTL_W8(Cfg9346, Cfg9346_Lock); |
2832 | 2837 | ||
2833 | spin_unlock_irq(&tp->lock); | 2838 | spin_unlock_irq(&tp->lock); |