On Tue, 2003-01-21 at 00:31, Alan Cox wrote:
> On Tue, 2003-01-14 at 17:38, Benjamin Herrenschmidt wrote:
> > > Fatal on PIIX PIO
> > Ok, but PIIX runs on intel platforms with real IOs, so there is no need
> > to perform a read... If we go the hwif->IOSYNC() way, we might well set
> > it up to no-op on x86 PIO iops by default and read of alt-status on
> > other archs if it's safe enough on other controllers/drives...
> PIIX is also found on MIPS, IA-64 and some other platforms. I also fear
> that bug may be far from unique
Then we may want to have the actual implementation of the default iops
IOSYNC() for PIO & MMIO be arch specific. I would suggest nothing for
PIO on x86 and at least and mb() on others. For MMIO, then, we have the
choice of reading the alt status, or reading the dma_base if any.
Of course these are defaults, I expect controllers like ide-pmac to
implement their own IOSYNC.
That means that we must _both_ call IOSYNC and do the 400ns delay (I
don't trust reading alt status to be enough, especially on MMIO based
controlers, also, on ide-pmac, I plan to go read some other register
What do you think ?
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Jan 23 2003 - 22:00:27 EST