|
|
@@ -0,0 +1,20 @@
|
|
|
+/* SPDX-License-Identifier: GPL-2.0 */
|
|
|
+#ifndef _LINUX_CRC32_POLY_H
|
|
|
+#define _LINUX_CRC32_POLY_H
|
|
|
+
|
|
|
+/*
|
|
|
+ * There are multiple 16-bit CRC polynomials in common use, but this is
|
|
|
+ * *the* standard CRC-32 polynomial, first popularized by Ethernet.
|
|
|
+ * x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x^1+x^0
|
|
|
+ */
|
|
|
+#define CRCPOLY_LE 0xedb88320
|
|
|
+#define CRCPOLY_BE 0x04c11db7
|
|
|
+
|
|
|
+/*
|
|
|
+ * This is the CRC32c polynomial, as outlined by Castagnoli.
|
|
|
+ * x^32+x^28+x^27+x^26+x^25+x^23+x^22+x^20+x^19+x^18+x^14+x^13+x^11+x^10+x^9+
|
|
|
+ * x^8+x^6+x^0
|
|
|
+ */
|
|
|
+#define CRC32C_POLY_LE 0x82F63B78
|
|
|
+
|
|
|
+#endif /* _LINUX_CRC32_POLY_H */
|