documentation: define downstream data consumption rules
It's important to document what data is available for downstream consumption by the OS and payloads. Provide details/directions on what is available. Change-Id: Icafb6e9f59462ad19cf6a641046c6efc36f138f0 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/9194 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc.jones@se-eng.com>
This commit is contained in:
parent
f78a09b60c
commit
f34ea5f660
|
@ -0,0 +1,22 @@
|
||||||
|
This text describes the ABI coreboot presents to downstream users. Such
|
||||||
|
users are payloads and/or operating systems. Therefore, this text serves
|
||||||
|
at what can be relied on for downstream consumption. Anything not explicitly
|
||||||
|
listed as consumable is subject to change without notice.
|
||||||
|
|
||||||
|
Background and Usage
|
||||||
|
|
||||||
|
coreboot passes information to downstream users using coreboot tables. These
|
||||||
|
table definitions can be found in src/include/boot/coreboot_tables.h and
|
||||||
|
payloads/libpayload/include/coreboot_tables.h respectively within coreboot
|
||||||
|
and libpayload. One of the most vital and important pieces of information
|
||||||
|
found within these tables is the memory map of the system indicating
|
||||||
|
available and reserved memory.
|
||||||
|
|
||||||
|
In 2009 cbmem was added to coreboot. The "CBMEM high table memory manager"
|
||||||
|
serves a way for coreboot to bookkeep its own internal data. While some
|
||||||
|
of this data may be exposed through the coreboot tables the data structures
|
||||||
|
used to manage the data within the cbmem area is subject to change.
|
||||||
|
|
||||||
|
Provided the above, if one needs a piece of data exposed to the OS
|
||||||
|
or payload it should reside within the coreboot tables. If it isn't there
|
||||||
|
then a code change will be required to add it to the coreboot tables.
|
Loading…
Reference in New Issue