diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2009-09-25 14:58:00 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2009-09-25 14:58:00 +0000 |
| commit | b10d205de26db1a2ac02eb9593d029a980dad02a (patch) | |
| tree | 3b5ea9f874912e012497aab3294e71550aa51e2a /sys/dev/pci | |
| parent | ad0074901664905974bfc577f9f2b1ee642afa5a (diff) | |
Notes
Diffstat (limited to 'sys/dev/pci')
| -rw-r--r-- | sys/dev/pci/pci.c | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index 0b7b26700c59..47aedbde0dd5 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -2149,62 +2149,38 @@ pci_disable_busmaster_method(device_t dev, device_t child) int pci_enable_io_method(device_t dev, device_t child, int space) { - uint16_t command; uint16_t bit; - char *error; - - bit = 0; - error = NULL; switch(space) { case SYS_RES_IOPORT: bit = PCIM_CMD_PORTEN; - error = "port"; break; case SYS_RES_MEMORY: bit = PCIM_CMD_MEMEN; - error = "memory"; break; default: return (EINVAL); } pci_set_command_bit(dev, child, bit); - /* Some devices seem to need a brief stall here, what do to? */ - command = PCI_READ_CONFIG(dev, child, PCIR_COMMAND, 2); - if (command & bit) - return (0); - device_printf(child, "failed to enable %s mapping!\n", error); - return (ENXIO); + return (0); } int pci_disable_io_method(device_t dev, device_t child, int space) { - uint16_t command; uint16_t bit; - char *error; - - bit = 0; - error = NULL; switch(space) { case SYS_RES_IOPORT: bit = PCIM_CMD_PORTEN; - error = "port"; break; case SYS_RES_MEMORY: bit = PCIM_CMD_MEMEN; - error = "memory"; break; default: return (EINVAL); } pci_clear_command_bit(dev, child, bit); - command = PCI_READ_CONFIG(dev, child, PCIR_COMMAND, 2); - if (command & bit) { - device_printf(child, "failed to disable %s mapping!\n", error); - return (ENXIO); - } return (0); } |
