Problem with NDIS - FreeBSD 6.1-PRERELEASE

Lukas Razik lukas at razik.de
Mon Mar 13 16:01:05 UTC 2006


Hello!

I've a problem with NDIS and a 'PRISM 802.11g Wireless Adapter (3890)'
because if I do an 'ifconfig ndis0 inet 192.168...' I must wait about !!!5 MINUTES!!! for the finish of ifconfig...

--------------------------------

My System: Medion MD41300 Notebook with P4 3.06GHz HT CPU
Windows driver for the WLAN chip:
http://www1.medion.de/downloads/download.pl?id=1870&type=treiber&filename=wlanwid2010win2kxp.exe&lang=de

pciconf -lv
ndis0 at pci3:6:0: class=0x028000 card=0x001417cf chip=0x38901260 rev=0x01 hdr=0x00
    vendor   = 'Intersil Americas Inc (Was: Harris Semiconductor)'
    device   = 'ISL3890 PRISM GT 802.11g 54Mbps Wireless Controller'
    class    = network

FreeBSD 6.1-PRERELEASE #2: Sun Mar 12 23:36:01 CET 2006

--------------------------------

That's what I've done:
- I've built a kernel with SMP support, NDISAPI etc. (for details see the following config):
http://net.razik.de/temp/RAZIK2006-03-12-6
- I've built a kernel module with 'ndisgen PRISMA00.inf PRISMA00.sys' - its name is: 'PRISMA00_sys.ko'
- In my rc.conf I have the following line:
ifconfig_ndis0="inet 192.168.0.7 netmask 255.255.255.0 ssid razik.de wepmode mixed wepkey 1:0xABCDEF... deftxkey 1"
(It doesn't matter if I use WEP or not...)

It's not possible to load the PRISMA00_sys.ko module at startup (because of an error), so my current loader.conf is:
kernel="kernel.6.0-STABLE"
snd_ich_load="YES"
linux_load="YES"
nvidia_load="YES"
wlan_wep_load="YES"

--------------------------------

After system startup I load the module manually by typing 'kldload PRISMA00_sys' and I get:
ndis0: <PRISM 802.11g Wireless Adapter (3890)> mem 0xd2004000-0xd2005fff irq 18 at device 6.0 on pci3
can't re-use a leaf (BusType)!
ndis0: NDIS API version: 5.1

And about 40 seconds later i get
ndis0: Ethernet address: 00:60:b3:9d:46:dc

After loading the module I can see (by typing 'ps ax') that ifconfig is automatically started (? by /etc/pccard_ether ?)
and tries to configure the ndis0 device like it is written in the rc.conf. That takes about 5 minutes!!!

--------------------------------

If I delete the config line for the ndis0 device in my rc.conf and kldload the PRISMA00_sys module
and ifconfig ndis0 manually it also takes about 5 minutes...

--------------------------------

And it doesn't matter if I set 'machdep.hyperthreading_allowed=1' or not.

After the 5 minutes (if the system doesn't crash) I get this from 'ifconfig ndis0':

ndis0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet6 fe80::260:b3ff:fe9d:46dc%ndis0 prefixlen 64 scopeid 0x4
        inet 192.168.0.7 netmask 0xffffff00 broadcast 192.168.0.255
        ether 00:60:b3:9d:46:dc
        media: IEEE 802.11 Wireless Ethernet autoselect
        status: associated
        ssid razik.de channel 9 bssid 00:13:10:27:e4:c8
        authmode OPEN privacy ON deftxkey 1 wepkey 1:104-bit txpowmax 100
        protmode CTS

And normally I can use the WLAN chip without problems then...
Does anyone have an idea why ifconfig needs so long to setup the device?

Regards,
Lukas



More information about the freebsd-stable mailing list