Skip to content

Commit

Permalink
alim15x3: PIO fallback fix
Browse files Browse the repository at this point in the history
If DMA tuning fails always set the best PIO mode.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
  • Loading branch information
Bartlomiej Zolnierkiewicz committed May 5, 2007
1 parent 826a1b6 commit 072cdcb
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions drivers/ide/pci/alim15x3.c
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@ static int ali15x3_config_drive_for_dma(ide_drive_t *drive)
struct hd_driveid *id = drive->id;

if ((m5229_revision<=0x20) && (drive->media!=ide_disk))
goto no_dma_set;
goto ata_pio;

drive->init_speed = 0;

Expand All @@ -555,20 +555,19 @@ static int ali15x3_config_drive_for_dma(ide_drive_t *drive)
(id->dma_1word & hwif->swdma_mask)) {
/* Force if Capable regular DMA modes */
if (!config_chipset_for_dma(drive))
goto no_dma_set;
goto ata_pio;
}
} else if (__ide_dma_good_drive(drive) &&
(id->eide_dma_time < 150)) {
/* Consult the list of known "good" drives */
if (!config_chipset_for_dma(drive))
goto no_dma_set;
goto ata_pio;
} else {
goto ata_pio;
}
} else {
ata_pio:
hwif->tuneproc(drive, 255);
no_dma_set:
return -1;
}

Expand Down

0 comments on commit 072cdcb

Please sign in to comment.