[kernel] r10550 - dists/trunk/linux-2.6/debian/patches/bugfix

Martin Michlmayr tbm at alioth.debian.org
Sat Feb 16 11:12:09 UTC 2008


Author: tbm
Date: Sat Feb 16 11:12:08 2008
New Revision: 10550

Log:
better patch


Modified:
   dists/trunk/linux-2.6/debian/patches/bugfix/sata_mv-platform_driver.patch

Modified: dists/trunk/linux-2.6/debian/patches/bugfix/sata_mv-platform_driver.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/bugfix/sata_mv-platform_driver.patch	(original)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/sata_mv-platform_driver.patch	Sat Feb 16 11:12:08 2008
@@ -1,39 +1,27 @@
-needs more work
+this fixes crash bug as the iomap table is not valid for integrated controllers.
 
-
-
-
-
-From: Byron Bradley <byron.bbradley at gmail.com>
-Date: Fri, 8 Feb 2008 02:20:35 +0000 (+0000)
-Subject: sata_mv: problems using it as a platform_driver
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fnico%2Forion.git;a=commitdiff_plain;h=1c62b99e64caa0e96fe9d6d3a4f75f54db8f0c7f
-
-sata_mv: problems using it as a platform_driver
-
-On Fri, 8 Feb 2008, Byron Bradley wrote:
-
-> In mv_platform_probe() host->iomap is set to NULL but it is dereferenced
-> in mv_start_dma(), I'm not sure what the fix for this is.
-
-The following patch makes this driver work although I have no idea if this
-is the correct thing to do. Will this be OK for other devices using this
-driver? The pointer only works because it is dereferenced as
-iomap[MV_PRIMARY_BAR] and MV_PRIMARY_BAR = 0, will another offset ever be
-used in the future?
+Signed-off-by: Saeed Bishara <saeed at marvell.com>
 ---
+ drivers/ata/sata_mv.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
-index 8b79f1e..ef10578 100644
+index 04b5717..9c9a5b0 100644
 --- a/drivers/ata/sata_mv.c
 +++ b/drivers/ata/sata_mv.c
-@@ -2948,8 +2948,8 @@ static int mv_platform_probe(struct platform_device *pdev)
- 	host->private_data = hpriv;
- 	hpriv->n_ports = n_ports;
- 
--	host->iomap = NULL;
- 	hpriv->base = ioremap(res->start, res->end - res->start + 1);
-+	host->iomap = &hpriv->base;
- 	hpriv->base -= MV_SATAHC0_REG_BASE;
+@@ -870,7 +870,7 @@ static void mv_start_dma(struct ata_port *ap, void __iomem *port_mmio,
+ 		struct mv_host_priv *hpriv = ap->host->private_data;
+ 		int hard_port = mv_hardport_from_port(ap->port_no);
+ 		void __iomem *hc_mmio = mv_hc_base_from_port(
+-				ap->host->iomap[MV_PRIMARY_BAR], hard_port);
++					mv_host_base(ap->host), hard_port);
+ 		u32 hc_irq_cause, ipending;
  
- 	rc = mv_create_dma_pools(hpriv, &pdev->dev);
+ 		/* clear EDMA event indicators, if any */
+-- 
+1.5.2.5
+
+-
+To unsubscribe from this list: send the line "unsubscribe linux-ide" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the Kernel-svn-changes mailing list