soc/intel/xeon_sp: Locate PCU by PCI device ID
commit106d7b30b93b9d5ad4826b7dc021be69458a554f
authorPatrick Rudolph <patrick.rudolph@9elements.com>
Thu, 18 Jan 2024 08:14:03 +0000 (18 09:14 +0100)
committerFelix Held <felix-coreboot@felixheld.de>
Wed, 28 Feb 2024 17:25:51 +0000 (28 17:25 +0000)
tree01785042aab757a0f5fca525f1dba467982f0250
parent3cfcffe49c720bd5152d3a26ec744adbc4f12477
soc/intel/xeon_sp: Locate PCU by PCI device ID

Instead of manually crafting S:B:D:F numbers for each PCI device
search for the devices by PCI vendor and device ID.

This adds PCI multi-segment support without any further code
modifications, since the correct PCI segment will be stored in the
devicetree.

Intel Document-ID: 735086
Intel Document-ID: 612246

Tested: On SPR 4S all PCU on all 4 sockets could be found and locked.

Change-Id: I06694715cba76b101165f1cef66d161b0f896b26
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80093
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
src/soc/intel/xeon_sp/cpx/chip.c
src/soc/intel/xeon_sp/cpx/include/soc/pci_devs.h
src/soc/intel/xeon_sp/skx/include/soc/pci_devs.h
src/soc/intel/xeon_sp/skx/soc_util.c
src/soc/intel/xeon_sp/spr/chip.c
src/soc/intel/xeon_sp/spr/include/soc/pci_devs.h