Subject: Re: Gigabit Marvell ethernet card not configured
To: Thor Lancelot Simon <tls@rek.tjls.com>
From: Patrick Welche <prlw1@newn.cam.ac.uk>
List: netbsd-users
Date: 05/04/2006 23:02:04
--Nq2Wo0NMKNjxTN9z
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Apr 25, 2006 at 07:45:57AM -0400, Thor Lancelot Simon wrote:
> It's complicated -- it's going to require a refactoring of the existing
> driver into two parts, and a new driver for the Yukon 2.

Would you care to tell us more?

> But there is in fact a path forward right now, if you're on i386 and
> willing to run NetBSD-current: you can use the NDIS compatibility shim
> to use the Windows driver supplied by Marvell.

I just tried it (and enclose a trivial patch) - one problem - it's inf
file seems to be in ? utf16 ?

00000000  ff fe 3b 00 20 00 79 00  6b 00 35 00 31 00 78 00  |..;. .y.k.5.1.x.|
00000010  38 00 36 00 2e 00 69 00  6e 00 66 00 20 00 63 00  |8.6...i.n.f. .c.|
00000020  72 00 65 00 61 00 74 00  65 00 64 00 20 00 33 00  |r.e.a.t.e.d. .3.|

This confuses ndiscvt's parser. I ran it through vis, removed \000 and got
further, so that is the problem, but it doesn't fix it.

Cheers,

Patrick

--Nq2Wo0NMKNjxTN9z
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ndis.pat"

Index: ndiscvt.8
===================================================================
RCS file: /cvsroot/src/usr.sbin/ndiscvt/ndiscvt.8,v
retrieving revision 1.5
diff -u -r1.5 ndiscvt.8
--- ndiscvt.8	23 Apr 2006 16:50:25 -0000	1.5
+++ ndiscvt.8	4 May 2006 21:57:54 -0000
@@ -217,11 +217,9 @@
 If you need to load more
 than one NDIS driver into your system (i.e., if you have two different
 network cards in your system which require NDIS driver support), each
-module you create must have a unique name.
-Device can not be larger than
+module you create must have a unique name, which can not be longer than
 .Dv IFNAMSIZ .
-If no name is specified, the driver will use the
-default a default name
+If no name is specified, the driver will use the default name
 .Pq Dq Li ndis .
 .It Fl O
 Generate both an
@@ -254,7 +252,7 @@
 .Pa if_ndis.c
 module expects to find the driver data in a file called
 .Pa ndis_driver_data.h ,
-so it is recommended that this name be used.
+so this name be used by default.
 .It Fl s Ar sysfile
 Open and parse the specified
 .Pa .SYS
Index: ndiscvt.c
===================================================================
RCS file: /cvsroot/src/usr.sbin/ndiscvt/ndiscvt.c,v
retrieving revision 1.3
diff -u -r1.3 ndiscvt.c
--- ndiscvt.c	3 Apr 2006 16:29:57 -0000	1.3
+++ ndiscvt.c	4 May 2006 21:57:56 -0000
@@ -299,8 +299,9 @@
 	void			*img;
 	int			n, fsize, cnt;
 	unsigned char		*ptr;
+	static char defaultoutfile[] = "ndis_driver_data.h";
 	char			*inffile = NULL, *sysfile = NULL;
-	char			*outfile = NULL, *firmfile = NULL;
+	char			*outfile = defaultoutfile, *firmfile = NULL;
 	char			*dname = NULL;
 	int			ch;
 

--Nq2Wo0NMKNjxTN9z--