[U-Boot] [PATCH] POST: Added ECC memory test for mpc83xx.

Michael Zaidman michael.zaidman at gmail.com
Tue Apr 6 11:28:46 CEST 2010


On Sat, Apr 3, 2010 at 3:22 AM, Timur Tabi <timur.tabi at gmail.com> wrote:
> On Fri, Apr 2, 2010 at 8:49 AM, Michael Zaidman
> <michael.zaidman at gmail.com> wrote:
>
>> +inline static void ecc_clear(volatile ddr83xx_t *ddr)
>
> Please use I/O accessors instead of "volatile".
>
> --
> Timur Tabi
> Linux kernel developer at Freescale
>
I do not question the rationale behind the requirement to use the I/O
accessors. My question is - if there are any exceptions to the rule?
Just for curiosity I compared the assembly code generated by both
versions of ecc_clear routine  - original and using I/O accessors. The
original is of 0x3C size while "accessors" version has 0x74 size.
Rewriting code to use accessors API added 56 bytes or 14 opcodes. It
doubled the routine's execution time. The routine is called in the
loop per each ecc word, that significantly increased execution time of
the ECC POST test and consequently board startup time.
-michael


More information about the U-Boot mailing list