
9 May
2013
9 May
'13
11:43 p.m.
Dear Adnan Ali,
In message 518BB8C7.3090704@codethink.co.uk you wrote:
- Why do we have to calculate the crc32c_table[] at runtime? Our regular CRC code uses a pre-calculated table; we should do the same here.
This is part of the port. But pre-calculated table can be manually
created.
Not manually. It should be done at compile time, suing basically the same code.
- Compare the code for crc32c_cal() in the patch with the definition of DO_CRC(x) in "lib/crc32.c" - to me, it appears to be the same for little endian code (it is redundant?), but different for big endian systems - which raises the question if this code has ever been tested on a BE machine?
My code uses lib/crc32.c and i have only tested it on mx53loco manchine.
I tend to believe thatit will not work on a big endian system, then.
- The code claims to be derived from "Linux kernel crypto/crc32c.c"; but I cannot find such code in that file.
I think yes but part of part from syslinux. I have also added SHA1 of commit so don't know.
Please provide an exact reference where this code is coming from.
- The implementation of crc32c_cal() suffers from a few other problems (like not triggering the watchdog, which will cause problems on systems that use one).
I think that is true as its not using main line crc32 code.
We probably should do that, then.
Thanks.
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Drawing on my fine command of language, I said nothing.