Yosemite/440EP why are readl()/ioread32() setup to readlittle-endian?
Eugene Surovegin
ebs at ebshome.net
Thu Feb 2 05:11:06 EST 2006
On Wed, Feb 01, 2006 at 10:04:15AM -0800, David Hawkins wrote:
> Matt,
>
> In the same vein as the readl()/writel() question, what
> are the assumptions regarding memcpy_toio and memcpy_fromio?
>
> If the memcpy_to/fromio operations are intended only
> for access to PCI devices, then they should also inherently
> perform little-endianness conversion. For the test driver
> I was working on, I did *not* find this the case, eg.
> I implemented the test driver read() and write() using the
> memcpy_to/fromio calls, and the data transfers occur
> in big-endian (well, 'native' mode, since I also test the
> same test driver with the PCI adapter in an x86 system).
>
> If memcpy_to/fromio can be used in a more general context,
> then I can see why they operate in native mode.
>
> Just looking for enlightenment.
This commands IIRC are intended for copying chunk of _bytes_. There
are no issues with endianess for bytes, e.g. they work just like
ordinary memcpy.
--
Eugene
More information about the Linuxppc-embedded
mailing list