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