Date: Thu, 8 Jan 2004 02:44:37 -0800 (PST) From: Bill Paul <wpaul@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/compat/ndis ndis_var.h src/sys/dev/if_ndis if_ndis.c if_ndisvar.h Message-ID: <200401081044.i08Aib1G058831@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
wpaul 2004/01/08 02:44:37 PST
FreeBSD src repository
Modified files:
sys/compat/ndis ndis_var.h
sys/dev/if_ndis if_ndis.c if_ndisvar.h
Log:
Correct the definition of the ndis_miniport_interrupt structure:
the ni_dpccountlock member is an ndis_kspin_lock, not an
ndis_spin_lock (the latter is too big).
Run if_ndis.c:ndis_tick() via taskqueue_schedule(). Also run
ndis_start() via taskqueue in certain circumstances.
Using these tweaks, I can now get the Broadcom BCM5701 NDIS
driver to load and run. Unfortunately, the version I have seems
to suffer from the same bug as the SMC 83820 driver, which is
that it creates a spinlock during its DriverEntry() routine.
I'm still debating the right way to deal with this.
Revision Changes Path
1.13 +9 -1 src/sys/compat/ndis/ndis_var.h
1.24 +34 -9 src/sys/dev/if_ndis/if_ndis.c
1.6 +2 -0 src/sys/dev/if_ndis/if_ndisvar.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401081044.i08Aib1G058831>
