Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: RTL8168G
On Sun, Dec 15, 2013 at 09:57:59AM -0600, Jonathan A. Kollasch wrote:
>
> I ported the changes in FreeBSD SVN r257305 that add support for
> RTL8168G. This works except for the RX path. When I netboot; an
> unpatched NetBSD re(4) works for TX and RX. Any ideas?
>
> Jonathan Kollasch
This (attached) patch works. I'm completely aware it's uncommittable as
it it is.
Index: sys/dev/ic/rtl8169.c
===================================================================
RCS file: /cvsroot/src/sys/dev/ic/rtl8169.c,v
retrieving revision 1.139
diff -d -u -a -p -r1.139 rtl8169.c
--- sys/dev/ic/rtl8169.c 10 May 2013 14:55:08 -0000 1.139
+++ sys/dev/ic/rtl8169.c 16 Dec 2013 23:26:59 -0000
@@ -392,6 +392,8 @@ re_reset(struct rtk_softc *sc)
if ((sc->sc_quirk & RTKQ_MACLDPS) != 0)
CSR_WRITE_1(sc, RTK_LDPS, 1);
+ if ((CSR_READ_4(sc, RTK_TXCFG) & RTK_TXCFG_HWREV) == RTK_HWREV_8168G)
+ CSR_WRITE_1(sc, 0xF2, CSR_READ_1(sc, 0xF2) & ~__BIT(3));
}
/*
@@ -608,6 +610,7 @@ re_attach(struct rtk_softc *sc)
break;
case RTK_HWREV_8168E_VL:
case RTK_HWREV_8168F:
+ case RTK_HWREV_8168G:
sc->sc_quirk |= RTKQ_DESCV2 | RTKQ_NOEECMD |
RTKQ_MACSTAT | RTKQ_CMDSTOP | RTKQ_NOJUMBO;
break;
Index: sys/dev/ic/rtl81x9reg.h
===================================================================
RCS file: /cvsroot/src/sys/dev/ic/rtl81x9reg.h,v
retrieving revision 1.45
diff -d -u -a -p -r1.45 rtl81x9reg.h
--- sys/dev/ic/rtl81x9reg.h 13 Dec 2013 20:52:48 -0000 1.45
+++ sys/dev/ic/rtl81x9reg.h 16 Dec 2013 23:26:59 -0000
@@ -175,6 +175,7 @@
#define RTK_HWREV_8168C_SPIN2 0x3C400000
#define RTK_HWREV_8168CP 0x3C800000
#define RTK_HWREV_8168F 0x48000000
+#define RTK_HWREV_8168G 0x4C000000
#define RTK_HWREV_8139 0x60000000
#define RTK_HWREV_8139A 0x70000000
#define RTK_HWREV_8139AG 0x70800000
Home |
Main Index |
Thread Index |
Old Index