34 lines · plain
1COREBOOT firmware information2 3The device tree node to communicate the location of coreboot's memory-resident4bookkeeping structures to the kernel. Since coreboot itself cannot boot a5device-tree-based kernel (yet), this node needs to be inserted by a6second-stage bootloader (a coreboot "payload").7 8Required properties:9 - compatible: Should be "coreboot"10 - reg: Address and length of the following two memory regions, in order:11 1.) The coreboot table. This is a list of variable-sized descriptors12 that contain various compile- and run-time generated firmware13 parameters. It is identified by the magic string "LBIO" in its first14 four bytes.15 See coreboot's src/commonlib/include/commonlib/coreboot_tables.h for16 details.17 2.) The CBMEM area. This is a downward-growing memory region used by18 coreboot to dynamically allocate data structures that remain resident.19 It may or may not include the coreboot table as one of its members. It20 is identified by a root node descriptor with the magic number21 0xc0389481 that resides in the topmost 8 bytes of the area.22 See coreboot's src/include/imd.h for details.23 24Example:25 firmware {26 ranges;27 28 coreboot {29 compatible = "coreboot";30 reg = <0xfdfea000 0x264>,31 <0xfdfea000 0x16000>;32 }33 };34