11fb2e3f2SKrzysztof Kozlowski /* SPDX-License-Identifier: GPL-2.0 */ 21fb2e3f2SKrzysztof Kozlowski #ifndef _LINUX_CRC32_POLY_H 31fb2e3f2SKrzysztof Kozlowski #define _LINUX_CRC32_POLY_H 41fb2e3f2SKrzysztof Kozlowski 51fb2e3f2SKrzysztof Kozlowski /* 61fb2e3f2SKrzysztof Kozlowski * There are multiple 16-bit CRC polynomials in common use, but this is 71fb2e3f2SKrzysztof Kozlowski * *the* standard CRC-32 polynomial, first popularized by Ethernet. 81fb2e3f2SKrzysztof Kozlowski * 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 91fb2e3f2SKrzysztof Kozlowski */ 10*e37f2f93SKrzysztof Kozlowski #define CRC32_POLY_LE 0xedb88320 11*e37f2f93SKrzysztof Kozlowski #define CRC32_POLY_BE 0x04c11db7 121fb2e3f2SKrzysztof Kozlowski 131fb2e3f2SKrzysztof Kozlowski /* 141fb2e3f2SKrzysztof Kozlowski * This is the CRC32c polynomial, as outlined by Castagnoli. 151fb2e3f2SKrzysztof Kozlowski * 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+ 161fb2e3f2SKrzysztof Kozlowski * x^8+x^6+x^0 171fb2e3f2SKrzysztof Kozlowski */ 181fb2e3f2SKrzysztof Kozlowski #define CRC32C_POLY_LE 0x82F63B78 191fb2e3f2SKrzysztof Kozlowski 201fb2e3f2SKrzysztof Kozlowski #endif /* _LINUX_CRC32_POLY_H */ 21