Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Jul 2005 12:10:54 +0200
From:      Tobias Tom <tobiastom@gmail.com>
To:        freebsd-questions@freebsd.org
Subject:   FreeBSD 5.4 ndis support
Message-ID:  <dd11998f050703031056805f3c@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hello everyone,

I'm using FreeBSD for some years now. I've read the german Mailinglist
for nearly the same time. But I've got a Problem which no one can
reproduce, or no one know any solution.

I want to use my Level One wnc 0301 WLAN PCI Card in my FreeBSD box
with acts as a Router in my small Home Network.
I've found no drivers or buildin support for that Card. Google, and
the Manufactor told me that it is using the raltech rt2500 chip. I
found a page where someone builds a driver for FreeBSD CURRENT, but it
is not portable for the 5.x branch.

Someone told me that I could use the ndis Feature which occured in
FreeBSD 5.3. I'm not sure how happy I am with Windows Drivers on my
FreeBSD Box, but for now i don't see any alternative.

So I tried to get ndis Support up like it is described inside the
Manual, and inside the first commit Message of the Files. Building
seems to work really fine. I've created the ndis_driver_data.h from my
driver INF and Driver SYS. Ran make && make install and everything was
finished without any error.

Then I tried to load the ndis support with "kldload ndis". It results
into the following Error Message: "kldload: can't load ndis: No such
file or directory" So I looked it the file is really not existing. But
it exists, ls output is:
"-rwxr-xr-x  1 root  wheel  91686 Jul  3 15:37
/usr/src/sys/modules/ndis/ndis.ko"
So I looked into dmesg and saw the following Error:

link_elf: symbol VOP_GETATTR_APV undefined
KLD if_ndis.ko: depends on ndisapi - not available

After I could not get something usefull out for me (others might be
more successfull ;o) I looked again into the man page of ndis. Under
Synopsis the following lines are written down:
options NDISAPI
device ndis
device wlan

So I though when i cannot build ndis as module, or maybe the ndisapi
come directly from the kernel, i could build my custom kernel with
these options. It stoped with these Lines:

cc -c -O -pipe  -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-qual  -fformat-extensions -std=3Dc99  -nostdinc -I-  -I.
-I/usr/src/sys -I/usr/src/sys/contrib/dev/acpica
-I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter
-I/usr/src/sys/contrib/pf -I/usr/src/sys/contrib/dev/ath
-I/usr/src/sys/contrib/dev/ath/freebsd -I/usr/src/sys/contrib/ngatm
-I/usr/src/sys/dev/twa -D_KERNEL -include opt_global.h -fno-common
-finline-limit=3D8000 --param inline-unit-growth=3D100 --param
large-function-growth=3D1000  -mno-align-long-strings
-mpreferred-stack-boundary=3D2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2
-ffreestanding -Werror  /usr/src/sys/compat/ndis/subr_ntoskrnl.c
/usr/src/sys/compat/ndis/subr_ntoskrnl.c: In function `KeRemoveQueueDpc':
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: error: request for
member `mtx_lock' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: error: request for
member `mtx_recurse' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3115: error: request for
member `mtx_lock' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: error: request for
member `mtx_recurse' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: error: request for
member `mtx_recurse' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3117: error: request for
member `mtx_lock' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: error: request for
member `mtx_recurse' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: error: request for
member `mtx_recurse' in something not a structure or union
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: warning: dereferencing
`void *' pointer
/usr/src/sys/compat/ndis/subr_ntoskrnl.c:3123: error: request for
member `mtx_lock' in something not a structure or union
*** Error code 1
Stop in /usr/obj/usr/src/sys/GATE.
*** Error code 1
Stop in /usr/src.
*** Error code 1
Stop in /usr/src.

Building my custom Kernel without the three Lines worked wonderfull.
So I have really no Idea what I can do next. Maybe here's someone how
knows any step i missed, or which Problem can couse the Error.
It is not very Importent for me it the ndis support runs in he kernel
or as module... main issue is to get this damm card to work ;o)

Maybe this might be usefull, too. Just did a cvsup for about 10
Minutes and got the same error. The only part which I added to my
custom kernel config is the IPFW Part.

Just some short words about FreeBSD Current. I've booted with the june
snapshot and the card was detechted fine.

Please don't let my stay in the rain with this Problem. ;o)

Regards

Tobias



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?dd11998f050703031056805f3c>