]> git.sur5r.net Git - u-boot/blobdiff - arch/x86/include/asm/tables.h
SPDX: Convert all of our single license tags to Linux Kernel style
[u-boot] / arch / x86 / include / asm / tables.h
index 8146ba39b2bc1231405771211e58257b815b9cea..f7c72ed3db03840c09d0d02a104b6efa9297d7d8 100644 (file)
@@ -1,18 +1,20 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef _X86_TABLES_H_
 #define _X86_TABLES_H_
 
-/*
- * All x86 tables happen to like the address range from 0xf0000 to 0x100000.
- * We use 0xf0000 as the starting address to store those tables, including
- * PIRQ routing table, Multi-Processor table and ACPI table.
- */
-#define ROM_TABLE_ADDR 0xf0000
+#include <tables_csum.h>
+
+#define ROM_TABLE_ADDR CONFIG_ROM_TABLE_ADDR
+#define ROM_TABLE_END  (CONFIG_ROM_TABLE_ADDR + CONFIG_ROM_TABLE_SIZE - 1)
+
+#define ROM_TABLE_ALIGN        1024
+
+/* SeaBIOS expects coreboot tables at address range 0x0000-0x1000 */
+#define CB_TABLE_ADDR  0x800
 
 /**
  * table_compute_checksum() - Compute a table checksum
  */
 u8 table_compute_checksum(void *v, int len);
 
+/**
+ * table_fill_string() - Fill a string with pad in the configuration table
+ *
+ * This fills a string in the configuration table. It copies number of bytes
+ * from the source string, and if source string length is shorter than the
+ * required size to copy, pad the table string with the given pad character.
+ *
+ * @dest:      where to fill a string
+ * @src:       where to copy from
+ * @n:         number of bytes to copy
+ * @pad:       character to pad the remaining bytes
+ */
+void table_fill_string(char *dest, const char *src, size_t n, char pad);
+
 /**
  * write_tables() - Write x86 configuration tables
  *
@@ -44,6 +60,6 @@ void write_tables(void);
  * @start:     start address to write PIRQ routing table
  * @return:    end address of PIRQ routing table
  */
-u32 write_pirq_routing_table(u32 start);
+ulong write_pirq_routing_table(ulong start);
 
 #endif /* _X86_TABLES_H_ */