[U-Boot] [PATCH] env: fix endian ordering in crc table
Joakim Tjernlund
joakim.tjernlund at transmode.se
Thu Mar 18 07:55:21 CET 2010
Jeff Angielski <jeff at theptrgroup.com> wrote on 2010/03/18 02:14:19:
> From: Jeff Angielski <jeff at theptrgroup.com>
> To: u-boot at lists.denx.de
> Cc: Joakim Tjernlund <joakim.tjernlund at transmode.se>
> Date: 2010/03/18 02:14
> Subject: [PATCH] env: fix endian ordering in crc table
>
>
> The crc table was being built as little endian for big endian
> targets. This would cause fw_printenv to always fail with
> "Warning: Bad CRC, using default environment" messages.
>
> Signed-off-by: Jeff Angielski <jeff at theptrgroup.com>
Acked-by: Joakim Tjernlund <Joakim.Tjernlund at transmode.se>
> ---
> lib_generic/crc32.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/lib_generic/crc32.c b/lib_generic/crc32.c
> index 468b397..27335a3 100644
> --- a/lib_generic/crc32.c
> +++ b/lib_generic/crc32.c
> @@ -163,7 +163,7 @@ const uint32_t * ZEXPORT get_crc_table()
> #endif
>
> /*
> ========================================================================= */
> -# ifdef __LITTLE_ENDIAN
> +# if __BYTE_ORDER == __LITTLE_ENDIAN
> # define DO_CRC(x) crc = tab[(crc ^ (x)) & 255] ^ (crc >> 8)
> # else
> # define DO_CRC(x) crc = tab[((crc >> 24) ^ (x)) & 255] ^ (crc << 8)
> --
> 1.6.3.3
>
> --
> Jeff Angielski
> The PTR Group
> www.theptrgroup.com
>
More information about the U-Boot
mailing list