summaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-11 23:54:01 +0200
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-11 23:54:01 +0200
commit326d72f437b0a9216290ad8f10817e1e363fd813 (patch)
tree5a3732d35f0ae4e19cae33a12ac75cdf518efb3a /drivers/ide
parentfabe1510568acd5194f630dbbcf77a34610d7e9e (diff)
downloadlinux-326d72f437b0a9216290ad8f10817e1e363fd813.tar.gz
linux-326d72f437b0a9216290ad8f10817e1e363fd813.tar.bz2
linux-326d72f437b0a9216290ad8f10817e1e363fd813.zip
cs5520: don't enable VDMA in ->speedproc
There is no need to do it in cs5520_tune_chipset() (->speedproc method) since it is correctly handled by cs5520_dma_on() (->ide_dma_on method). 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/cs5520.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/ide/pci/cs5520.c b/drivers/ide/pci/cs5520.c
index a73c318ff086..e6af534a7190 100644
--- a/drivers/ide/pci/cs5520.c
+++ b/drivers/ide/pci/cs5520.c
@@ -73,7 +73,6 @@ static int cs5520_tune_chipset(ide_drive_t *drive, const u8 speed)
int pio = speed;
u8 reg;
int controller = drive->dn > 1 ? 1 : 0;
- int error;
switch(speed)
{
@@ -114,14 +113,9 @@ static int cs5520_tune_chipset(ide_drive_t *drive, const u8 speed)
reg = inb(hwif->dma_base + 0x02 + 8*controller);
reg |= 1<<((drive->dn&1)+5);
outb(reg, hwif->dma_base + 0x02 + 8*controller);
-
- error = ide_config_drive_speed(drive, speed);
- /* ATAPI is harder so leave it for now */
- if(!error && drive->media == ide_disk)
- error = hwif->ide_dma_on(drive);
- return error;
-}
+ return ide_config_drive_speed(drive, speed);
+}
static void cs5520_set_pio_mode(ide_drive_t *drive, const u8 pio)
{
@@ -177,7 +171,8 @@ static void __devinit init_hwif_cs5520(ide_hwif_t *hwif)
hwif->drives[1].autotune = 1;
return;
}
-
+
+ /* ATAPI is harder so leave it for now */
hwif->atapi_dma = 0;
hwif->ultra_mask = 0;
hwif->swdma_mask = 0;