diff options
Diffstat (limited to 'include/tables_csum.h')
-rw-r--r-- | include/tables_csum.h | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/include/tables_csum.h b/include/tables_csum.h index 5f7edc419b..4812333093 100644 --- a/include/tables_csum.h +++ b/include/tables_csum.h @@ -6,16 +6,17 @@ #ifndef _TABLES_CSUM_H_ #define _TABLES_CSUM_H_ -static inline u8 table_compute_checksum(void *v, int len) -{ - u8 *bytes = v; - u8 checksum = 0; - int i; - - for (i = 0; i < len; i++) - checksum -= bytes[i]; - - return checksum; -} +/** + * table_compute_checksum() - Compute a table checksum + * + * This computes an 8-bit checksum for the configuration table. + * All bytes in the configuration table, including checksum itself and + * reserved bytes must add up to zero. + * + * @v: configuration table base address + * @len: configuration table size + * @return: the 8-bit checksum + */ +u8 table_compute_checksum(void *v, int len); #endif |