aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ppc/scc_pata.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ppc/scc_pata.c')
-rw-r--r--drivers/ide/ppc/scc_pata.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/ide/ppc/scc_pata.c b/drivers/ide/ppc/scc_pata.c
index 65ad8ab34598..0ab26ea5a35a 100644
--- a/drivers/ide/ppc/scc_pata.c
+++ b/drivers/ide/ppc/scc_pata.c
@@ -383,16 +383,11 @@ static int scc_config_chipset_for_dma(ide_drive_t *drive)
383static int scc_config_drive_for_dma(ide_drive_t *drive) 383static int scc_config_drive_for_dma(ide_drive_t *drive)
384{ 384{
385 ide_hwif_t *hwif = HWIF(drive); 385 ide_hwif_t *hwif = HWIF(drive);
386 struct hd_driveid *id = drive->id;
387 386
388 if ((id->capability & 1) != 0 && drive->autodma) { 387 if (ide_use_dma(drive) && scc_config_chipset_for_dma(drive))
389 if (ide_use_dma(drive)) { 388 return hwif->ide_dma_on(drive);
390 if (scc_config_chipset_for_dma(drive)) 389
391 return hwif->ide_dma_on(drive); 390 if (ide_use_fast_pio(drive)) {
392 }
393 goto fast_ata_pio;
394 } else if ((id->capability & 8) || (id->field_valid & 2)) {
395 fast_ata_pio:
396 hwif->tuneproc(drive, 4); 391 hwif->tuneproc(drive, 4);
397 hwif->ide_dma_off_quietly(drive); 392 hwif->ide_dma_off_quietly(drive);
398 } 393 }