Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Sep 2013 05:55:43 +0000 (UTC)
From:      Peter Grehan <grehan@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r255292 - head/usr.sbin/bhyve
Message-ID:  <201309060555.r865thPS024570@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: grehan
Date: Fri Sep  6 05:55:43 2013
New Revision: 255292
URL: http://svnweb.freebsd.org/changeset/base/255292

Log:
  Allow level-triggered interrupt sources. While this isn't
  precisely emulated, it is good enough for the single consumer
  i.e. irq4, the serial port on Linux.

Modified:
  head/usr.sbin/bhyve/ioapic.c

Modified: head/usr.sbin/bhyve/ioapic.c
==============================================================================
--- head/usr.sbin/bhyve/ioapic.c	Fri Sep  6 05:55:02 2013	(r255291)
+++ head/usr.sbin/bhyve/ioapic.c	Fri Sep  6 05:55:43 2013	(r255292)
@@ -101,13 +101,13 @@ ioapic_set_pinstate(struct vmctx *ctx, i
 	 * XXX
 	 * We only deal with:
 	 * - edge triggered interrupts
-	 * - physical destination mode
 	 * - fixed delivery mode
+	 *  Level-triggered sources will work so long as their is
+	 * no sharing.
 	 */
 	low = ioapic->redtbl[pin];
 	high = ioapic->redtbl[pin] >> 32;
 	if ((low & IOART_INTMASK) == IOART_INTMCLR &&
-	    (low & IOART_TRGRMOD) == IOART_TRGREDG &&
 	    (low & IOART_DESTMOD) == IOART_DESTPHY &&
 	    (low & IOART_DELMOD) == IOART_DELFIXED) {
 		vector = low & IOART_INTVEC;



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