From 69d243f0b5f6be4d0df1310ae5752b46dfddb955 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Wed, 1 May 2013 12:08:01 +0200 Subject: digital/ucoolib/ucoolib/utils/crc: add CRC32 --- digital/ucoolib/ucoolib/utils/crc.hh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'digital/ucoolib/ucoolib/utils/crc.hh') diff --git a/digital/ucoolib/ucoolib/utils/crc.hh b/digital/ucoolib/ucoolib/utils/crc.hh index 0e97f4a8..391b70a3 100644 --- a/digital/ucoolib/ucoolib/utils/crc.hh +++ b/digital/ucoolib/ucoolib/utils/crc.hh @@ -25,6 +25,9 @@ // }}} #include "ucoolib/common.hh" +/// Please read "A PAINLESS GUIDE TO CRC ERROR DETECTION ALGORITHMS", +/// http://www.ross.net/crc/download/crc_v3.txt + namespace ucoo { /// Dallas/Maxim iButton 8bit CRC. @@ -48,6 +51,20 @@ crc8_update (uint8_t crc, uint8_t data) uint8_t crc8_compute (const uint8_t *data, int size); +/// Name : "CRC-32" +/// Width : 32 +/// Poly : 04C11DB7 +/// Init : FFFFFFFF +/// RefIn : True +/// RefOut : True +/// XorOut : FFFFFFFF +/// Check : CBF43926 +uint32_t +crc32_update (uint32_t crc, uint8_t data); + +uint32_t +crc32_compute (const uint8_t *data, int size); + } // namespace ucoo #endif // ucoolib_utils_crc_hh -- cgit v1.2.3