[PATCH] Remove duplication of table_compute_checksum function
Tom Rini
trini at konsulko.com
Mon Apr 4 20:43:51 CEST 2022
It seems like there was some merge error when first cleaning up and
sharing this function. We have both an inline version of the function
in include/tables_csum.h and a non-inline version in lib/tables_csum.c.
Rework things so that we only have the non-inline version (due to number
of calls, we should not inline this).
Fixes: 1befb38b8682 ("x86: Move table csum into separate file")
Fixes: 2b445e4d3194 ("x86: Move table csum into separate header")
Cc: Alexander Graf <agraf at csgraf.de>
Signed-off-by: Tom Rini <trini at konsulko.com>
---
arch/sandbox/include/asm/tables.h | 0
arch/x86/include/asm/tables.h | 13 -------------
drivers/misc/qfw.c | 3 ---
include/tables_csum.h | 23 ++++++++++++-----------
4 files changed, 12 insertions(+), 27 deletions(-)
delete mode 100644 arch/sandbox/include/asm/tables.h
diff --git a/arch/sandbox/include/asm/tables.h b/arch/sandbox/include/asm/tables.h
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/arch/x86/include/asm/tables.h b/arch/x86/include/asm/tables.h
index aa938837b65a..37be01240db5 100644
--- a/arch/x86/include/asm/tables.h
+++ b/arch/x86/include/asm/tables.h
@@ -16,19 +16,6 @@
/* SeaBIOS expects coreboot tables at address range 0x0000-0x1000 */
#define CB_TABLE_ADDR 0x800
-/**
- * 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);
-
/**
* table_fill_string() - Fill a string with pad in the configuration table
*
diff --git a/drivers/misc/qfw.c b/drivers/misc/qfw.c
index 677841aac5ef..1d54b7542b8a 100644
--- a/drivers/misc/qfw.c
+++ b/drivers/misc/qfw.c
@@ -15,9 +15,6 @@
#include <dm.h>
#include <misc.h>
#include <tables_csum.h>
-#ifdef CONFIG_GENERATE_ACPI_TABLE
-#include <asm/tables.h>
-#endif
#if defined(CONFIG_GENERATE_ACPI_TABLE) && !defined(CONFIG_SANDBOX)
/*
diff --git a/include/tables_csum.h b/include/tables_csum.h
index 5f7edc419ba2..4812333093a1 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
--
2.25.1
More information about the U-Boot
mailing list