Aaron Durbin has uploaded this change for review.

View Change

device: avoid fixed resources hanging off pci domain device

Some chipsets are adding resources to the pci domain device. As
such the previous code wasn't culling the address space correctly
and the fixed resources were not visible.

Quick fix is avoid fixed resources starting from root device.

Change-Id: I4951aabd9775bc09143aef324f6b8dcf686fbe48
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
---
M src/device/device.c
1 file changed, 4 insertions(+), 1 deletion(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/63/41363/1
diff --git a/src/device/device.c b/src/device/device.c
index 633346e..d9aea92 100644
--- a/src/device/device.c
+++ b/src/device/device.c
@@ -922,8 +922,11 @@
res->gran, res->limit);

if (dev->path.type == DEVICE_PATH_DOMAIN) {
+ /* Some chipsets are hanging fixed resources off the domain device itself. Therefore,
+ * constrain the domain resources based off the root device. */
+ const struct device *root = &dev_root;
initialize_domain_memranges(ranges, res, type);
- constrain_domain_resources(dev->link_list, ranges, type);
+ constrain_domain_resources(root->link_list, ranges, type);
} else {
initialize_bridge_memranges(ranges, res, type);
}

To view, visit change 41363. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I4951aabd9775bc09143aef324f6b8dcf686fbe48
Gerrit-Change-Number: 41363
Gerrit-PatchSet: 1
Gerrit-Owner: Aaron Durbin <adurbin@chromium.org>
Gerrit-MessageType: newchange