Messages in this thread | | | Subject | Re: iomapping a big endian area | From | Benjamin Herrenschmidt <> | Date | Mon, 04 Apr 2005 17:50:39 +1000 |
| |
On Sat, 2005-04-02 at 22:27 -0600, James Bottomley wrote: > On Sat, 2005-04-02 at 20:08 -0800, David S. Miller wrote: > > > Did anyone have a preference for the API? I was thinking > > > ioread32_native, but ioread32be is fine too. > > > > I think doing foo{be,le}{8,16,32}() would be consistent with > > our byteorder.h interface names. > > Thinking about this some more, I know of no case of a BE bus connected > to a LE system, nor do I think anyone would ever create such a beast, so > our only missing interface is for a BE bus on a BE system.
It's more a matter of the device than the bus imho...
> Thus, I think io{read,write}{16,32}_native are better interfaces ...
I disagree. The driver will never "know" ...
> they basically mean pass memory operations without byte swaps, so > they're well defined on both BE and LE systems and correspond exactly to > our existing _raw_{read,write}{w,l} calls (principle of least surprise).
I don't think it's sane. You know that your device is BE or LE and use the appropriate interface. "native" doesn't make sense to me in this context.
Ben.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |