[U-Boot] [PATCH v2] lib:crc32: Allow setting of the initial crc32 value
Marek Vasut
marex at denx.de
Wed May 7 10:25:52 CEST 2014
On Wednesday, May 07, 2014 at 08:10:20 AM, Lukasz Majewski wrote:
[...]
> --- a/lib/crc32.c
> +++ b/lib/crc32.c
> @@ -255,9 +255,12 @@ uint32_t ZEXPORT crc32_wd (uint32_t crc,
> void crc32_wd_buf(const unsigned char *input, unsigned int ilen,
> unsigned char *output, unsigned int chunk_sz)
> {
> - uint32_t crc;
> + uint32_t crc = 0;
>
> - crc = crc32_wd(0, input, ilen, chunk_sz);
> + if (*output)
> + memcpy(&crc, output, sizeof(crc));
Won't some sort of put_unaligned() work here ? The $crc is uint32_t afterall, so
it might be a jiff faster. Please correct me if I'm wrong.
> +
> + crc = crc32_wd(crc, input, ilen, chunk_sz);
> crc = htonl(crc);
> memcpy(output, &crc, sizeof(crc));
> }
Best regards,
Marek Vasut
More information about the U-Boot
mailing list