[PATCH 15/16] ide: remove ide_auto_reduce_xfer()

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <linux-ide@...>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@...>, <linux-kernel@...>
Date: Monday, January 21, 2008 - 7:32 pm

While at it:

* Remove needless '!drive->crc_count' check.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
 drivers/ide/ide-iops.c |   41 +++++++++++++----------------------------
 1 file changed, 13 insertions(+), 28 deletions(-)

Index: b/drivers/ide/ide-iops.c
===================================================================
--- a/drivers/ide/ide-iops.c
+++ b/drivers/ide/ide-iops.c
@@ -612,33 +612,6 @@ no_80w:
 	return 0;
 }
 
-#ifdef CONFIG_BLK_DEV_IDEDMA
-static u8 ide_auto_reduce_xfer (ide_drive_t *drive)
-{
-	if (!drive->crc_count)
-		return drive->current_speed;
-	drive->crc_count = 0;
-
-	switch(drive->current_speed) {
-		case XFER_UDMA_7:	return XFER_UDMA_6;
-		case XFER_UDMA_6:	return XFER_UDMA_5;
-		case XFER_UDMA_5:	return XFER_UDMA_4;
-		case XFER_UDMA_4:	return XFER_UDMA_3;
-		case XFER_UDMA_3:	return XFER_UDMA_2;
-		case XFER_UDMA_2:	return XFER_UDMA_1;
-		case XFER_UDMA_1:	return XFER_UDMA_0;
-			/*
-			 * OOPS we do not goto non Ultra DMA modes
-			 * without iCRC's available we force
-			 * the system to PIO and make the user
-			 * invoke the ATA-1 ATA-2 DMA modes.
-			 */
-		case XFER_UDMA_0:
-		default:		return XFER_PIO_4;
-	}
-}
-#endif /* CONFIG_BLK_DEV_IDEDMA */
-
 int ide_driveid_update(ide_drive_t *drive)
 {
 	ide_hwif_t *hwif = drive->hwif;
@@ -968,8 +941,20 @@ static ide_startstop_t reset_pollfunc (i
 static void check_dma_crc(ide_drive_t *drive)
 {
 #ifdef CONFIG_BLK_DEV_IDEDMA
+	u8 mode;
+
 	ide_dma_off_quietly(drive);
-	ide_set_xfer_rate(drive, ide_auto_reduce_xfer(drive));
+	drive->crc_count = 0;
+	mode = drive->current_speed;
+	/*
+	 * Don't try non Ultra-DMA modes without iCRC's.  Force the
+	 * device to PIO and make the user enable SWDMA/MWDMA modes.
+	 */
+	if (mode > XFER_UDMA_0 && mode <= XFER_UDMA_7)
+		mode--;
+	else
+		mode = XFER_PIO_4;
+	ide_set_xfer_rate(drive, mode);
 	if (drive->current_speed >= XFER_SW_DMA_0)
 		ide_dma_on(drive);
 #endif
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 00/16] ide: various fixes/cleanups, Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:30 pm)
[PATCH 16/16] ide: move check_dma_crc() to ide-dma.c, Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:32 pm)
[PATCH 15/16] ide: remove ide_auto_reduce_xfer(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:32 pm)
Re: [PATCH 15/16] ide: remove ide_auto_reduce_xfer(), Sergei Shtylyov, (Tue Jan 22, 12:39 pm)
[PATCH 14/16] ide: move drive-&gt;crc_count check out from c..., Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:32 pm)
[PATCH 13/16] ide: remove ide_ata66_check(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:32 pm)
Re: [PATCH 13/16] ide: remove ide_ata66_check(), Sergei Shtylyov, (Tue Jan 22, 12:31 pm)
[PATCH 12/16] ide: remove set_transfer(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
Re: [PATCH 12/16] ide: remove set_transfer(), Sergei Shtylyov, (Tue Jan 22, 10:24 am)
[PATCH 11/16] ide: unexport SELECT_DRIVE(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
Re: [PATCH 11/16] ide: unexport SELECT_DRIVE(), Sergei Shtylyov, (Tue Jan 22, 12:28 pm)
[PATCH 10/16] ide: use __ide_set_handler() in ide_execute_co..., Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 09/16] ide: remove SATA_*_REG macros, Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 08/16] ide: remove -&gt;nice0 and -&gt;nice2 fields f..., Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 07/16] ide: convert -&gt;straight8 field in ide_hwif_..., Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 06/16] ide: remove unused -&gt;auto_poll field from i..., Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 05/16] ide-probe: remove needless Status register reads, Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
[PATCH 04/16] ide-cris: use ide_execute_command(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:31 pm)
Re: [PATCH 04/16] ide-cris: use ide_execute_command(), Sergei Shtylyov, (Tue Jan 22, 10:34 am)
[PATCH 03/16] trm290: use ide_execute_command(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:30 pm)
Re: [PATCH 03/16] trm290: use ide_execute_command(), Sergei Shtylyov, (Tue Jan 22, 10:32 am)
[PATCH 02/16] ide-scsi: use ide_execute_command(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:30 pm)
Re: [PATCH 02/16] ide-scsi: use ide_execute_command(), Sergei Shtylyov, (Tue Jan 22, 10:32 am)
[PATCH 01/16] ide-tape: use ide_execute_command(), Bartlomiej Zolnierkiewicz..., (Mon Jan 21, 7:30 pm)
Re: [PATCH 01/16] ide-tape: use ide_execute_command(), Sergei Shtylyov, (Tue Jan 22, 10:32 am)