Author: mav
Date: Tue Jun 22 16:10:48 2010
New Revision: 209431
URL: http://svn.freebsd.org/changeset/base/209431

Log:
  Do not set level-triggered interrupt mode if we are not going to use it.
  This fixes QEMU crash due to unsupported level-triggered HPET interrupts.
  
  Reported by:  kib@

Modified:
  head/sys/dev/acpica/acpi_hpet.c

Modified: head/sys/dev/acpica/acpi_hpet.c
==============================================================================
--- head/sys/dev/acpica/acpi_hpet.c     Tue Jun 22 15:01:23 2010        
(r209430)
+++ head/sys/dev/acpica/acpi_hpet.c     Tue Jun 22 16:10:48 2010        
(r209431)
@@ -526,6 +526,7 @@ hpet_attach(device_t dev)
                                t->irq = -2;
                } else
 #endif
+               if (sc->irq >= 0 && (t->vectors & (1 << sc->irq)))
                        t->caps |= (sc->irq << 9) | HPET_TCNF_INT_TYPE;
                bus_write_4(sc->mem_res, HPET_TIMER_CAP_CNF(i), t->caps);
                /* Skip event timers without set up IRQ. */
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to