From 7148bc33a1e0064ca64f38e3d1e570494f1c4fb8 Mon Sep 17 00:00:00 2001 From: Bartlomiej Zolnierkiewicz Date: Sat, 17 Feb 2007 02:40:26 +0100 Subject: [PATCH] --- yaml --- r: 48828 b: refs/heads/master c: 9ef5791e1be91007951477b8ed1530ac1166a8e7 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/ide/pci/sgiioc4.c | 26 +++++++++++--------------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/[refs] b/[refs] index 15688af66745..17ac32a1f162 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d8f4469d5f2c35e0b8272f254b42737a2b8ce877 +refs/heads/master: 9ef5791e1be91007951477b8ed1530ac1166a8e7 diff --git a/trunk/drivers/ide/pci/sgiioc4.c b/trunk/drivers/ide/pci/sgiioc4.c index 083c7afe1162..290697e09e55 100644 --- a/trunk/drivers/ide/pci/sgiioc4.c +++ b/trunk/drivers/ide/pci/sgiioc4.c @@ -274,21 +274,6 @@ sgiioc4_ide_dma_end(ide_drive_t * drive) return dma_stat; } -static int -sgiioc4_ide_dma_check(ide_drive_t * drive) -{ - if (ide_config_drive_speed(drive, XFER_MW_DMA_2) != 0) { - printk(KERN_INFO - "Couldnot set %s in Multimode-2 DMA mode | " - "Drive %s using PIO instead\n", - drive->name, drive->name); - drive->using_dma = 0; - } else - drive->using_dma = 1; - - return 0; -} - static int sgiioc4_ide_dma_on(ide_drive_t * drive) { @@ -305,6 +290,17 @@ sgiioc4_ide_dma_off_quietly(ide_drive_t * drive) return HWIF(drive)->ide_dma_host_off(drive); } +static int sgiioc4_ide_dma_check(ide_drive_t *drive) +{ + /* FIXME: check for available DMA modes */ + if (ide_config_drive_speed(drive, XFER_MW_DMA_2) != 0) { + printk(KERN_WARNING "%s: couldn't set MWDMA2 mode, " + "using PIO instead\n", drive->name); + return sgiioc4_ide_dma_off_quietly(drive); + } else + return sgiioc4_ide_dma_on(drive); +} + /* returns 1 if dma irq issued, 0 otherwise */ static int sgiioc4_ide_dma_test_irq(ide_drive_t * drive)