764fe40f09
Some bootloaders seem to overwrite memory starting at 0x600, thus destroying the coreboot table integrity, rendering the table useless. By moving the table to the high tables area (if it's activated), this problem is fixed. In order to move the table, a 40 bytes mini coreboot table with a single sub table is placed at 0x500/0x530 that points to the real coreboot table. This is comparable to the ACPI RSDT or the MP floating table. This patch also adds "table forward" support to flashrom and nvramtool. Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4013 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 |
||
---|---|---|
.. | ||
COPYING | ||
ChangeLog | ||
DISCLAIMER | ||
Makefile | ||
README | ||
cmos_lowlevel.c | ||
cmos_lowlevel.h | ||
cmos_ops.c | ||
cmos_ops.h | ||
common.c | ||
common.h | ||
compute_ip_checksum.c | ||
coreboot_tables.h | ||
hexdump.c | ||
hexdump.h | ||
input_file.c | ||
input_file.h | ||
ip_checksum.h | ||
layout.c | ||
layout.h | ||
layout_file.c | ||
layout_file.h | ||
lbtable.c | ||
lbtable.h | ||
nvramtool.8 | ||
nvramtool.c | ||
nvramtool.spec | ||
opts.c | ||
opts.h | ||
reg_expr.c | ||
reg_expr.h |
README
Summary of Operation -------------------- nvramtool is a utility for reading/writing coreboot parameters and displaying information from the coreboot table. It is intended for x86-based systems (both 32-bit and 64-bit) that use coreboot. The coreboot table resides in low physical memory, and may be accessed through the /dev/mem interface. It is created at boot time by coreboot, and contains various system information such as the type of mainboard in use. It specifies locations in the CMOS (nonvolatile RAM) where the coreboot parameters are stored. For information about coreboot, see http://www.coreboot.org/. Ideas for Future Improvements ----------------------------- 1. Move the core functionality of this program into a shared library. 2. Consider adding options for displaying other BIOS-provided information such as the MP table, ACPI table, PCI IRQ routing table, etc.