All of lore.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.