Browse Source

[pci] Enable memory cycles in adjust_pci_device()

adjust_pci_device() has historically enabled bus-mastering and I/O
cycles, but has never previously needed to enable memory cycles.  Some
EFI systems seem not to enable memory cycles by default, so add that
to the list of PCI command register bits that we force on.
tags/v0.9.7
Michael Brown 16 years ago
parent
commit
1941c933f8
1 changed files with 2 additions and 1 deletions
  1. 2
    1
      src/drivers/bus/pci.c

+ 2
- 1
src/drivers/bus/pci.c View File

148
 	unsigned char pci_latency;
148
 	unsigned char pci_latency;
149
 
149
 
150
 	pci_read_config_word ( pci, PCI_COMMAND, &pci_command );
150
 	pci_read_config_word ( pci, PCI_COMMAND, &pci_command );
151
-	new_command = pci_command | PCI_COMMAND_MASTER | PCI_COMMAND_IO;
151
+	new_command = ( pci_command | PCI_COMMAND_MASTER |
152
+			PCI_COMMAND_MEM | PCI_COMMAND_IO );
152
 	if ( pci_command != new_command ) {
153
 	if ( pci_command != new_command ) {
153
 		DBG ( "PCI BIOS has not enabled device %02x:%02x.%x! "
154
 		DBG ( "PCI BIOS has not enabled device %02x:%02x.%x! "
154
 		      "Updating PCI command %04x->%04x\n", pci->bus,
155
 		      "Updating PCI command %04x->%04x\n", pci->bus,

Loading…
Cancel
Save