Bug#366507: Pcmcia cardbus disabled
- To: Thomas Nemeth <email@example.com>
- Cc: firstname.lastname@example.org, Paul Martin <email@example.com>
- Subject: Bug#366507: Pcmcia cardbus disabled
- From: Jonathan Nieder <firstname.lastname@example.org>
- Date: Wed, 11 Jan 2012 09:36:37 -0600
- Message-id: <20120111153637.GA1891@burratino>
- Reply-to: Jonathan Nieder <email@example.com>, firstname.lastname@example.org
- In-reply-to: <email@example.com>
- References: <20111203034556.GA10204@elie.hsd1.il.comcast.net> <firstname.lastname@example.org>
retitle 366507 [ToPIC97] trouble routing CSC IRQs and card IRQs to ISA IRQ (pcmcia cardbus disabled)
Thomas Nemeth wrote:
> Jonathan Nieder wrote:
>> I wonder if v2.6.34-rc2~30^2~2 (pcmcia: re-route Cardbus IRQ to ISA on
>> ti1130 bridges if necessary, 2010-03-06) improved things. Thomas,
>> would you be able to try a more recent kernel?
> I'll try ASAP.
Now that bugzilla is back up, we can see that no, it did not improve
| From Dominik Brodowski
| test patch to use ISA IRQs also for CardBus
| That's bad news -- both sockets are configured the same way. So they _should_
| behave the same way, and work... Well, could you remove the IRQ=11 forced
| setting, try out the attached patch (both sockets), and send the dmesg (even if
| it works)? cbdump or other is not needed.
| From Thomas Nemeth
| Boot messages for 2.6.34-rc2 with applied patch
| No slot worked :(
There was a workaround. Changing the righthand side of
socket->cb_irq = dev->irq;
to 11 in yenta_probe() caused the card to be recognized. Putting it slot 0
afterwards even made it work as a network card.
Unfortunately there is no DMI info to apply this workaround automatically.
| The problem isn't detecting the IRQ -- we can use ISA IRQ 3 (as 2.2.xx did) or
| ISA IRQ 9 and 10 (as the patch in comment #86 did).
| The problem is setting up the bridge so that it routes CSC (card status change)
| IRQs for CardBus and 16bit cards to the ISA IRQ and also card IRQs for CardBus
| and 16bit cards to the ISA IRQ. This seems to be impossible on the ToPIC97.
| However, 2.2. seems to do some "polling" to get the IRQs right. I.e., it isn't
| really using the IRQs, but polls whether an IRQ occured. That seems necessary
| at least or the CSC interrupt.
Results from a newer kernel would still be interesting, but I'm not
optimistic about the possibility of there being a fix already upstream