Subject: Re: [RFC] handle access to non-present IO ports on 8xx

From: Pantelis Antoniou <[email-masked]>
Date: Thu, 02 Jun 2005 10:04:40 +0300

Benjamin Herrenschmidt wrote:
> On Wed, 2005-06-01 at 13:50 -0300, Marcelo Tosatti wrote:
> 
> Hrm... removing a PCMCIA card triggers mchecks ? that is bad... With
> "proper" PCMCIA controllers, those are swallowed properly when the card
> 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
> trying  to tap unexisting ports, but then, if PCMCIA is also a
> problem...
> 

8xx is not proper in any way whatsoever :)

There's no way to fix this thing with simple software hacks.

For example take a PCMCIA driver that's minding it's own businees,
when someone yanks the card out.

cli()
...
inb(xxx)
...
<----- card is yanked here
...
inb(yyy)
...
<----- MCE here
sti()

> 
>>1) why does the current PowerMac version covers only inb() and not outb() ?  
>>I had to add outb() exception table entries for 8xx.
> 
> 
> Not sure, maybe historical loss ? :) You should CC paulus
> 
> 
>>2) Is the same wanted for other embedded PPC's? 
> 
> 
> It's up to you. It slows down those IOs, but on the other hand, inX/outX
> aren't supposed to be very common anymore, at least not with "fast"
> devices, and the IO itself is usually an order of magnitude slower than
> doing those syncs...
> 

Fast ISA I/O. :)

> 
>>3) How to make the misc.S exception entries and additional instructions 
>>selectable only on the platform who need it? #ifdef does not sound 
>>a good idea. 

I wouldn't mind...

>>
>>Nevermind the "#ifdef CONFIG_ALL_PPC" crap - that needs to be done
>>properly.
>>
>>

Regards

Pantelis

P.S. Good job marcello :)