Skip site navigation (1)Skip section navigation (2)
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>