m8xx_pcmcia driver ported to v2.6

Mark Chambers markc at mail.com
Thu May 12 21:29:48 EST 2005


> >>There is one pending problem: the M8xx does not accept 
> >>access to non present ioports (an exception is triggered),
> >>which is quite common while inserting/removing cards.
> >>
> > Ah yes, I remember this problem from the 68360 days.
> > 
> > This is a matter of how you set up the option register ORx
> > <snip>
> > for instance, you could turn external ack on once a card
> > was inserted.  
> > 
> > As I recall, some PCMCIA cards can have VERY long
> > cycles in the configuration space, so even the maximum 
> > number of wait states in ORx may not be sufficient.
> > 
> Unfortunately this does not work on 8xx since the PCMCIA
> port is not on a chip select. It's a different peripheral
> and always expectes a DTACK to terminate the cycle.
> 
> To get over this problem we need to do something more drastic.
> 
> Take a look at the __do_in_asm macro in include/asm-ppc/io.h.
> 
> Regards
> 
> Pantelis
> 

You are right, I had forgotten that.  I'd also forgotten that PCMCIA
uses negative WAIT, which should have a pull-up on it, so there
should be no problem with non-existent cards.

Another potential problem could be the Bus Monitor Timeout
being set too short and generating a TEA before a valid WAIT is
released.

Mark Chambers




More information about the Linuxppc-embedded mailing list