[PATCH 2/2] cciss: disable dma prefetch for P600

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

 



PATCH 2/2
Turned off DMA prefetch for the P600 on systems which may present
discontiguous memory.

---
commit 68e76156e7a203a86996ac99c1326f098d3191f6
tree b191a99ae1bfa6588860136265f11f9ef789683a
parent 499cc64fc708f3a25985bea3b77b40c3448ccbf8
author Mike Miller <mikem@xxxxxxxxxxxxxxxxxxxxxxx> Tue, 17 Oct 2006 16:02:22 -0500
committer Mike Miller <mikem@xxxxxxxxxxxxxxxxxxxxxxx> Tue, 17 Oct 2006 16:02:22 -0500

Signed-off-by: Mike Miller <mikem@xxxxxxxxxxxxxxxxxxxxxxx>

 drivers/block/cciss.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index a0a1dd9..b445528 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -2982,6 +2982,21 @@ #ifdef CONFIG_X86
 	}
 #endif
 
+#if defined CONFIG_IA64 || if defined CONFIG_X86_64
+	{
+		/* DMA prefetch must be disabled on P600 on platforms that may
+		 * present noncontiguous memory.
+		 */
+
+		__u32 dma_prefetch;
+		if(board_id == 0x3225103C) {
+			dma_prefetch = readl(c->vaddr + I2O0_DMA1_CFG);
+			dma_prefetch |= 0x8000;
+			writel(c->vaddr + I2O0_DMA1_CFG, dma_prefetch);
+		}
+	}
+#endif /* CONFIG_IA64 || CONFIG_X86_64 */
+
 #ifdef CCISS_DEBUG
 	printk("Trying to put board into Simple mode\n");
 #endif				/* CCISS_DEBUG */
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux