Module Name: src
Committed By: rkujawa
Date: Sun Aug 11 12:34:16 UTC 2013
Modified Files:
src/sys/dev/ic: ne2000.c ne2000var.h
Log Message:
Add support for AX88796(B) variant.
To generate a diff of this commit:
cvs rdiff -u -r1.73 -r1.74 src/sys/dev/ic/ne2000.c
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/ic/ne2000var.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/ic/ne2000.c
diff -u src/sys/dev/ic/ne2000.c:1.73 src/sys/dev/ic/ne2000.c:1.74
--- src/sys/dev/ic/ne2000.c:1.73 Sat Oct 27 17:18:22 2012
+++ src/sys/dev/ic/ne2000.c Sun Aug 11 12:34:16 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: ne2000.c,v 1.73 2012/10/27 17:18:22 chs Exp $ */
+/* $NetBSD: ne2000.c,v 1.74 2013/08/11 12:34:16 rkujawa Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ne2000.c,v 1.73 2012/10/27 17:18:22 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ne2000.c,v 1.74 2013/08/11 12:34:16 rkujawa Exp $");
#include "opt_ipkdb.h"
@@ -149,12 +149,14 @@ ne2000_attach(struct ne2000_softc *nsc,
case NE2000_TYPE_NE2000:
case NE2000_TYPE_AX88190: /* XXX really? */
case NE2000_TYPE_AX88790:
+ case NE2000_TYPE_AX88796:
#if NRTL80X9 > 0
case NE2000_TYPE_RTL8019:
#endif
memstart = 16384;
memsize = 16384;
useword = 1;
+
if (
#ifdef NE2000_DETECT_8BIT
ne2000_detect_8bit(nict, nich, asict, asich) ||
@@ -287,7 +289,8 @@ ne2000_attach(struct ne2000_softc *nsc,
if (myea == NULL) {
/* Read the station address. */
if (nsc->sc_type == NE2000_TYPE_AX88190 ||
- nsc->sc_type == NE2000_TYPE_AX88790) {
+ nsc->sc_type == NE2000_TYPE_AX88790 ||
+ nsc->sc_type == NE2000_TYPE_AX88796) {
/* Select page 0 registers. */
NIC_BARRIER(nict, nich);
bus_space_write_1(nict, nich, ED_P0_CR,
@@ -689,7 +692,7 @@ ne2000_write_mbuf(struct dp8390_softc *s
}
NIC_BARRIER(nict, nich);
- /* AX88796 doesn't seem to have remote DMA complete */
+ /* some AX88796 doesn't seem to have remote DMA complete */
if (sc->sc_flags & DP8390_NO_REMOTE_DMA_COMPLETE)
return savelen;
@@ -917,6 +920,7 @@ ne2000_ipkdb_attach(struct ipkdb_if *kip
case NE2000_TYPE_NE2000:
case NE2000_TYPE_AX88190:
case NE2000_TYPE_AX88790:
+ case NE2000_TYPE_AX88796:
#if NRTL80X9 > 0
case NE2000_TYPE_RTL8019:
#endif
@@ -985,7 +989,8 @@ ne2000_ipkdb_attach(struct ipkdb_if *kip
/* Read the station address. */
if (np->sc_type == NE2000_TYPE_AX88190 ||
- np->sc_type == NE2000_TYPE_AX88790) {
+ np->sc_type == NE2000_TYPE_AX88790 ||
+ np->sc_type == NE2000_TYPE_AX88796) {
/* Select page 0 registers. */
NIC_BARRIER(nict, nich);
bus_space_write_1(nict, nich, ED_P0_CR,
Index: src/sys/dev/ic/ne2000var.h
diff -u src/sys/dev/ic/ne2000var.h:1.26 src/sys/dev/ic/ne2000var.h:1.27
--- src/sys/dev/ic/ne2000var.h:1.26 Sat Mar 13 15:26:38 2010
+++ src/sys/dev/ic/ne2000var.h Sun Aug 11 12:34:16 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: ne2000var.h,v 1.26 2010/03/13 15:26:38 tsutsui Exp $ */
+/* $NetBSD: ne2000var.h,v 1.27 2013/08/11 12:34:16 rkujawa Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -47,7 +47,8 @@ struct ne2000_softc {
NE2000_TYPE_DL10022,
NE2000_TYPE_AX88190,
NE2000_TYPE_AX88790,
- NE2000_TYPE_RTL8019
+ NE2000_TYPE_RTL8019,
+ NE2000_TYPE_AX88796
} sc_type;
int sc_useword;
u_int sc_quirk; /* quirks passed from attachments */