Subrata Banik has uploaded a new patch set (#15) to the change originally created by ron minnich. ( https://review.coreboot.org/c/coreboot/+/36221 )
Change subject: Add configurable ramstage support for minimal PCI scanning ......................................................................
Add configurable ramstage support for minimal PCI scanning
This CL has changes that allow us to enable a configurable ramstage, and one change that allows us to minimize PCI scanning. Minimal scanning is a frequently requested feature.
To enable it, we add two new variables to src/Kconfig CONFIGURABLE_RAMSTAGE is the overall variable controlling other options for minimizing the ramstage.
MINIMAL_PCI_SCANNING is how we indicate we wish to enable minimal PCI scanning.
Some devices must be scanned in all cases, such as 0:0.0.
To indicate which devices we must scan, we add a new mandatory keyword to sconfig
It is used in place of on, off, or hidden, and indicates a device is enabled and mandatory. Mandatory devices are always scanned. When MINIMAL_PCI_SCANNING is enabled, ONLY mandatory devices are scanned.
We further add support in src/device/pci_device.c to manage both MINIMAL_PCI_SCANNING and mandatory devices.
Finally, to show how this works in practice, we add mandatory keywords to 3 devices on the qemu-q35.
TEST= 1. This is tested and working on the qemu-q35 target. 2. On CML-Hatch
Before CL: Total Boot time: ~685ms
After CL: Total Boot time: ~615ms
Change-Id: I2073d9f8e9297c2b02530821ebb634ea2a5c758e Signed-off-by: Ronald G. Minnich rminnich@gmail.com --- M src/Kconfig M src/device/pci_device.c M src/include/device/device.h M src/mainboard/emulation/qemu-q35/devicetree.cb M util/sconfig/lex.yy.c_shipped M util/sconfig/main.c M util/sconfig/sconfig.h M util/sconfig/sconfig.l M util/sconfig/sconfig.tab.c_shipped M util/sconfig/sconfig.tab.h_shipped M util/sconfig/sconfig.y 11 files changed, 387 insertions(+), 355 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/21/36221/15