Date: Wed, 24 Jan 2007 20:35:24 +0100 From: "felix.schalck" <felix.schalck@gmx.net> To: "M. Warner Losh" <imp@bsdimp.com> Cc: freebsd-mobile@freebsd.org Subject: Re: cardbus not working Message-ID: <45B7B4FC.4050901@gmx.net> In-Reply-To: <20070124.084635.1366907896.imp@bsdimp.com> References: <45B6300F.6040302@gmx.net> <20070124.084635.1366907896.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
M. Warner Losh wrote: > In message: <45B6300F.6040302@gmx.net> > "felix.schalck" <felix.schalck@gmx.net> writes: > : Hi, > : > : I posted this to freebsd-questions first, 'cause I didn't remember there > : was a freebsd-mobile mailing list :)... Sorry if you get this mail twice. > : > : Here is my problem: > : I'm trying to get a WLAN pcmcia card working on freebsd 6.2. Kernel with > : cardbus support compiled fine, but when the card is inserted, i get: > : > : Status is 0x30000086 > : Status is 0x30000820 > : cbb0: card inserted: event=0x00000000, state=30000820 > : cbb0: cbb_power: 3V > : cbb0: cbb_power: 0V > : > : Dmesg shows: > : > : cbb0: <ENE CB1410 PCI-CardBus Bridge> at device 7.0 on pci2 > : cbb0: Found memory at e0202000 > : cbb0: Secondary bus is 2 > > secondary bus 2 on bus 2 is the problem, I think. > > : cardbus0: <CardBus bus> on cbb0 > : pccard0: <16-bit PCCard bus> on cbb0 > : > : Any ideas ? What are my possibilities/chances to get it work ? > > What kind of computer do you have? I have one that I need to 'hack' > to get working. It is a Toshiba Satellite of recent vintage. Its > pcib2 has pci2 as a child, and my cbb device is on pci2 like yours. > It's subordinate bus numbers are wrong on pcib2: > > % pciconf -l | grep pcib2 > pcib2@pci0:20:4: class=0x060401 card=0x00000000 chip=0x43421002 > rev=0x00 hdr=0x01 > % pciconf -r pci0:20:4 0x18 > 20020200 > % > > This means that the attempt to kludge around this in the cbb driver > fails: > > ... > cbb0: Secondary bus is 0 > cbb0: Secondary bus set to 3 subbus 4 > ... > > because the config cycles aren't making it through. I hacked my > pci_pci.c code to smack a 0xff into offset 0x1b for unit 2, but that's > evil. It may be necessary for you to do as well until I resolve this > issue. > > To see if you need to further update cbb, please send the output of: > % sysctl dev.cbb > to me. On my machine it says: > > dev.cbb.0.%desc: TI1410 PCI-CardBus Bridge > dev.cbb.0.%driver: cbb > dev.cbb.0.%location: slot=6 function=0 > dev.cbb.0.%pnpinfo: vendor=0x104c device=0xac50 subvendor=0x1179 subdevice=0xff10 class=0x060700 > dev.cbb.0.%parent: pci2 > dev.cbb.0.pribus: 2 > dev.cbb.0.secbus: 3 > dev.cbb.0.subbus: 4 > > Warner > Thank you very much for the interesting details you provided; I certainly didn't understand everything, but this might be indeed the source of the problem; it would be great if you could help me to understand&provide a solution, like yours. I'm running a clevo M120 W with an intel 855GME + 82801DBM core architecture; the manufacturer provides very few details, but i *think* there's only one pcib, as pciconf only shows one ! So, is the pci2 (which seems to hold the cbb) necessary a child of this pcib1 ? %pciconf -l | grep pcib pcib1@pci0:30:0: class=0x060400 card=0x00000000 chip=0x24488086 rev=0x83 hdr=0x01 and %pciconf -l hostb0@pci0:0:0: class=0x060000 card=0x01201558 chip=0x35808086 rev=0x02 hdr=0x00 none0@pci0:0:1: class=0x088000 card=0x01201558 chip=0x35848086 rev=0x02 hdr=0x00 none1@pci0:0:3: class=0x088000 card=0x01201558 chip=0x35858086 rev=0x02 hdr=0x00 agp0@pci0:2:0: class=0x030000 card=0x01201558 chip=0x35828086 rev=0x02 hdr=0x00 none2@pci0:2:1: class=0x038000 card=0x01201558 chip=0x35828086 rev=0x02 hdr=0x00 uhci0@pci0:29:0: class=0x0c0300 card=0x01201558 chip=0x24c28086 rev=0x03 hdr=0x00 uhci1@pci0:29:1: class=0x0c0300 card=0x01201558 chip=0x24c48086 rev=0x03 hdr=0x00 uhci2@pci0:29:2: class=0x0c0300 card=0x01201558 chip=0x24c78086 rev=0x03 hdr=0x00 ehci0@pci0:29:7: class=0x0c0320 card=0x01201558 chip=0x24cd8086 rev=0x03 hdr=0x00 pcib1@pci0:30:0: class=0x060400 card=0x00000000 chip=0x24488086 rev=0x83 hdr=0x01 isab0@pci0:31:0: class=0x060100 card=0x00000000 chip=0x24cc8086 rev=0x03 hdr=0x00 atapci0@pci0:31:1: class=0x01018a card=0x01201558 chip=0x24ca8086 rev=0x03 hdr=0x00 none3@pci0:31:3: class=0x0c0500 card=0x01201558 chip=0x24c38086 rev=0x03 hdr=0x00 pcm0@pci0:31:5: class=0x040100 card=0x01201558 chip=0x24c58086 rev=0x03 hdr=0x00 none4@pci0:31:6: class=0x070300 card=0x01201558 chip=0x24c68086 rev=0x03 hdr=0x00 rl0@pci2:6:0: class=0x020000 card=0x01201558 chip=0x813910ec rev=0x10 hdr=0x00 cbb0@pci2:7:0: class=0x060700 card=0x01201558 chip=0x14101524 rev=0x01 hdr=0x02 iwi0@pci2:8:0: class=0x028000 card=0x27028086 chip=0x42208086 rev=0x05 hdr=0x0 I tried your command: #pciconf -r pci0:30:0 0x18 (although i didn't really understand why 0x18!), which gives the same result: 20020200 And finally, here's the requested sysctl output: %sysctl dev.cbb dev.cbb.0.%desc: ENE CB1410 PCI-CardBus Bridge dev.cbb.0.%driver: cbb dev.cbb.0.%location: slot=7 function=0 dev.cbb.0.%pnpinfo: vendor=0x1524 device=0x1410 subvendor=0x1558 subdevice=0x0120 class=0x060700 dev.cbb.0.%parent: pci2 I hope it helps, Thanks again for your cares about my problem, Felix > _______________________________________________ > freebsd-mobile@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-mobile > To unsubscribe, send any mail to "freebsd-mobile-unsubscribe@freebsd.org" > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45B7B4FC.4050901>