Attention is currently required from: Marc Jones, Nico Huber, Jonathan Zhang, Philipp Deppenwiese, Tim Wawrzynczak, Subrata Banik, Aaron Durbin, Patrick Rudolph, Peter Tsung Ho Wu, Ron Minnich. Hello Marc Jones, Nico Huber, Philipp Deppenwiese, Tim Wawrzynczak, Subrata Banik, Angel Pons, Aaron Durbin, Patrick Rudolph, Peter Tsung Ho Wu, Ron Minnich,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/52585
to look at the new patch set (#2).
Change subject: lib: set up specific purpose memory as LB_MEM_SOFT_RESERVED ......................................................................
lib: set up specific purpose memory as LB_MEM_SOFT_RESERVED
CXL (Compute Express Link) [1] is a cache-coherent interconnect standard for processors, memory expansion and accelerators.
CXL memory is provided through CXL device which is connected through CXL/PCIe link, while regular system memory is provided through DIMMs plugged into DIMM slots which are connected to memory controllers of processor.
With CXL memory, the server's memory capacity is increased. CXL memory is in its own NUMA domain, with longer latency and higher bandwidth, comparing to system memory.
Host firmware presents CXL memory to OS as specific purpose memory. Linux kernel dax driver provides direct access to differntiated memory. In particular, hmem dax driver provides direct access to specific purpose memory.
Specific purpoose memory needs to be represented in e820 table as soft reserved, as described in [1].
Add IORESOURCE_SOFT_RESERVE resource property to indicate (memory) resource that needs to be soft reserved.
Add soft_reserved_ram_resource macro to allow soc/mb code to add memory resource as soft reserved.
[1] https://www.computeexpresslink.org/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v...
Change-Id: Ie70795bcb8c97e9dd5fb772adc060e1606f9bab0 --- M src/commonlib/include/commonlib/coreboot_tables.h M src/include/bootmem.h M src/include/device/device.h M src/include/device/resource.h M src/lib/bootmem.c 5 files changed, 13 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/85/52585/2