Attention is currently required from: Fred Reitberger, Jason Glenesk, Matt DeVillier, Raul Rangel.
Felix Held has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/76933?usp=email )
Change subject: soc/amd/common/data_fabric/domain: factor out report_data_fabric_io ......................................................................
soc/amd/common/data_fabric/domain: factor out report_data_fabric_io
As a preparation to read the IO decode ranges from the data fabric registers instead of having it hard-coded, factor out the report_data_fabric_io function to report one IO producer region from add_io_regions.
Signed-off-by: Felix Held felix-coreboot@felixheld.de Change-Id: I51c3f8cd6749623f1a4bad14873d53b8a52be737 --- M src/soc/amd/common/block/data_fabric/domain.c 1 file changed, 11 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/33/76933/1
diff --git a/src/soc/amd/common/block/data_fabric/domain.c b/src/soc/amd/common/block/data_fabric/domain.c index 9f0f48c..66ad8b3 100644 --- a/src/soc/amd/common/block/data_fabric/domain.c +++ b/src/soc/amd/common/block/data_fabric/domain.c @@ -139,18 +139,23 @@ } }
+static void report_data_fabric_io(struct device *domain, unsigned int idx, + resource_t io_base, resource_t io_limit) +{ + struct resource *res; + res = new_resource(domain, idx); + res->base = io_base; + res->limit = io_limit; + res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED; +} + /* Tell the resource allocator about the usable I/O space */ static void add_io_regions(struct device *domain, unsigned int *idx) { - struct resource *res; - /* TODO: Systems with more than one PCI root need to read the data fabric registers to see which IO ranges get decoded to which PCI root. */
- res = new_resource(domain, (*idx)++); - res->base = 0; - res->limit = 0xffff; - res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED; + report_data_fabric_io(domain, (*idx)++, 0, 0xffff); }
void amd_pci_domain_read_resources(struct device *domain)