--- /dev/null
+COREBOOT firmware information
+
+The device tree node to communicate the location of coreboot's memory-resident
+bookkeeping structures to the kernel. Since coreboot itself cannot boot a
+device-tree-based kernel (yet), this node needs to be inserted by a
+second-stage bootloader (a coreboot "payload").
+
+Required properties:
+ - compatible: Should be "coreboot"
+ - reg: Address and length of the following two memory regions, in order:
+       1.) The coreboot table. This is a list of variable-sized descriptors
+       that contain various compile- and run-time generated firmware
+       parameters. It is identified by the magic string "LBIO" in its first
+       four bytes.
+       See coreboot's src/commonlib/include/commonlib/coreboot_tables.h for
+       details.
+       2.) The CBMEM area. This is a downward-growing memory region used by
+       coreboot to dynamically allocate data structures that remain resident.
+       It may or may not include the coreboot table as one of its members. It
+       is identified by a root node descriptor with the magic number
+       0xc0389481 that resides in the topmost 8 bytes of the area.
+       See coreboot's src/include/imd.h for details.
+
+Example:
+       firmware {
+               ranges;
+
+               coreboot {
+                       compatible = "coreboot";
+                       reg = <0xfdfea000 0x264>,
+                             <0xfdfea000 0x16000>;
+               }
+       };