summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/device/pci_device.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/device/pci_device.c b/src/device/pci_device.c
index f4608fc7f2..c3f356413f 100644
--- a/src/device/pci_device.c
+++ b/src/device/pci_device.c
@@ -1129,7 +1129,8 @@ struct device *pci_probe_dev(struct device *dev, struct bus *bus,
dev->class = class >> 8;
/* Architectural/System devices always need to be bus masters. */
- if ((dev->class >> 16) == PCI_BASE_CLASS_SYSTEM)
+ if ((dev->class >> 16) == PCI_BASE_CLASS_SYSTEM &&
+ CONFIG(PCI_ALLOW_BUS_MASTER_ANY_DEVICE))
dev->command |= PCI_COMMAND_MASTER;
/*