aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/crc-ccitt.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/crc-ccitt.h')
-rw-r--r--include/linux/crc-ccitt.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/crc-ccitt.h b/include/linux/crc-ccitt.h
index cd4f420231ba..72c92c396bb8 100644
--- a/include/linux/crc-ccitt.h
+++ b/include/linux/crc-ccitt.h
@@ -5,12 +5,19 @@
5#include <linux/types.h> 5#include <linux/types.h>
6 6
7extern u16 const crc_ccitt_table[256]; 7extern u16 const crc_ccitt_table[256];
8extern u16 const crc_ccitt_false_table[256];
8 9
9extern u16 crc_ccitt(u16 crc, const u8 *buffer, size_t len); 10extern u16 crc_ccitt(u16 crc, const u8 *buffer, size_t len);
11extern u16 crc_ccitt_false(u16 crc, const u8 *buffer, size_t len);
10 12
11static inline u16 crc_ccitt_byte(u16 crc, const u8 c) 13static inline u16 crc_ccitt_byte(u16 crc, const u8 c)
12{ 14{
13 return (crc >> 8) ^ crc_ccitt_table[(crc ^ c) & 0xff]; 15 return (crc >> 8) ^ crc_ccitt_table[(crc ^ c) & 0xff];
14} 16}
15 17
18static inline u16 crc_ccitt_false_byte(u16 crc, const u8 c)
19{
20 return (crc << 8) ^ crc_ccitt_false_table[(crc >> 8) ^ c];
21}
22
16#endif /* _LINUX_CRC_CCITT_H */ 23#endif /* _LINUX_CRC_CCITT_H */