From: françois romieu Date: Mon, 26 Apr 2010 11:42:58 +0000 (+0000) Subject: r8169: more broken register writes workaround X-Git-Tag: v2.6.32.13~25 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=5d5749c86711c91499820043202db1f534d0aeec;p=karo-tx-linux.git r8169: more broken register writes workaround commit 908ba2bfd22253f26fa910cd855e4ccffb1467d0 upstream. 78f1cd02457252e1ffbc6caa44a17424a45286b8 ("fix broken register writes") does not work for Al Viro's r8169 (XID 18000000). Signed-off-by: Francois Romieu Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index f79886d0128b..211b587195cc 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -2832,8 +2832,13 @@ static void rtl_rar_set(struct rtl8169_private *tp, u8 *addr) spin_lock_irq(&tp->lock); RTL_W8(Cfg9346, Cfg9346_Unlock); + RTL_W32(MAC4, high); + RTL_R32(MAC4); + RTL_W32(MAC0, low); + RTL_R32(MAC0); + RTL_W8(Cfg9346, Cfg9346_Lock); spin_unlock_irq(&tp->lock);