Re: [RFC] handle access to non-present IO ports on 8xx
From: Mark Chambers <hidden>
Date: 2005-06-03 12:07:44
quoted
quoted
Hrm... removing a PCMCIA card triggers mchecks ? that is bad... With "proper" PCMCIA controllers, those are swallowed properly when the
card
quoted
quoted
is removed. The eating of the machine check is a bit too hackish to my taste... Better is to "not do that" by making sure the legacy crap
isn't
quoted
quoted
trying to tap unexisting ports, but then, if PCMCIA is also a problem...Well, cardmgr calls the driver's shutdown/close routine as soon as the card is removed. Some of those methods write to IO registers in the process (eg net/pcmcia/pcnet_cs.c). I dont see any elegant change that could be done in PCMCIA.I know, the thing is, on platforms with a "classical" PCI<->PCMCIA bridge, the bridge will not issue machine checks when the card is removed. I don't know if that is possible with your HW setup, I suppose you are hooking PCMCIA directly to the CPU IO bus ...
I forget if I pointed this out already or not, but there's a good chance the mchecks you are seeing are from a bad PCMCIA implementation, not the 8xx itself. PCMCIA uses WAIT, which is a negative ACK really, and that must be pulled up externally, so if you remove the card any active WAIT goes away. I'd be glad to take a look at the schematics if available and tell you if I think there might be a problem there. Then again, maybe it doesn't matter where the mchecks are coming from, you just need to handle them... Mark Chambers