CFT/CFR: NDIS(4) USB support

Paul B. Mahol onemda at
Sun Aug 24 10:09:32 UTC 2008

On 8/23/08, Paul B. Mahol <onemda at> wrote:
> On 7/24/08, Weongyo Jeong <weongyo.jeong at> wrote:
>> Hello All,
>> It looks that NDIS USB support works for some USB wireless drivers so
>> I'd like to call for tests to everyone who interested in NDIS for
>> FreeBSD.  I have 7 USB wireless adapters and with current NDIS USB
>> support 4 of 7 adapters are supported.  The detail is as follows:
>> Working:
>>   U-Khan UW-2054i (Marvell Libertas chipset)
>>   Netgear WG111v2 (Intersil/Prism chipset) - supported by upgt(4)
>>   EFM-IPTIME G054U2 (Ralink RT2573) - supported by rum(4)
>>   ZCOM XM-142 (Intersil/Prism chipset, another revision)
>> Not working:
>>   Unicorn WL-54G (ZyDAS zd1211b chipset) - supported by zyd(4)
>>     Attaching is working sucessfully and LED works fine but it's not
>>     UPed.
>>   Zyxel G-200v2 (ZyDAS zd1211 chipset) - supported by zyd(4)
>>     The sympotom is same with Unicorn WL-54G.
>>   SMCWUSBT-G-CA EZ 108Mbps (Atheros chipset)
>>     This NDIS driver uses some functions which aren't supported by
>>     current NDIS implementation.  So I can't test it now.
>> The patch for HEAD can be found at:
>> When you try to test this patch, you should make sure that ndiscvt(8)
>> is updated.  Some instructions like below could be helpful:
>>   # cd /usr/src
>>   # patch -p0 < ~/patch_ndisusb_20080724.diff
> Here it asked me politely what to do:
> I dont have share/man/man4/man4.i386/ndis.4
> but I have share/man/man4/ndis.4
>>   # cd usr.sbin/ndiscvt
>>   # make && make install
>>   # cd ~/
>>   # ndisgen ABC.inf ABC.sys
>>   # cd /usr/src/sys/modules/ndis
>>   # make
>>   # kldload ./ndis.ko
> Here I get:
> link_elf: symbol M_USBDEV undefined

Workaround is to build custom kernel with usb stuff ..

I tested Edimax EW-7318Ug and EW-7318USg, both partialy supported
with rum(4), mostly because of rx/tx low signals and crashing on
SMP kernel.

I got following kernel output on console:

no match for ZwWriteFile
no match for ZwCreateFile
no match for ZwReadFile

But both cards works fine, scan outputs are working and signal strength is
great (comparing with rum(4)) Also association and data transfer works.
It appears to deadlock if device is detached before module (rt73_sys.ko
in this case) is unloaded, looks like usb problem to me.

Before it got to HEAD, I would like if newly introduced linking bug got fixed.


> and kernel will not load it.
> I have custom kernel without usb stuff (it is loaded via module)
> The only place where M_USBDEV is defined is in sys/dev/usb/usb.h
> and I'm somehow at dead end.
>>   # cd /usr/src/sys/modules/if_ndis
> I can load new if_ndis.ko with old ndis.ko but that is not usefull.
>>   # make
>>   # kldload ./if_ndis.ko
>>   # kldload ~/ABC_sys.ko
>> It seems that the current status of NDIS USB support is beta status so
>> I'm not sure I've implemented all features yet that it needs more
>> debugging and stability.  I don't have all H/Ws for testing! :)
>> Please tell me if you were successful or you failed though it looks
>> it's not easy to debug NDIS .sys binary using disassembler.
>> Any help and comments are welcome.  Thanks.
>> regards,
>> Weongyo Jeong
>> _______________________________________________
>> freebsd-current at mailing list
>> To unsubscribe, send any mail to "freebsd-current-unsubscribe at"

More information about the freebsd-current mailing list