Hi,
On Mon, 6 Nov 2006, Geert Uytterhoeven wrote:
> ---------- Forwarded message ----------
> Date: Mon, 06 Nov 2006 09:55:33 +1100
> From: Benjamin Herrenschmidt <be...@ke...>
> To: lin...@oz...
> Subject: APUS and IOs question
>
> Somebody who understands APUS around ?
>
> In include/asm-ppc/io.h, we have a special definition of the PCI IO
> accessors readw,writew,readl and writel for APUS that don't do byteswap
> and also don't do barriers.
>
> This seems very bogus to me. Can somebody explain me why it's done that
> way so I can then explain why it's broken ? :-)
>
> I will remove those definitions soon, so unless I get a very convincing
> argument of why it has to be done that way on APUS, things might break
> (APUS-specific drivers relying on those not swapping will have to be
> fixed).
That stuff is quite old and I only fixed it as needed, so I'm not 100%
sure how it's used completely.
Anyway, AFAICT they mainly used by non-APUS specific drivers, mainly that
would be the permedia fb driver. To make things worse I think this
hardware is connected with some simple PCI adapter working in big endian
mode.
Everything else should use the zorro specific functions, where I added an
eieio(). I agree that it's a mess and I haven't worked on it for a long
time, everytime I attempted to clean this stuff up, patches have been
welcomed with such enthusiasm, that I'd rather continued hacking on
something else...
bye, Roman
|