ide: remove ide_dma_enable()
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)
* check ->speedproc return value in ide_tune_dma()
* use ide_tune_dma() in cmd64x/cs5530/sc1200/siimage/sl82c105/scc_pata drivers
* remove no longer needed ide_dma_enable()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-dma.c
drivers/ide/ide-lib.c
drivers/ide/pci/cmd64x.c
drivers/ide/pci/cs5530.c
drivers/ide/pci/sc1200.c
drivers/ide/pci/scc_pata.c
drivers/ide/pci/siimage.c
drivers/ide/pci/sl82c105.c
include/linux/ide.h

index 5fe85191d49c1f05cffc34aeb429dbbb54971f80..de33e6f88f171d57433cf732d0e9be53c008cbf2 100644 (file)
@@ -792,9 +792,10 @@ int ide_tune_dma(ide_drive_t *drive)
        if (!speed)
                return 0;
 
-       drive->hwif->speedproc(drive, speed);
+       if (drive->hwif->speedproc(drive, speed))
+               return 0;
 
-       return ide_dma_enable(drive);
+       return 1;
 }
 
 EXPORT_SYMBOL_GPL(ide_tune_dma);
index 3be3c69383f2e1ec256f0c19a77dfdcfe071e5b1..074bb32a4a406ee2cc54a421c26849129c54adff 100644 (file)
@@ -111,18 +111,6 @@ u8 ide_rate_filter(ide_drive_t *drive, u8 speed)
 
 EXPORT_SYMBOL(ide_rate_filter);
 
-int ide_dma_enable (ide_drive_t *drive)
-{
-       ide_hwif_t *hwif        = HWIF(drive);
-       struct hd_driveid *id   = drive->id;
-
-       return ((int)   ((((id->dma_ultra >> 8) & hwif->ultra_mask) ||
-                         ((id->dma_mword >> 8) & hwif->mwdma_mask) ||
-                         ((id->dma_1word >> 8) & hwif->swdma_mask)) ? 1 : 0));
-}
-
-EXPORT_SYMBOL(ide_dma_enable);
-
 int ide_use_fast_pio(ide_drive_t *drive)
 {
        struct hd_driveid *id = drive->id;
index 61ea96b5555c1636f6ffc22fad657fe40224e8d3..7c57dc696f5206d9b4d4f26e0d185e874f2fd1a3 100644 (file)
@@ -352,22 +352,9 @@ static int cmd64x_tune_chipset (ide_drive_t *drive, u8 speed)
        return ide_config_drive_speed(drive, speed);
 }
 
-static int config_chipset_for_dma (ide_drive_t *drive)
-{
-       u8 speed = ide_max_dma_mode(drive);
-
-       if (!speed)
-               return 0;
-
-       if (cmd64x_tune_chipset(drive, speed))
-               return 0;
-
-       return ide_dma_enable(drive);
-}
-
 static int cmd64x_config_drive_for_dma (ide_drive_t *drive)
 {
-       if (ide_use_dma(drive) && config_chipset_for_dma(drive))
+       if (ide_tune_dma(drive))
                return 0;
 
        if (ide_use_fast_pio(drive))
index aacb79b4a9cd0d4357fb062d38b268c37b56a481..1eec1f308d16f26955deb92a71588dd079cbd194 100644 (file)
@@ -137,12 +137,8 @@ out:
 
 static int cs5530_config_dma(ide_drive_t *drive)
 {
-       if (ide_use_dma(drive)) {
-               u8 mode = ide_max_dma_mode(drive);
-
-               if (mode && drive->hwif->speedproc(drive, mode) == 0)
-                       return 0;
-       }
+       if (ide_tune_dma(drive))
+               return 0;
 
        return 1;
 }
index c989fd90f377f0a5ee2c3b26bf5f2d841dbea901..523363c93794d72b644286672fe9d7a01028f8dc 100644 (file)
@@ -240,12 +240,8 @@ static int sc1200_tune_chipset(ide_drive_t *drive, u8 mode)
  */
 static int sc1200_config_dma (ide_drive_t *drive)
 {
-       if (ide_use_dma(drive)) {
-               u8 mode = ide_max_dma_mode(drive);
-
-               if (mode && drive->hwif->speedproc(drive, mode) == 0)
-                       return 0;
-       }
+       if (ide_tune_dma(drive))
+               return 0;
 
        return 1;
 }
index cbf936325355d65fdc5c2357bdd9a1832e50346e..55bc0a32e34f9d1b8781bef98a34461cce96ade8 100644 (file)
@@ -321,26 +321,6 @@ static int scc_tune_chipset(ide_drive_t *drive, byte xferspeed)
        return ide_config_drive_speed(drive, speed);
 }
 
-/**
- *     scc_config_chipset_for_dma      -       configure for DMA
- *     @drive: drive to configure
- *
- *     Called by scc_config_drive_for_dma().
- */
-
-static int scc_config_chipset_for_dma(ide_drive_t *drive)
-{
-       u8 speed = ide_max_dma_mode(drive);
-
-       if (!speed)
-               return 0;
-
-       if (scc_tune_chipset(drive, speed))
-               return 0;
-
-       return ide_dma_enable(drive);
-}
-
 /**
  *     scc_configure_drive_for_dma     -       set up for DMA transfers
  *     @drive: drive we are going to set up
@@ -354,7 +334,7 @@ static int scc_config_chipset_for_dma(ide_drive_t *drive)
 
 static int scc_config_drive_for_dma(ide_drive_t *drive)
 {
-       if (ide_use_dma(drive) && scc_config_chipset_for_dma(drive))
+       if (ide_tune_dma(drive))
                return 0;
 
        if (ide_use_fast_pio(drive))
index d09e74c2996ed67fe54bfd0b2f471bbda83821c9..1a4444e7226aa840093e39779bc192eaed8d728f 100644 (file)
@@ -374,28 +374,6 @@ static int siimage_tune_chipset (ide_drive_t *drive, byte xferspeed)
        return (ide_config_drive_speed(drive, speed));
 }
 
-/**
- *     config_chipset_for_dma  -       configure for DMA
- *     @drive: drive to configure
- *
- *     Called by the IDE layer when it wants the timings set up.
- *     For the CMD680 we also need to set up the PIO timings and
- *     enable DMA.
- */
-static int config_chipset_for_dma (ide_drive_t *drive)
-{
-       u8 speed = ide_max_dma_mode(drive);
-
-       if (!speed)
-               return 0;
-
-       if (siimage_tune_chipset(drive, speed))
-               return 0;
-
-       return ide_dma_enable(drive);
-}
-
 /**
  *     siimage_configure_drive_for_dma -       set up for DMA transfers
  *     @drive: drive we are going to set up
@@ -408,7 +386,7 @@ static int config_chipset_for_dma (ide_drive_t *drive)
  
 static int siimage_config_drive_for_dma (ide_drive_t *drive)
 {
-       if (ide_use_dma(drive) && config_chipset_for_dma(drive))
+       if (ide_tune_dma(drive))
                return 0;
 
        if (ide_use_fast_pio(drive))
index 3d7759c361ff6a396516a28c312715b1ea95c92a..ac1ec170fd26a84d068abdd4f5a9f83cdbe50fc2 100644 (file)
@@ -158,21 +158,6 @@ static int sl82c105_tune_chipset(ide_drive_t *drive, u8 speed)
        return ide_config_drive_speed(drive, speed);
 }
 
-/*
- * Configure the drive for DMA.
- */
-static int config_for_dma(ide_drive_t *drive)
-{
-       u8 speed = ide_max_dma_mode(drive);
-
-       DBG(("config_for_dma(drive:%s)\n", drive->name));
-
-       if (!speed || sl82c105_tune_chipset(drive, speed))
-               return 0;
-
-       return ide_dma_enable(drive);
-}
-
 /*
  * Check to see if the drive and chipset are capable of DMA mode.
  */
@@ -180,7 +165,7 @@ static int sl82c105_ide_dma_check(ide_drive_t *drive)
 {
        DBG(("sl82c105_ide_dma_check(drive:%s)\n", drive->name));
 
-       if (ide_use_dma(drive) && config_for_dma(drive))
+       if (ide_tune_dma(drive))
                return 0;
 
        return -1;
index df4e6a510310e43b27dac289ccbbc37fe346e133..be789613007d34f6add1d91dc348b4b221883c9c 100644 (file)
@@ -1357,7 +1357,6 @@ static inline void ide_set_hwifdata (ide_hwif_t * hwif, void *data)
 
 /* ide-lib.c */
 u8 ide_rate_filter(ide_drive_t *, u8);
-extern int ide_dma_enable(ide_drive_t *drive);
 extern char *ide_xfer_verbose(u8 xfer_rate);
 extern void ide_toggle_bounce(ide_drive_t *drive, int on);
 extern int ide_set_xfer_rate(ide_drive_t *drive, u8 rate);