On Tue, 23 Nov 2010 19:48:51 +0100
Joakim Tjernlund <joakim.tjernl...@transmode.se> wrote:

> Only these 2 call sites depends on fixups for my mpc8321 based
> board.
> ---
>  arch/powerpc/cpu/mpc83xx/cpu_init.c |    2 +-
>  arch/powerpc/lib/board.c            |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/powerpc/cpu/mpc83xx/cpu_init.c 
> b/arch/powerpc/cpu/mpc83xx/cpu_init.c
> index f3b67ae..0437b49 100644
> --- a/arch/powerpc/cpu/mpc83xx/cpu_init.c
> +++ b/arch/powerpc/cpu/mpc83xx/cpu_init.c
> @@ -534,7 +534,7 @@ int prt_83xx_rsr(void)
>       sep = " ";
>       for (i = 0; i < n; i++)
>               if (rsr & bits[i].mask) {
> -                     printf("%s%s", sep, bits[i].desc);
> +                     printf("%s%s", sep, LINK_OFF(bits[i].desc));
>                       sep = ", ";
>               }
>       puts("\n");
> diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c
> index 7b09fb5..9fa99dc 100644
> --- a/arch/powerpc/lib/board.c
> +++ b/arch/powerpc/lib/board.c
> @@ -386,7 +386,7 @@ void board_init_f (ulong bootflag)
>  #endif
>  
>       for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
> -             if ((*init_fnc_ptr) () != 0) {
> +             if ((LINK_OFF(*init_fnc_ptr)) () != 0) {
>                       hang ();
>               }
>       }

"Only these" that you've found so far, for the board you've tried --
is it worth adding another pre-relocation landmine to shrink the image
by 5%?  I don't miss the manual fixups we had to do under the old
relocation scheme.

Please document the specific circumstances in which one would need
to use this (any data-segment pointer before relocation?).

Is a missing LINK_OFF likely to result in a crash, or silent bad
behavior?  Will LINK_OFF be a no-op after relocation?

-Scott

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to