aboutsummaryrefslogtreecommitdiff
path: root/include/tables_csum.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/tables_csum.h')
-rw-r--r--include/tables_csum.h23
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