[U-Boot] in/out_le32, etc.
Aaron Williams
Aaron.Williams at caviumnetworks.com
Sat Feb 12 12:23:59 CET 2011
One thing that is getting confusing to me is that there seems to be many
different methods for doing I/O.
There's in_xxx/out_xxx, __raw_readx/__raw_writex and readx/writex. What
exactly is the difference between all of these? It looks like the in/out was
added recently and is not present in the mips io.h file.
In a related case, I run into problems with a number of drivers because they
assume that readl/writel can be used to access the PCI BAR address space or
that a pointer is a physical address. This is not always the case.
For example, on our platform the PCI BAR address space is mapped to different
64-bit address spaces depending on the bus number. It would be very helpful if
different macros were used for different I/O devices. For example, one set of
macros for accessing PCI BAR address space.
-Aaron
More information about the U-Boot
mailing list