summaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-08-01 23:46:46 +0200
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-08-01 23:46:46 +0200
commit8b6b33be3280fd776335079124ecd176e6a40797 (patch)
tree74dc598c4e2f94b38ed49c01dcde812a01f5f664 /drivers/ide
parent68aaf8150308dbf9d0e5ccd5bc05491ba575f966 (diff)
downloadblackbird-op-linux-8b6b33be3280fd776335079124ecd176e6a40797.tar.gz
blackbird-op-linux-8b6b33be3280fd776335079124ecd176e6a40797.zip
jmicron: PIO fixes
* Set transfer mode on the device in jmicron_tuneproc(), also add pio == 255 == "auto-tune" handling. * Use jmicron_tuneproc() in jmicron_config_drive_for_dma(). * Remove no longer needed config_jmicron_chipset_for_pio(). Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide')
-rw-r--r--drivers/ide/pci/jmicron.c21
1 files changed, 4 insertions, 17 deletions
diff --git a/drivers/ide/pci/jmicron.c b/drivers/ide/pci/jmicron.c
index d7ce9dd8de16..65a0ff352b98 100644
--- a/drivers/ide/pci/jmicron.c
+++ b/drivers/ide/pci/jmicron.c
@@ -83,23 +83,10 @@ static u8 __devinit ata66_jmicron(ide_hwif_t *hwif)
return ATA_CBL_PATA80;
}
-static void jmicron_tuneproc (ide_drive_t *drive, byte mode_wanted)
+static void jmicron_tuneproc(ide_drive_t *drive, u8 pio)
{
- return;
-}
-
-/**
- * config_jmicron_chipset_for_pio - set drive timings
- * @drive: drive to tune
- * @speed we want
- *
- */
-
-static void config_jmicron_chipset_for_pio (ide_drive_t *drive, byte set_speed)
-{
- u8 speed = XFER_PIO_0 + ide_get_best_pio_mode(drive, 255, 5);
- if (set_speed)
- (void) ide_config_drive_speed(drive, speed);
+ pio = ide_get_best_pio_mode(drive, pio, 5);
+ ide_config_drive_speed(drive, XFER_PIO_0 + pio);
}
/**
@@ -132,7 +119,7 @@ static int jmicron_config_drive_for_dma (ide_drive_t *drive)
if (ide_tune_dma(drive))
return 0;
- config_jmicron_chipset_for_pio(drive, 1);
+ jmicron_tuneproc(drive, 255);
return -1;
}
OpenPOWER on IntegriCloud