1What: /sys/bus/coreboot 2Date: August 2022 3Contact: Jack Rosenthal <jrosenth@chromium.org> 4Description: 5 The coreboot bus provides a variety of virtual devices used to 6 access data structures created by the Coreboot BIOS. 7 8What: /sys/bus/coreboot/devices/cbmem-<id> 9Date: August 2022 10Contact: Jack Rosenthal <jrosenth@chromium.org> 11Description: 12 CBMEM is a downwards-growing memory region created by Coreboot, 13 and contains tagged data structures to be shared with payloads 14 in the boot process and the OS. Each CBMEM entry is given a 15 directory in /sys/bus/coreboot/devices based on its id. 16 A list of ids known to Coreboot can be found in the coreboot 17 source tree at 18 ``src/commonlib/bsd/include/commonlib/bsd/cbmem_id.h``. 19 20What: /sys/bus/coreboot/devices/cbmem-<id>/address 21Date: August 2022 22Contact: Jack Rosenthal <jrosenth@chromium.org> 23Description: 24 This is the physical memory address that the CBMEM entry's data 25 begins at, in hexadecimal (e.g., ``0x76ffe000``). 26 27What: /sys/bus/coreboot/devices/cbmem-<id>/size 28Date: August 2022 29Contact: Jack Rosenthal <jrosenth@chromium.org> 30Description: 31 This is the size of the CBMEM entry's data, in hexadecimal 32 (e.g., ``0x1234``). 33 34What: /sys/bus/coreboot/devices/cbmem-<id>/mem 35Date: August 2022 36Contact: Jack Rosenthal <jrosenth@chromium.org> 37Description: 38 A file exposing read/write access to the entry's data. Note 39 that this file does not support mmap(), as coreboot 40 does not guarantee that the data will be page-aligned. 41 42 The mode of this file is 0600. While there shouldn't be 43 anything security-sensitive contained in CBMEM, read access 44 requires root privileges given this is exposing a small subset 45 of physical memory. 46