summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/device/Kconfig11
-rw-r--r--src/include/device/pci.h2
2 files changed, 12 insertions, 1 deletions
diff --git a/src/device/Kconfig b/src/device/Kconfig
index cbe970f17034..777f3f50d3ec 100644
--- a/src/device/Kconfig
+++ b/src/device/Kconfig
@@ -532,6 +532,17 @@ config PCI_ALLOW_BUS_MASTER
instance, for libpayload based payloads as the drivers don't enable
bus mastering for PCI bridges.
+if PCI_ALLOW_BUS_MASTER
+
+config PCI_ALLOW_BUS_MASTER_ANY_DEVICE
+ bool "Any devices"
+ default y
+ help
+ Allow coreboot to enable PCI bus mastering for any device. The actual
+ selection of devices depends on the various PCI drivers in coreboot.
+
+endif # PCI_ALLOW_BUS_MASTER
+
endif # PCI
if PCIEXP_PLUGIN_SUPPORT
diff --git a/src/include/device/pci.h b/src/include/device/pci.h
index 58f5904996a8..777f0303552e 100644
--- a/src/include/device/pci.h
+++ b/src/include/device/pci.h
@@ -144,7 +144,7 @@ void pci_dev_request_bus_master(pci_devfn_t dev)
void pci_dev_request_bus_master(struct device *dev)
#endif /* ENV_PCI_SIMPLE_DEVICE */
{
- if (CONFIG(PCI_ALLOW_BUS_MASTER))
+ if (CONFIG(PCI_ALLOW_BUS_MASTER_ANY_DEVICE))
pci_or_config16(dev, PCI_COMMAND, PCI_COMMAND_MASTER);
}