public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch] getting back udma3 on BX chipset for 2.4.27
@ 2004-08-25 14:19 Artyom Tarasenko
  0 siblings, 0 replies; only message in thread
From: Artyom Tarasenko @ 2004-08-25 14:19 UTC (permalink / raw)
  To: linux-kernel, andre

Hi,

some time between 2.4.18 and 2.4.22 the support of udma3 (aka UDMA-44) 
was lost. Here is a trivial patch to get it back (if someone is 
interested I can make it cleaner). Having IBM-DTLA-307030 and SAMSUNG 
SV1604N drives I got significant advantage of using udma3 (23M/s vs 30M/s).

Regards,
Artyom Tarasenko.

--- drivers/ide/ide-lib.orig.c  Wed Aug 25 14:47:42 2004
+++ drivers/ide/ide-lib.c       Wed Aug 25 14:59:29 2004
@@ -107,6 +107,10 @@
                        if ((id->dma_ultra & 0x0008) &&
                            (id->dma_ultra & hwif->ultra_mask))
                                { speed = XFER_UDMA_3; break; }
+                case 0x05:
+                        if ((id->dma_ultra & 0x0008) &&
+                            (id->dma_ultra & hwif->ultra_mask))
+                                { speed = XFER_UDMA_3; break; }
                case 0x01:
                        if ((id->dma_ultra & 0x0004) &&
                            (id->dma_ultra & hwif->ultra_mask))
@@ -161,13 +165,13 @@
 #ifdef CONFIG_BLK_DEV_IDEDMA
        static u8 speed_max[] = {
                XFER_MW_DMA_2, XFER_UDMA_2, XFER_UDMA_4,
-               XFER_UDMA_5, XFER_UDMA_6
+               XFER_UDMA_5, XFER_UDMA_6,XFER_UDMA_3
        };
 
 //     printk("%s: mode 0x%02x, speed 0x%02x\n", __FUNCTION__, mode, 
speed);
 
        /* So that we remember to update this if new modes appear */
-       if (mode > 4)
+       if (mode > 5)
                BUG();
        return min(speed, speed_max[mode]);
 #else /* !CONFIG_BLK_DEV_IDEDMA */

--- drivers/ide/pci/piix.orig.c Sun Aug  8 01:26:04 2004
+++ drivers/ide/pci/piix.c      Wed Aug 25 16:15:49 2004
@@ -301,8 +301,11 @@
                case PCI_DEVICE_ID_INTEL_82372FB_1:
                        mode = 2;
                        break;
-               /* UDMA 33 capable */
+               /* UDMA 44 capable */
                case PCI_DEVICE_ID_INTEL_82371AB:
+                       mode = 5;
+                       break;
+               /* UDMA 33 capable */
                case PCI_DEVICE_ID_INTEL_82443MX_1:
                case PCI_DEVICE_ID_INTEL_82451NX:
                case PCI_DEVICE_ID_INTEL_82801AB_1:


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-08-25 14:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-25 14:19 [patch] getting back udma3 on BX chipset for 2.4.27 Artyom Tarasenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox