1
2
3
4
5
6#define CRCPOLY_LE 0xedb88320
7#define CRCPOLY_BE 0x04c11db7
8
9
10
11
12
13
14#define CRC32C_POLY_LE 0x82F63B78
15
16
17#ifdef CONFIG_CRC32_SLICEBY8
18# define CRC_LE_BITS 64
19# define CRC_BE_BITS 64
20#endif
21#ifdef CONFIG_CRC32_SLICEBY4
22# define CRC_LE_BITS 32
23# define CRC_BE_BITS 32
24#endif
25#ifdef CONFIG_CRC32_SARWATE
26# define CRC_LE_BITS 8
27# define CRC_BE_BITS 8
28#endif
29#ifdef CONFIG_CRC32_BIT
30# define CRC_LE_BITS 1
31# define CRC_BE_BITS 1
32#endif
33
34
35
36
37
38
39
40
41#ifndef CRC_LE_BITS
42# ifdef CONFIG_64BIT
43# define CRC_LE_BITS 64
44# else
45# define CRC_LE_BITS 32
46# endif
47#endif
48#ifndef CRC_BE_BITS
49# ifdef CONFIG_64BIT
50# define CRC_BE_BITS 64
51# else
52# define CRC_BE_BITS 32
53# endif
54#endif
55
56
57
58
59
60#if CRC_LE_BITS > 64 || CRC_LE_BITS < 1 || CRC_LE_BITS == 16 || \
61 CRC_LE_BITS & CRC_LE_BITS-1
62# error "CRC_LE_BITS must be one of {1, 2, 4, 8, 32, 64}"
63#endif
64
65
66
67
68
69#if CRC_BE_BITS > 64 || CRC_BE_BITS < 1 || CRC_BE_BITS == 16 || \
70 CRC_BE_BITS & CRC_BE_BITS-1
71# error "CRC_BE_BITS must be one of {1, 2, 4, 8, 32, 64}"
72#endif
73