diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-26 16:25:19 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-26 16:25:19 -0400 |
commit | 0d1bad216c43bcee84cc24d1ed003c19134d2645 (patch) | |
tree | 3cdcf7592c4e1a8899cde78beb512bffa21abf77 /drivers/ide/pci/trm290.c | |
parent | 7ebe5936c214c656a1625abf9ec3b09e3d1bf34a (diff) |
ide: manage resources for PCI devices in ide_pci_enable() (take 3)
* Reserve PCI BARs 0-3 (0-1 for single port controllers) in
ide_pci_enable() and remove ide_hwif_request_regions() call
from ide_device_add_all() (also cleanup resource management
in scc_pata host driver).
* Fix handling of PCI BAR 4 in ide_pci_enable(), then cleanup
ide_iomio_dma() (+ init_hwif_trm290() in trm290 host driver)
and remove ide_release[_iomio]_dma().
v2:
* Fixup trm290 host driver.
v3:
* Because of scc_pata host driver changes we need to call
pci_request_selected_regions() also in setup_mmio_scc().
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/trm290.c')
-rw-r--r-- | drivers/ide/pci/trm290.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/ide/pci/trm290.c b/drivers/ide/pci/trm290.c index 47265030f87d..0677ab016ef8 100644 --- a/drivers/ide/pci/trm290.c +++ b/drivers/ide/pci/trm290.c | |||
@@ -257,16 +257,10 @@ static void __devinit init_hwif_trm290(ide_hwif_t *hwif) | |||
257 | printk(KERN_INFO " %s: BM-DMA at 0x%04lx-0x%04lx", | 257 | printk(KERN_INFO " %s: BM-DMA at 0x%04lx-0x%04lx", |
258 | hwif->name, hwif->dma_base, hwif->dma_base + 3); | 258 | hwif->name, hwif->dma_base, hwif->dma_base + 3); |
259 | 259 | ||
260 | if (!request_region(hwif->dma_base, 4, hwif->name)) { | ||
261 | printk(KERN_CONT " -- Error, ports in use.\n"); | ||
262 | return; | ||
263 | } | ||
264 | |||
265 | hwif->dmatable_cpu = pci_alloc_consistent(dev, PRD_ENTRIES * PRD_BYTES, | 260 | hwif->dmatable_cpu = pci_alloc_consistent(dev, PRD_ENTRIES * PRD_BYTES, |
266 | &hwif->dmatable_dma); | 261 | &hwif->dmatable_dma); |
267 | if (!hwif->dmatable_cpu) { | 262 | if (!hwif->dmatable_cpu) { |
268 | printk(KERN_CONT " -- Error, unable to allocate DMA table.\n"); | 263 | printk(KERN_CONT " -- Error, unable to allocate DMA table.\n"); |
269 | release_region(hwif->dma_base, 4); | ||
270 | return; | 264 | return; |
271 | } | 265 | } |
272 | printk(KERN_CONT "\n"); | 266 | printk(KERN_CONT "\n"); |