Messages in this thread | | | Date | Tue, 24 May 2011 19:00:34 +0200 | From | "Arend van Spriel" <> | Subject | Re: [RFC] lib: crc8: add new library module providing crc8 algorithm |
| |
On 05/24/2011 02:57 PM, Alan Cox wrote: > On Tue, 24 May 2011 12:38:45 +0200 > "Arend van Spriel"<arend@broadcom.com> wrote: > >> On 05/24/2011 12:27 PM, Alan Cox wrote: >>>> Not sure whether you mean the source code or the object code. I build >>>> kernel with debug symbols so the sizes are bit higher. >>> nm will tell you the actual sizes. I think the n_gsm code is about 500 >>> bytes or so and chunks of it inline. >> Not counting the crc table I assume. > I forget but I think including - its a tiny tiny bit of code once inlined.
I used nm on both flavours.
dynamic crc table based on polynomial and bit order --------------------------------------------------- 00000000 00000026 T crc8 00000030 000000dc T crc8_create
fixed crc table with table selection based on bit order ------------------------------------------------------- 00000000 00000026 T crc8 00000030 0000002b T crc8_create 00000100 00000100 r crc8_table_lsb 00000000 00000100 r crc8_table_msb
The first requires the user to provide buffer to hold the table. The difference is in the crc_create() function (maybe better named crc_populate_table() in first, and crc_select_table() in second). It is 177 bytes larger. The crc calculating function is 38 bytes. Still pretty small I would think.
Gr. AvS
-- Almost nobody dances sober, unless they happen to be insane. -- H.P. Lovecraft --
| |