162306a36Sopenharmony_ciWhat: /sys/bus/coreboot 262306a36Sopenharmony_ciDate: August 2022 362306a36Sopenharmony_ciContact: Jack Rosenthal <jrosenth@chromium.org> 462306a36Sopenharmony_ciDescription: 562306a36Sopenharmony_ci The coreboot bus provides a variety of virtual devices used to 662306a36Sopenharmony_ci access data structures created by the Coreboot BIOS. 762306a36Sopenharmony_ci 862306a36Sopenharmony_ciWhat: /sys/bus/coreboot/devices/cbmem-<id> 962306a36Sopenharmony_ciDate: August 2022 1062306a36Sopenharmony_ciContact: Jack Rosenthal <jrosenth@chromium.org> 1162306a36Sopenharmony_ciDescription: 1262306a36Sopenharmony_ci CBMEM is a downwards-growing memory region created by Coreboot, 1362306a36Sopenharmony_ci and contains tagged data structures to be shared with payloads 1462306a36Sopenharmony_ci in the boot process and the OS. Each CBMEM entry is given a 1562306a36Sopenharmony_ci directory in /sys/bus/coreboot/devices based on its id. 1662306a36Sopenharmony_ci A list of ids known to Coreboot can be found in the coreboot 1762306a36Sopenharmony_ci source tree at 1862306a36Sopenharmony_ci ``src/commonlib/bsd/include/commonlib/bsd/cbmem_id.h``. 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciWhat: /sys/bus/coreboot/devices/cbmem-<id>/address 2162306a36Sopenharmony_ciDate: August 2022 2262306a36Sopenharmony_ciContact: Jack Rosenthal <jrosenth@chromium.org> 2362306a36Sopenharmony_ciDescription: 2462306a36Sopenharmony_ci This is the physical memory address that the CBMEM entry's data 2562306a36Sopenharmony_ci begins at, in hexadecimal (e.g., ``0x76ffe000``). 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciWhat: /sys/bus/coreboot/devices/cbmem-<id>/size 2862306a36Sopenharmony_ciDate: August 2022 2962306a36Sopenharmony_ciContact: Jack Rosenthal <jrosenth@chromium.org> 3062306a36Sopenharmony_ciDescription: 3162306a36Sopenharmony_ci This is the size of the CBMEM entry's data, in hexadecimal 3262306a36Sopenharmony_ci (e.g., ``0x1234``). 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciWhat: /sys/bus/coreboot/devices/cbmem-<id>/mem 3562306a36Sopenharmony_ciDate: August 2022 3662306a36Sopenharmony_ciContact: Jack Rosenthal <jrosenth@chromium.org> 3762306a36Sopenharmony_ciDescription: 3862306a36Sopenharmony_ci A file exposing read/write access to the entry's data. Note 3962306a36Sopenharmony_ci that this file does not support mmap(), as coreboot 4062306a36Sopenharmony_ci does not guarantee that the data will be page-aligned. 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci The mode of this file is 0600. While there shouldn't be 4362306a36Sopenharmony_ci anything security-sensitive contained in CBMEM, read access 4462306a36Sopenharmony_ci requires root privileges given this is exposing a small subset 4562306a36Sopenharmony_ci of physical memory. 46