>From some very brief testing here, the problem is that the card's 
interrupt handler hasn't yet been disconected.  When you power the card 
down, you get an edge on the interrupt pin, and then the driver interrupt 
handler spins madly because the card hardware is gone and thus doesn't 
behave.  If you have an ethernet card, try suspending with just it in the 
slot and then break into DDB; I'll warrant that you end up inside the
relevant driver's interrupt handler.

If I'm correct, this is just an ordering issue; the driver has to be shut 
down _before_ the slot, not afterwards.

> The system freezes on powering down a PCCARD slot. From memory the
> location is putb1 called from pcic_disable. The freeze is easy to
> reproduce, just remove the card. When stepping through the code, even
> the debugger prompt does not return after the outb for PCIC_POWER on
> line 698 of pcic.c.
> 
> This is on CURRENT as of yesterday evening, but other CURRENTs of the
> last month have the same problem. I've not been able to find a possible
> culprit in recent commits to pcic.c or pccard.c.
> 
> Do you have any hint on how to debug this or what version of pcic.c I
> should take to get rid of this problem?
> 
> pcic-pci0: <TI PCI-1131 PCI-CardBus Bridge> irq 9 at device 19.0 on pci0
> pcic-pci1: <TI PCI-1131 PCI-CardBus Bridge> irq 9 at device 19.1 on pci0
> ...
> pcic: polling, can't alloc 0
> pcic: polling, can't alloc 0
> pcic0: <VLSI 82C146> on isa0
> pccard0: <PC Card bus -- kludge version> on pcic0
> pccard1: <PC Card bus -- kludge version> on pcic0
> 
> Thanks for the work being done.
> 
> Nick
> --
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]                                          USB project
> http://www.etla.net/~n_hibma/
> 
> 
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
> 

-- 
\\ Give a man a fish, and you feed him for a day. \\  Mike Smith
\\ Tell him he should learn how to fish himself,  \\  [EMAIL PROTECTED]
\\ and he'll hate you for a lifetime.             \\  [EMAIL PROTECTED]




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to