All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/03] sata_mv: revert SoC irq breakage
@ 2009-04-06 16:29 Mark Lord
  2009-04-06 16:30 ` [PATCH 02/03] sata_mv: fix irq mask races Mark Lord
  2009-04-07  0:16 ` [PATCH 01/03] sata_mv: revert SoC irq breakage Jeff Garzik
  0 siblings, 2 replies; 12+ messages in thread
From: Mark Lord @ 2009-04-06 16:29 UTC (permalink / raw)
  To: Jeff Garzik, IDE/ATA development list
  Cc: Maxime Bizon, Lennert Buytenhek, Saeed Bishara

Revert most of commit 6be96ac1d5e4d913e1f48299db083ada5321803b2,
originally from Lennert Buijtenheck (Marvell) and Saeed Bishara (Marvell),
since that commit causes sata_mv to oops at startup on SOC "Kirkwood".

The SOC variants do not have the hpriv->irq_{cause,mask}_ofs registers,
so don't try to write to them!

This patch should also be considered for -stable.

Reported-by: Maxime Bizon <mbizon@freebox.fr>
Signed-off-by: Mark Lord <mlord@pobox.com>
---
Note: I am mostly in the dark about the sata_mv SOC stuff,
since I have incomplete documentation and no hardware to test with.

--- old/drivers/ata/sata_mv.c	2009-04-06 11:18:01.000000000 -0400
+++ new/drivers/ata/sata_mv.c	2009-04-06 11:59:57.000000000 -0400
@@ -3734,11 +3734,13 @@
 		writelfl(0, hc_mmio + HC_IRQ_CAUSE_OFS);
 	}
 
-	/* Clear any currently outstanding host interrupt conditions */
-	writelfl(0, mmio + hpriv->irq_cause_ofs);
+	if (!IS_SOC(hpriv)) {
+		/* Clear any currently outstanding host interrupt conditions */
+		writelfl(0, mmio + hpriv->irq_cause_ofs);
 
-	/* and unmask interrupt generation for host regs */
-	writelfl(hpriv->unmask_all_irqs, mmio + hpriv->irq_mask_ofs);
+		/* and unmask interrupt generation for host regs */
+		writelfl(hpriv->unmask_all_irqs, mmio + hpriv->irq_mask_ofs);
+	}
 
 	/*
 	 * enable only global host interrupts for now.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2009-04-07  0:16 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-06 16:29 [PATCH 01/03] sata_mv: revert SoC irq breakage Mark Lord
2009-04-06 16:30 ` [PATCH 02/03] sata_mv: fix irq mask races Mark Lord
2009-04-06 16:31   ` [PATCH 03/03] sata_mv: replace 0x1f with ATA_PIO4 Mark Lord
2009-04-06 19:22     ` [PATCH 03/03] sata_mv: replace 0x1f with ATA_PIO4 (v2) Mark Lord
2009-04-06 19:24       ` [PATCH 04/07] sata_mv: workaround errata PCI#7 Mark Lord
2009-04-06 19:24         ` [PATCH 05/07] sata_mv: workaround errata SATA#26 Mark Lord
2009-04-06 19:25           ` [PATCH 06/07] sata_mv: cosmetic renames Mark Lord
2009-04-06 19:26             ` [PATCH 07/07] sata_mv: workaround errata SATA#13 Mark Lord
2009-04-06 20:43               ` [PATCH 08/08] sata_mv: shorten register names Mark Lord
2009-04-06 19:51             ` [PATCH 06/07] sata_mv: cosmetic renames Jeff Garzik
2009-04-06 20:12               ` Mark Lord
2009-04-07  0:16 ` [PATCH 01/03] sata_mv: revert SoC irq breakage Jeff Garzik

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.