Powering down 16-bit wi(4) PC Card is broken for me

Ruslan Ermilov ru at FreeBSD.org
Fri Sep 23 01:53:45 PDT 2005


Hi Warner,

This is with today's -CURRENT, but it's been happening for some time
now I guess.

I have two PC Cards, one 32-bit 3.3V rl(4), and one 16-bit 5V wi(4).
And it looks there's a problem with powering down the wi(4) card.

Ejecting/injecting rl(4) works as expected.  But first time I eject
wi(4), it fails (Bad Vcc requested).  After this happens, I can no
longer use this slot -- "Bad Vcc requested" is printed during each
ejection/injection, and I get "watchdog timeout" with rl(4).

Here are the probe lines:

: cbb0: <TI1450 PCI-CardBus Bridge> mem 0x50103000-0x50103fff irq 11 at device 2.0 on pci0
: cardbus0: <CardBus bus> on cbb0
: pccard0: <16-bit PCCard bus> on cbb0
: cbb1: <TI1450 PCI-CardBus Bridge> mem 0x50102000-0x50102fff irq 11 at device 2.1 on pci0
: cardbus1: <CardBus bus> on cbb1
: pccard1: <16-bit PCCard bus> on cbb1

(hw.cbb.debug is set to "1".)

Here's the log of injection/ejection of rl(4), two times in a row:

Injecting rl:

: Status is 0x30000920
: cbb0: card inserted: event=0x00000006, state=30000920
: cbb0: cbb_power: 3V
: rl0: <Edimax EP-4103DL CardBus> port 0x1000-0x10ff mem 0xd8000-0xd81ff irq 11 at device 0.0 on cardbus0
: miibus0: <MII bus> on rl0
: rlphy0: <RealTek internal media interface> on miibus0
: rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
: rl0: Ethernet address: 00:11:6b:50:03:82

Ejecting rl:

: Status is 0x30000186
: rlphy0: detached
: miibus0: detached
: rl0: detached
: cbb0: cbb_power: 0V

Injecting rl:

: Status is 0x30000920
: cbb0: card inserted: event=0x00000006, state=30000920
: cbb0: cbb_power: 3V
: rl0: <Edimax EP-4103DL CardBus> port 0x1000-0x10ff mem 0xd8000-0xd81ff irq 11 at device 0.0 on cardbus0
: miibus0: <MII bus> on rl0
: rlphy0: <RealTek internal media interface> on miibus0
: rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
: rl0: Ethernet address: 00:11:6b:50:03:82

Ejecting rl:

: Status is 0x30000186
: rlphy0: detached
: miibus0: detached
: rl0: detached
: cbb0: cbb_power: 0V

Here's the wi(4) play.  (The wi(4) driver isn't loaded, it's not important.)

First injection of wi works:

: Status is 0x30000510
: cbb0: card inserted: event=0x00000000, state=30000510
: cbb_pcic_socket_enable:
: cbb0: cbb_power: 5V
: cbb_pcic_socket_enable:
: pccard0: <unknown card> (manufacturer=0x0156, product=0x0002, function_type=6) at function 0
: pccard0:    CIS info: Lucent Technologies, WaveLAN/IEEE, Version 01.01, 

Ejection of wi fails:

: Status is 0x30000116
: cbb_pcic_socket_disable
: cbb0: cbb_power: 0V
: cbb0: Bad Vcc requested
        ^^^^^^^^^^^^^^^^^

And that's where the problem starts.

Injecting wi again (fails):

: Status is 0x30000710
: cbb0: card inserted: event=0x00000000, state=30000710
: cbb_pcic_socket_enable:
: cbb0: cbb_power: 5V
: cbb0: Bad Vcc requested
: cbb_pcic_socket_enable:
: pccard0: <unknown card> (manufacturer=0x0156, product=0x0002, function_type=6) at function 0
: pccard0:    CIS info: Lucent Technologies, WaveLAN/IEEE, Version 01.01, 

Ejecting wi:

: Status is 0x30000316
: cbb_pcic_socket_disable
: cbb0: cbb_power: 0V
: cbb0: Bad Vcc requested

Injecting/ejecting rl(4) similarly fails now.

When it happens, rl(4) attaches but no longer works (watchdog timeouts).
When it happens, wi(4) attaches but no longer works ("no carrier" in
ifconfig(8) despite wicontrol(8) seeing the AP normally).


Cheers,
-- 
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20050923/c17155f9/attachment.bin


More information about the freebsd-current mailing list