[U-Boot-Users] [PATCH] ppc4xx: Refactor ECC POST for AMCC Denali core
Stefan Roese
sr at denx.de
Tue Jan 15 10:05:10 CET 2008
Hi Larry,
On Monday 14 January 2008, Larry Johnson wrote:
> I'm not convinced about in_be32() et al. yet. Section 2.10.3 of the AMCC
> PPC440 User's manual says that an "msync" (sync) is required between the
> memory access and the control-register access. ("mbar" (eieio) is not
> sufficient because the control-register access is not treated as I/O.)
>
> If I'm reading these correctly, in_be32() does a "sync", load, "twi"
> (which I don't understand), and "isync". out_be32() does a "sync" and a
> store. Thus, neither force completion of the I/O before exiting.
>
> Am I right then that I should include a specific sync before accessing
> the SDRAM control registers?
From your explanation above, it could make sense to add an additional sync
between the memory access and the control register access. This would depend
on the control register type and how it is accessed in the code. If it is a
memory mapped register and accessed via the in_be32() functions, the
additional sync is not needed. But if it is a SPR/DCR type of register, the
sync makes sense to me.
Best regards,
Stefan
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
More information about the U-Boot
mailing list