diff options
| author | Greg KH <gregkh@suse.de> | 2005-09-12 15:10:59 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-09-12 15:10:59 -0400 |
| commit | ad2c10f8f00d3fe2e37dd8a107e7cf4ac0459489 (patch) | |
| tree | 5571f6a5784f51efddf9c1ee0408894cd63a460f /include/linux/crc16.h | |
| parent | 6b7839007098a6b5612d31690e11277d4242e6ae (diff) | |
| parent | 2ade81473636b33aaac64495f89a7dc572c529f0 (diff) | |
Merge ../torvalds-2.6/
Diffstat (limited to 'include/linux/crc16.h')
| -rw-r--r-- | include/linux/crc16.h | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/include/linux/crc16.h b/include/linux/crc16.h index bdedf825b04a..9443c084f881 100644 --- a/include/linux/crc16.h +++ b/include/linux/crc16.h | |||
| @@ -1,22 +1,11 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * crc16.h - CRC-16 routine | 2 | * crc16.h - CRC-16 routine |
| 3 | * | 3 | * |
| 4 | * Implements the standard CRC-16, as used with 1-wire devices: | 4 | * Implements the standard CRC-16: |
| 5 | * Width 16 | 5 | * Width 16 |
| 6 | * Poly 0x8005 (x^16 + x^15 + x^2 + 1) | 6 | * Poly 0x8005 (x^16 + x^15 + x^2 + 1) |
| 7 | * Init 0 | 7 | * Init 0 |
| 8 | * | 8 | * |
| 9 | * For 1-wire devices, the CRC is stored inverted, LSB-first | ||
| 10 | * | ||
| 11 | * Example buffer with the CRC attached: | ||
| 12 | * 31 32 33 34 35 36 37 38 39 C2 44 | ||
| 13 | * | ||
| 14 | * The CRC over a buffer with the CRC attached is 0xB001. | ||
| 15 | * So, if (crc16(0, buf, size) == 0xB001) then the buffer is valid. | ||
| 16 | * | ||
| 17 | * Refer to "Application Note 937: Book of iButton Standards" for details. | ||
| 18 | * http://www.maxim-ic.com/appnotes.cfm/appnote_number/937 | ||
| 19 | * | ||
| 20 | * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com> | 9 | * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com> |
| 21 | * | 10 | * |
| 22 | * This source code is licensed under the GNU General Public License, | 11 | * This source code is licensed under the GNU General Public License, |
| @@ -28,9 +17,6 @@ | |||
| 28 | 17 | ||
| 29 | #include <linux/types.h> | 18 | #include <linux/types.h> |
| 30 | 19 | ||
| 31 | #define CRC16_INIT 0 | ||
| 32 | #define CRC16_VALID 0xb001 | ||
| 33 | |||
| 34 | extern u16 const crc16_table[256]; | 20 | extern u16 const crc16_table[256]; |
| 35 | 21 | ||
| 36 | extern u16 crc16(u16 crc, const u8 *buffer, size_t len); | 22 | extern u16 crc16(u16 crc, const u8 *buffer, size_t len); |
