Thread (1 message) 1 message, 1 author, 2006-02-02

Re: Yosemite/440EP why are readl()/ioread32() setup to readlittle-endian?

From: Matt Porter <mporter@kernel.crashing.org>
Date: 2006-02-02 03:07:24

On Wed, Feb 01, 2006 at 06:54:09PM -0600, Kumar Gala wrote:
On Wed, 1 Feb 2006, Peter Korsgaard wrote:
quoted
quoted
quoted
quoted
quoted
quoted
"Matt" == Matt Porter [off-list ref] writes:
 Matt> read*/write* and ioread*/iowrite* generate outbound little
 Matt> endian cycles on ALL arches, period.  They are intended
 Matt> only for PCI use and have generic names only because of
 Matt> the assumption that "all the world is a PC".

What is the preferred way of accessing non-PCI devices then? Direct
pointer access?
No direct pointer access is bad. On PPC You can use
in_be{8,16,32}/out_be{8,16,32}
Ack. Also, it should be pointed out that there are countless
examples of PPC drivers where this is done properly. 4xx, 83xx,
85xx, etc. on-chip peripherals all do this since they are
naturally BE registers.

-Matt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help