diff options
author | Felix Held <felix-coreboot@felixheld.de> | 2024-01-11 22:26:18 +0100 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2024-01-16 22:59:55 +0000 |
commit | 3b5b66d82954e026a91a1eff833fa7f652fed629 (patch) | |
tree | c7ff2cb87807e204d6f9e04e1cae14516eae0801 /src/arch | |
parent | 090ea7ab8fceae54488620160aa95da4292d663f (diff) |
device: Add support for multiple PCI segment groups
Add initial support for multiple PCI segment groups. Instead of
modifying secondary in the bus struct introduce a new segment_group
struct element and keep existing common code.
Since all platforms currently only use 1 segment this is not a
functional change. On platforms that support more than 1 segment the
segment has to be set when creating the PCI domain.
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: Ied3313c41896362dd989ee2ab1b1bcdced840aa8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/79927
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/x86/mpspec.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/arch/x86/mpspec.c b/src/arch/x86/mpspec.c index 64712c7800..3b4c8ad529 100644 --- a/src/arch/x86/mpspec.c +++ b/src/arch/x86/mpspec.c @@ -8,11 +8,16 @@ #include <cpu/x86/lapic.h> #include <device/device.h> #include <device/path.h> +#include <device/pci_def.h> #include <device/pci_ids.h> #include <identity.h> #include <stdint.h> #include <string.h> +#if CONFIG(ECAM_MMCONF_SUPPORT) && PCI_SEGMENT_GROUP_COUNT > 1 +#error "MPTable doesn't support systems with multiple PCI segment groups" +#endif + /* Initialize the specified "mc" struct with initial values. */ void mptable_init(struct mp_config_table *mc) { |