cpu/x86/smm/pci_resource_store: Store DEV/VEN ID

Allow SMM to verify the list of provided PCI devices by comparing
the device and vendor ID for each PCI device.

Change-Id: I7086fa450fcb117ef8767c199c30462c1ab1e1b6
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80245
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
diff --git a/src/cpu/x86/smm/pci_resource_store.c b/src/cpu/x86/smm/pci_resource_store.c
index 56bb766..f1d3e28 100644
--- a/src/cpu/x86/smm/pci_resource_store.c
+++ b/src/cpu/x86/smm/pci_resource_store.c
@@ -34,6 +34,8 @@
 		slots[i_slot].pci_addr = pci_addr;
 		slots[i_slot].class_device = PCI_CLASS_GET_DEVICE(devices[i_dev]->class);
 		slots[i_slot].class_prog = PCI_CLASS_GET_PROG(devices[i_dev]->class);
+		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)
diff --git a/src/include/cpu/x86/smm.h b/src/include/cpu/x86/smm.h
index dfb27cd..beb88fa 100644
--- a/src/include/cpu/x86/smm.h
+++ b/src/include/cpu/x86/smm.h
@@ -73,6 +73,8 @@
 
 struct smm_pci_resource_info {
 	pci_devfn_t pci_addr;
+	uint16_t vendor_id;
+	uint16_t device_id;
 	uint16_t class_device;
 	uint8_t class_prog;
 	struct resource resources[SMM_PCI_RESOURCE_STORE_NUM_RESOURCES];