From 0c5b6320d4b55b6ca49e94883a45e05742a266a5 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 29 Jan 2024 15:39:54 +0100 Subject: [PATCH] cpu/x86/smm/pci_resource_store: Allow devices with no resources When a device with no resource is passed it will keep overwriting the current slot. Remove the conditional and allow a PCI device to not have any resources. This is particular useful for the next commits that makes use of the PCI resource store to pass UBOX devices to SMM that allow to lock-down SMM from within an SMI handler. Those devices do not have any resources and cannot be hardcoded in SMM as their PCI segment group and bus number varies depending on socket count, CPU discovery and configuration. Change-Id: I1a1b5944c97da5be6b9794c653b5159683f492e5 Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/c/coreboot/+/80246 Reviewed-by: Arthur Heymans Tested-by: build bot (Jenkins) Reviewed-by: Martin L Roth --- src/cpu/x86/smm/pci_resource_store.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/cpu/x86/smm/pci_resource_store.c b/src/cpu/x86/smm/pci_resource_store.c index f1d3e28d03..b1e61a9497 100644 --- a/src/cpu/x86/smm/pci_resource_store.c +++ b/src/cpu/x86/smm/pci_resource_store.c @@ -37,10 +37,6 @@ bool smm_pci_resource_store_fill_resources(struct smm_pci_resource_info *slots, slots[i_slot].vendor_id = devices[i_dev]->vendor; slots[i_slot].device_id = devices[i_dev]->device; - /* Use the resource list to get our BARs. */ - if (!devices[i_dev]->resource_list) - continue; - size_t i_res = 0; for (const struct resource *res = devices[i_dev]->resource_list; res != NULL; res = res->next) {