Re: [PATCH 3/13] siimage: fix wrong ->swdma_mask

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

Bartlomiej Zolnierkiewicz wrote:

[PATCH] siimage: fix wrong ->swdma_mask

This driver doesn't support SWDMA so use the correct ->swdma_mask.

While at it:

* no need to call config_chipset_for_pio() in config_chipset_for_dma(),
  if DMA is not available config_chipset_for_pio() will be called
  by siimage_config_drive_for_dma() and if DMA is available
  config_siimage_chipset_for_pio() will be called by siimage_tune_chipset()

Ugh, this driver has such a messy code PIO-wise! There seems to be completely no point in calling config_siimage_chipset_for_pio() from siimage_tune_chipset(). Not mentioning that tuneproc() method fails to actually control IORDY (it only twiddles IORDY bits for taskfile access). Ah, and tuneproc() fails to set the drive's own mode (as usual)... :-) I was going to post patches but then figured out that we don't actually support this driver, so the priority has significatly dropped. :-)

* remove needless config_chipset_for_pio() wrapper

* bump driver version

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
---

 drivers/ide/pci/siimage.c |   12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

Index: b/drivers/ide/pci/siimage.c
===================================================================
--- a/drivers/ide/pci/siimage.c
+++ b/drivers/ide/pci/siimage.c
@@ -1,5 +1,5 @@
 /*
- * linux/drivers/ide/pci/siimage.c		Version 1.11	Jan 27, 2007
+ * linux/drivers/ide/pci/siimage.c		Version 1.12	Mar 10 2007
  *
  * Copyright (C) 2001-2002	Andre Hedrick <andre@xxxxxxxxxxxxx>
  * Copyright (C) 2003		Red Hat <alan@xxxxxxxxxx>
@@ -283,11 +283,6 @@ static void config_siimage_chipset_for_p
 		(void) ide_config_drive_speed(drive, speed);
 }
-static void config_chipset_for_pio (ide_drive_t *drive, byte set_speed)
-{
-	config_siimage_chipset_for_pio(drive, set_speed);
-}
-
 /**
  *	siimage_tune_chipset	-	set controller timings
  *	@drive: Drive to set up
@@ -392,8 +387,6 @@ static int config_chipset_for_dma (ide_d
 {
 	u8 speed = ide_max_dma_mode(drive);
- config_chipset_for_pio(drive, !speed);
-
 	if (!speed)
 		return 0;
@@ -419,7 +412,7 @@ static int siimage_config_drive_for_dma return 0; if (ide_use_fast_pio(drive))
-		config_chipset_for_pio(drive, 1);
+		config_siimage_chipset_for_pio(drive, 1);
return -1;
 }
@@ -1012,7 +1005,6 @@ static void __devinit init_hwif_siimage(
hwif->ultra_mask = 0x7f;
 	hwif->mwdma_mask = 0x07;
-	hwif->swdma_mask = 0x07;
if (!is_sata(hwif))
 		hwif->atapi_dma = 1;
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux