svn commit: r194656 - head/sys/arm/xscale/ixp425

Sam Leffler sam at FreeBSD.org
Mon Jun 22 20:57:52 UTC 2009


Author: sam
Date: Mon Jun 22 20:57:51 2009
New Revision: 194656
URL: http://svn.freebsd.org/changeset/base/194656

Log:
  hook arm_post_filter to ACK GPIO interrupts; this fixes the interrupt
  storm observed on the GPS+RS485 uarts on Gateworks Cambria boards
  
  Reviewed by:	cognet

Modified:
  head/sys/arm/xscale/ixp425/ixp425.c

Modified: head/sys/arm/xscale/ixp425/ixp425.c
==============================================================================
--- head/sys/arm/xscale/ixp425/ixp425.c	Mon Jun 22 20:42:28 2009	(r194655)
+++ head/sys/arm/xscale/ixp425/ixp425.c	Mon Jun 22 20:57:51 2009	(r194656)
@@ -186,6 +186,13 @@ ixp425_gpio_ack(int irq)
 		    ixp425_irq2gpio_bit(irq);
 }
 
+static void
+ixp425_post_filter(void *arg)
+{
+	uintptr_t irq = (uintptr_t) arg;
+	ixp425_gpio_ack(irq);
+}
+
 void
 arm_mask_irq(uintptr_t nb)
 {
@@ -304,6 +311,7 @@ ixp425_attach(device_t dev)
 		ixp435_set_intrmask();
 		ixp435_set_intrsteer();
 	}
+	arm_post_filter = ixp425_post_filter;
 
 	if (bus_dma_tag_create(NULL, 1, 0, BUS_SPACE_MAXADDR_32BIT,
 	    BUS_SPACE_MAXADDR, NULL, NULL,  0xffffffff, 0xff, 0xffffffff, 0, 


More information about the svn-src-head mailing list