[U-Boot] [PATCH 0/4 V2] Add basic NVIDIA Tegra2 SoC support
Wolfgang Denk
wd at denx.de
Sat Jan 15 01:01:39 CET 2011
Dear Peter Tyser,
In message <1295047406.29642.6729.camel at petert> you wrote:
>
> Agreed, I should have dug deeper. On PPC we use out_be32() or similar
> to access memory mapped registers, which does have an explicit barrier.
> I'm not familiar with ARM so don't know what the proper access functions
> are, but it looks like the defacto standard writel()/readl().
I have a patch waiting o be applied that adds proper memory barriers
for ARM, too. They are necessary.
> I'd personally use writel()/readl() in this patch. Functionally it may
> be the same as your volatile accesses, but its the generally recommended
> practice. It looks like most of the Tegra support in the Linux kernel
> also uses writel()/readl() for what its worth. Ultimately its up to the
> ARM U-Boot maintainer to decide if they require the access functions or
> not - I'm just giving my opinions from PPC experience.
It's not only recommended, it is mandatory.
I/O accesors _MUST_ be used.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The most difficult thing in the world is to know how to do a thing
and to watch someone else doing it wrong, without commenting.
-- T.H. White
More information about the U-Boot
mailing list