From b83858af5b29ef468f732591269ce7eb471d7591 Mon Sep 17 00:00:00 2001 From: Mario Scheithauer Date: Tue, 5 Sep 2017 15:32:49 +0200 Subject: siemens/mc_apl1: Set bus master bit for on-board PCI device There is one on-board PCI device where bus master has to be enabled in PCI configuration space. As there is no need for a complete PCI driver for this device just set the bus master bit in mainboard_final(). Change-Id: I45202937eba11da3bea14fef6ebed70599804335 Signed-off-by: Mario Scheithauer Reviewed-on: https://review.coreboot.org/21405 Tested-by: build bot (Jenkins) Reviewed-by: Werner Zeh --- src/mainboard/siemens/mc_apl1/mainboard.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/mainboard/siemens/mc_apl1/mainboard.c b/src/mainboard/siemens/mc_apl1/mainboard.c index 4c90aff0fc..d8374fc2a4 100644 --- a/src/mainboard/siemens/mc_apl1/mainboard.c +++ b/src/mainboard/siemens/mc_apl1/mainboard.c @@ -15,8 +15,9 @@ */ #include -#include #include +#include +#include #include #include #include @@ -115,6 +116,8 @@ static void mainboard_init(void *chip_info) static void mainboard_final(void *chip_info) { int status; + uint16_t cmd = 0; + device_t dev = NULL; /** * Set up the DP2LVDS converter. @@ -128,6 +131,14 @@ static void mainboard_final(void *chip_info) /* Enable additional I/O decoding range on LPC for COM 3 */ lpc_open_pmio_window(0x3e8, 8); + + /* Set Master Enable for on-board PCI device. */ + dev = dev_find_device(PCI_VENDOR_ID_SIEMENS, 0x403f, 0); + if (dev) { + cmd = pci_read_config16(dev, PCI_COMMAND); + cmd |= PCI_COMMAND_MASTER; + pci_write_config16(dev, PCI_COMMAND, cmd); + } } struct chip_operations mainboard_ops = { -- cgit v1.2.3