network card
David O'Brien
obrien at freebsd.org
Mon Dec 6 09:25:40 PST 2004
On Mon, Dec 06, 2004 at 04:45:37PM +0100, Guillaume R. wrote:
> > On Monday 06 December 2004 15:23, Ernst W. Winter wrote:
> >> Well I would like to ask "what ntwork card" is working with amd64
> >> FreeBSD, that is without any hassles. I try the sk one and it still
> >> has the problem of putting out the same message:
> >>
> >> sk0 discard frame w/o leading ethernet header (len 10 pkt len 10)
> >>
> >> it is a ASUS A8V Deluxe board with the lan omboard.
> >> 5.3_STABLE is the version I'm running.
> >
> > 5-CURRENT has had patches applied by Bjoern (or others? In any case,
> > mentioned often and recently on this list) for sk0; that works
> > normally for me on a K8V.
> I'm interested here :)
> What patches have u applied to get this card working?
> As for me this card does not perfectly work on a fresh 5.3 installation.
> You got some clue?
Can you update to RELENG_5 and try again? There was a MAJOR bug fixed
after 5.3 (diff attached).
--
-- David (obrien at FreeBSD.org)
Index: if_sk.c
===================================================================
RCS file: /home/ncvs/src/sys/pci/if_sk.c,v
retrieving revision 1.83.2.2
retrieving revision 1.83.2.3
diff -u -r1.83.2.2 -r1.83.2.3
--- if_sk.c 25 Aug 2004 21:19:06 -0000 1.83.2.2
+++ if_sk.c 20 Nov 2004 17:41:43 -0000 1.83.2.3
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/pci/if_sk.c,v 1.83.2.2 2004/08/25 21:19:06 jmg Exp $");
+__FBSDID("$FreeBSD: src/sys/pci/if_sk.c,v 1.83.2.3 2004/11/20 17:41:43 bz Exp $");
/*
* SysKonnect SK-NET gigabit ethernet driver for FreeBSD. Supports
@@ -136,7 +136,7 @@
#ifndef lint
static const char rcsid[] =
- "$FreeBSD: src/sys/pci/if_sk.c,v 1.83.2.2 2004/08/25 21:19:06 jmg Exp $";
+ "$FreeBSD: src/sys/pci/if_sk.c,v 1.83.2.3 2004/11/20 17:41:43 bz Exp $";
#endif
static struct sk_type sk_devs[] = {
@@ -1501,6 +1501,7 @@
{
struct sk_softc *sc;
int unit, error = 0, rid, *port;
+ uint8_t skrs;
sc = device_get_softc(dev);
unit = device_get_unit(dev);
@@ -1561,9 +1562,10 @@
/* Read and save vital product data from EEPROM. */
sk_vpd_read(sc);
+ skrs = sk_win_read_1(sc, SK_EPROM0);
if (sc->sk_type == SK_GENESIS) {
/* Read and save RAM size and RAMbuffer offset */
- switch(sk_win_read_1(sc, SK_EPROM0)) {
+ switch(skrs) {
case SK_RAMSIZE_512K_64:
sc->sk_ramsize = 0x80000;
sc->sk_rboff = SK_RBOFF_0;
@@ -1586,8 +1588,11 @@
error = ENXIO;
goto fail;
}
- } else {
- sc->sk_ramsize = 0x20000;
+ } else { /* SK_YUKON */
+ if (skrs == 0x00)
+ sc->sk_ramsize = 0x20000;
+ else
+ sc->sk_ramsize = skrs * (1<<12);
sc->sk_rboff = SK_RBOFF_0;
}
More information about the freebsd-amd64
mailing list