Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Oct 2013 15:44:29 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r257060 - head/sys/dev/fdt
Message-ID:  <201310241544.r9OFiTOO027273@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Thu Oct 24 15:44:29 2013
New Revision: 257060
URL: http://svnweb.freebsd.org/changeset/base/257060

Log:
  Do not map IRQs twice. This fixes PowerPC/FDT systems with multiple PICs,
  which would try to treat the previously-mapped interrupts from
  fdt_decode_intr() as interrupt line numbers on the same parent PIC.

Modified:
  head/sys/dev/fdt/fdt_common.c

Modified: head/sys/dev/fdt/fdt_common.c
==============================================================================
--- head/sys/dev/fdt/fdt_common.c	Thu Oct 24 15:37:32 2013	(r257059)
+++ head/sys/dev/fdt/fdt_common.c	Thu Oct 24 15:44:29 2013	(r257060)
@@ -514,7 +514,7 @@ fdt_intr_to_rl(phandle_t node, struct re
 	pcell_t *intr;
 	pcell_t intr_cells;
 	int interrupt, trig, pol;
-	int i, intr_num, irq, rv;
+	int i, intr_num, rv;
 
 	if (OF_getproplen(node, "interrupts") <= 0)
 		/* Node does not have 'interrupts' property. */
@@ -566,8 +566,7 @@ fdt_intr_to_rl(phandle_t node, struct re
 		intr_sl[i].trig = trig;
 		intr_sl[i].pol = pol;
 
-		irq = FDT_MAP_IRQ(iph, interrupt);
-		resource_list_add(rl, SYS_RES_IRQ, i, irq, irq, 1);
+		resource_list_add(rl, SYS_RES_IRQ, i, interrupt, interrupt, 1);
 	}
 
 out:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310241544.r9OFiTOO027273>