aboutsummaryrefslogtreecommitdiff
path: root/src/devices/pci_device.c
diff options
context:
space:
mode:
authorLi-Ta Lo <ollie@lanl.gov>2005-01-11 22:48:54 +0000
committerLi-Ta Lo <ollie@lanl.gov>2005-01-11 22:48:54 +0000
commit515f6c729e0b4878884e74e21d00dbc4b66dcdd9 (patch)
tree82879fb1f10c07a85c573bca92410bdc6c874e3d /src/devices/pci_device.c
parent51990b350a03eb718f6af0890a2f9a42373106ca (diff)
works for PCI vga cards too
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1856 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/devices/pci_device.c')
-rw-r--r--src/devices/pci_device.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/devices/pci_device.c b/src/devices/pci_device.c
index 7471694737..5b038e4a8d 100644
--- a/src/devices/pci_device.c
+++ b/src/devices/pci_device.c
@@ -537,6 +537,12 @@ void pci_dev_enable_resources(struct device *dev)
void pci_bus_enable_resources(struct device *dev)
{
uint16_t ctrl;
+
+ /* enable IO in command register if there is VGA card
+ * connected with (even it does not claim IO resource) */
+ if (dev->link[0].bridge_ctrl & PCI_BRIDGE_CTL_VGA)
+ dev->command |= PCI_COMMAND_IO;
+
ctrl = pci_read_config16(dev, PCI_BRIDGE_CONTROL);
ctrl |= dev->link[0].bridge_ctrl;
ctrl |= (PCI_BRIDGE_CTL_PARITY + PCI_BRIDGE_CTL_SERR); /* error check */