diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-16 16:29:55 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-16 16:29:55 -0400 |
commit | 0ae2e178652753ae1797d407755a3505f7c1d2a7 (patch) | |
tree | fa725edcfb4b9752ebf2aa49a3e42e158537d4ed /drivers/ide/pci/cmd64x.c | |
parent | b8b739d3361c16773a30fe5c0360336bbc19f435 (diff) |
ide: remove ->ide_dma_check (take 2)
* Add IDE_HFLAG_TRUST_BIOS_FOR_DMA host flag for host drivers that depend
on BIOS for programming device/controller for DMA. Set it in cy82c693,
generic, ns87415, opti621 and trm290 host drivers.
* Add IDE_HFLAG_VDMA host flag for host drivers using VDMA. Set it in cs5520
host driver.
* Teach ide_tune_dma() about IDE_HFLAG_TRUST_BIOS_FOR_DMA flag.
* Add generic ide_dma_check() helper and remove all open coded ->ide_dma_check
implementations. Fix all places checking for presence of ->ide_dma_check
hook to check for ->ide_dma_on instead.
* Remove no longer needed code from config_drive_for_dma().
* Make ide_tune_dma() static.
v2:
* Fix config_drive_for_dma() return values.
* Fix ide-dma.c build for CONFIG_BLK_DEV_IDEDMA_PCI=n by adding
dummy config_drive_for_dma() inline.
* Fix IDE_HFLAG_TRUST_BIOS_FOR_DMA handling in ide_dma_check().
* Fix init_hwif_it8213() comment.
There should be no functionality changes caused by this patch.
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/cmd64x.c')
-rw-r--r-- | drivers/ide/pci/cmd64x.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/drivers/ide/pci/cmd64x.c b/drivers/ide/pci/cmd64x.c index 52790cb6bce4..5f421deb3f3e 100644 --- a/drivers/ide/pci/cmd64x.c +++ b/drivers/ide/pci/cmd64x.c | |||
@@ -330,16 +330,6 @@ static void cmd64x_set_dma_mode(ide_drive_t *drive, const u8 speed) | |||
330 | (void) pci_write_config_byte(dev, pciU, regU); | 330 | (void) pci_write_config_byte(dev, pciU, regU); |
331 | } | 331 | } |
332 | 332 | ||
333 | static int cmd64x_config_drive_for_dma (ide_drive_t *drive) | ||
334 | { | ||
335 | if (ide_tune_dma(drive)) | ||
336 | return 0; | ||
337 | |||
338 | ide_set_max_pio(drive); | ||
339 | |||
340 | return -1; | ||
341 | } | ||
342 | |||
343 | static int cmd648_ide_dma_end (ide_drive_t *drive) | 333 | static int cmd648_ide_dma_end (ide_drive_t *drive) |
344 | { | 334 | { |
345 | ide_hwif_t *hwif = HWIF(drive); | 335 | ide_hwif_t *hwif = HWIF(drive); |
@@ -546,8 +536,6 @@ static void __devinit init_hwif_cmd64x(ide_hwif_t *hwif) | |||
546 | if (dev->device == PCI_DEVICE_ID_CMD_646 && rev < 5) | 536 | if (dev->device == PCI_DEVICE_ID_CMD_646 && rev < 5) |
547 | hwif->ultra_mask = 0x00; | 537 | hwif->ultra_mask = 0x00; |
548 | 538 | ||
549 | hwif->ide_dma_check = &cmd64x_config_drive_for_dma; | ||
550 | |||
551 | if (hwif->cbl != ATA_CBL_PATA40_SHORT) | 539 | if (hwif->cbl != ATA_CBL_PATA40_SHORT) |
552 | hwif->cbl = ata66_cmd64x(hwif); | 540 | hwif->cbl = ata66_cmd64x(hwif); |
553 | 541 | ||