I have a laptop (IBM 390X) with a PCMCIA (cardbus) wlan card. This is a version 1 SMC2835W (the full mac version) that uses the Intersil 3890 chipset. Also known as prism gt. This card has no native driver in FreeBSD. Well, this may not be exactly true as someone (bfeldman?) used the linux driver to create a freebsd driver (if_pff) but that will not compile on 6.0 and I never tried it on 5.x I have to admit. On FreeBSD 5.3, 5.4 it works with the ndis driver (project evil). I used ndiscvt to convert the driver and the firmware and this works quite nicely. From dmesg: --------------------------------- Copyright (c) 1992-2005 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.4-RELEASE #0: Sun May 8 10:21:06 UTC 2005 root_at_harlow.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC //skip pci0: <bridge> at device 2.3 (no driver attached) cbb0: <TI1251B PCI-CardBus Bridge> mem 0x10000000-0x10000fff irq 10 at device 3.0 on pci0 cardbus0: <CardBus bus> on cbb0 pccard0: <16-bit PCCard bus> on cbb0 cbb1: <TI1251B PCI-CardBus Bridge> mem 0x20000000-0x20000fff irq 10 at device 3.1 on pci0 cardbus1: <CardBus bus> on cbb1 pccard1: <16-bit PCCard bus> on cbb1 //skip cbb1: bad Vcc request. ctrl=0x33, status=0x30000b20 cbb_power: 3V ndis0: <SMC2835W 2.4GHz 54 Mbps Wireless Cardbus Adapter> mem 0x88000000-0x88001fff irq 10 at device 0.0 on cardbus1 can't re-use a leaf (BusType)! ndis0: NDIS API version: 5.0 ndis0: Ethernet address: 00:04:e2:99:99:99 ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 1Mbps 2Mbps 5.5Mbps 11Mbps ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps ndis0: couldn't retrieve channel info: 28 ndis0: link up --------------------------------- However, on 6.0 (tried b3 and b5) the driver will not load. This is the Win XP driver (API 5.1) whereas on 5.4 the Win 2k driver was used (API 5.0). On 6.0 the driver was converted with 'ndisgen' (smc2835.sys, smc2835wnic.inf and firmware smc2835w.arm). >From dmesg: --------------------------------- FreeBSD 6.0-BETA5 #0: Mon Sep 19 00:12:45 UTC 2005 //skip cbb0: <TI1251B PCI-CardBus Bridge> mem 0x10000000-0x10000fff irq 10 at device 3.0 on pci0 cardbus0: <CardBus bus> on cbb0 pccard0: <16-bit PCCard bus> on cbb0 cbb1: <TI1251B PCI-CardBus Bridge> mem 0x20000000-0x20000fff irq 10 at device 3.1 on pci0 cardbus1: <CardBus bus> on cbb1 pccard1: <16-bit PCCard bus> on cbb1 //skip cbb1: bad Vcc request. ctrl=0x33, status=0x30000b20 cbb_power: 3V cardbus1: <network> at device 0.0 (no driver attached) cbb1: bad Vcc request. ctrl=0x0, status=0x30000b69 cbb_power: 0V --------------------------------- At this point I do a: # kldload if_ndis # kldload smc2835w_sys dmesg: --------------------------------- cbb1: cbb_power: 3V cbb1: bad Vcc request. ctrl=0x33, status=0x30000b20 cbb_power: 3V found-> vendor=0x1260, dev=0x3890, revid=0x01 bus=4, slot=0, func=0 class=02-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0000, statreg=0x0298, cachelnsz=8 (dwords) lattimer=0xa8 (5040 ns), mingnt=0x0a (2500 ns), maxlat=0x1c (7000 ns) intpin=a, irq=10 powerspec 1 supports D0 D1 D2 D3 current D0 TUPLE: LINKTARGET [3]: 43 49 53 Product version: 5.0 Product name: Intersil | ISL3890 | - | - | Manufacturer ID: 0b009038 Functions: Unknown(254), Multi-Functioned TUPLE: Unknown(0x1c) [3]: 02 d9 02 cardbus1: Opening BAR: type=MEM, bar=10, len=2000 CIS reading done cardbus1: Non-prefetchable memory at 88000000-88001fff pci0: driver added found-> vendor=0x8086, dev=0x7113, revid=0x03 bus=0, slot=2, func=3 class=06-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0003, statreg=0x0280, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) pci0:2:3: reprobing on driver added found-> vendor=0x11c1, dev=0x0449, revid=0x01 bus=0, slot=6, func=0 class=07-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0003, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0xfc (63000 ns), maxlat=0x0e (3500 ns) intpin=a, irq=11 powerspec 2 supports D0 D2 D3 current D0 pci0:6:0: reprobing on driver added pci0:6:0: Transition from D0 to D3 found-> vendor=0x125d, dev=0x1969, revid=0x02 bus=0, slot=7, func=0 class=04-01-00, hdrtype=0x00, mfdev=0 cmdreg=0x0001, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x40 (1920 ns), mingnt=0x02 (500 ns), maxlat=0x18 (6000 ns) intpin=a, irq=5 powerspec 1 supports D0 D1 D2 D3 current D0 pci0:7:0: reprobing on driver added pci0:7:0: Transition from D0 to D3 pci1: driver added found-> vendor=0x10c8, dev=0x0005, revid=0x20 bus=1, slot=0, func=0 class=03-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0207, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x80 (3840 ns), mingnt=0x10 (4000 ns), maxlat=0xff (63750 ns) intpin=a, irq=10 powerspec 1 supports D0 D1 D2 D3 current D0 pci1:0:0: reprobing on driver added pci0: driver added found-> vendor=0x8086, dev=0x7113, revid=0x03 bus=0, slot=2, func=3 class=06-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0003, statreg=0x0280, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) pci0:2:3: reprobing on driver added found-> vendor=0x11c1, dev=0x0449, revid=0x01 bus=0, slot=6, func=0 class=07-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0003, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0xfc (63000 ns), maxlat=0x0e (3500 ns) intpin=a, irq=11 powerspec 2 supports D0 D2 D3 current D3 pci0:6:0: reprobing on driver added pci0:6:0: Transition from D3 to D0 pci0:6:0: Transition from D0 to D3 found-> vendor=0x125d, dev=0x1969, revid=0x02 bus=0, slot=7, func=0 class=04-01-00, hdrtype=0x00, mfdev=0 cmdreg=0x0001, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x40 (1920 ns), mingnt=0x02 (500 ns), maxlat=0x18 (6000 ns) intpin=a, irq=5 powerspec 1 supports D0 D1 D2 D3 current D3 pci0:7:0: reprobing on driver added pci0:7:0: Transition from D3 to D0 pci0:7:0: Transition from D0 to D3 pci1: driver added found-> vendor=0x10c8, dev=0x0005, revid=0x20 bus=1, slot=0, func=0 class=03-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0207, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x80 (3840 ns), mingnt=0x10 (4000 ns), maxlat=0xff (63750 ns) intpin=a, irq=10 powerspec 1 supports D0 D1 D2 D3 current D0 pci1:0:0: reprobing on driver added cbb1: cbb_power: 0V cbb1: bad Vcc request. ctrl=0x0, status=0x30000b69 cbb_power: 0V cbb1: cbb_power: 3V cbb1: bad Vcc request. ctrl=0x33, status=0x30000b20 cbb_power: 3V found-> vendor=0x1260, dev=0x3890, revid=0x01 bus=4, slot=0, func=0 class=02-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0000, statreg=0x0298, cachelnsz=8 (dwords) lattimer=0xa8 (5040 ns), mingnt=0x0a (2500 ns), maxlat=0x1c (7000 ns) intpin=a, irq=10 powerspec 1 supports D0 D1 D2 D3 current D0 TUPLE: LINKTARGET [3]: 43 49 53 Product version: 5.0 Product name: Intersil | ISL3890 | - | - | Manufacturer ID: 0b009038 Functions: Unknown(254), Multi-Functioned TUPLE: Unknown(0x1c) [3]: 02 d9 02 cardbus1: Opening BAR: type=MEM, bar=10, len=2000 CIS reading done cardbus1: Non-prefetchable memory at 88000000-88001fff ndis0: <SMC2835W 2.4GHz 54 Mbps Wireless Cardbus Adapter> mem 0x88000000-0x88001fff irq 10 at device 0.0 on cardbus1 ndis0: [MPSAFE] can't re-use a leaf (BusType)! ndis0: NDIS API version: 5.1 ndis0: NDIS ERROR: c000138a (unknown error) ndis0: init handler failed device_attach: ndis0 attach returned 6 --------------------------------- Does anyone have any hint, clue or solution ;-) ? BR, PimReceived on Tue Oct 04 2005 - 18:43:30 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:44 UTC