svn commit: r209634 - head/sys/x86/isa
Alexander Motin
mav at FreeBSD.org
Thu Jul 1 18:51:18 UTC 2010
Author: mav
Date: Thu Jul 1 18:51:18 2010
New Revision: 209634
URL: http://svn.freebsd.org/changeset/base/209634
Log:
Rework r209456:
Instead of using fake rid (which ISA doesn't like), delete untrusted
IRQ resource and let it be recreated.
Modified:
head/sys/x86/isa/atrtc.c
head/sys/x86/isa/clock.c
Modified: head/sys/x86/isa/atrtc.c
==============================================================================
--- head/sys/x86/isa/atrtc.c Thu Jul 1 17:46:12 2010 (r209633)
+++ head/sys/x86/isa/atrtc.c Thu Jul 1 18:51:18 2010 (r209634)
@@ -259,7 +259,8 @@ atrtc_attach(device_t dev)
if (!atrtcclock_disable &&
(resource_int_value(device_get_name(dev), device_get_unit(dev),
"clock", &i) != 0 || i != 0)) {
- sc->intr_rid = -1;
+ sc->intr_rid = 0;
+ bus_delete_resource(dev, SYS_RES_IRQ, sc->intr_rid);
if (!(sc->intr_res = bus_alloc_resource(dev, SYS_RES_IRQ,
&sc->intr_rid, 8, 8, 1, RF_ACTIVE))) {
device_printf(dev,"Can't map interrupt.\n");
Modified: head/sys/x86/isa/clock.c
==============================================================================
--- head/sys/x86/isa/clock.c Thu Jul 1 17:46:12 2010 (r209633)
+++ head/sys/x86/isa/clock.c Thu Jul 1 18:51:18 2010 (r209634)
@@ -535,7 +535,8 @@ attimer_attach(device_t dev)
tc_init(&sc->tc);
if (resource_int_value(device_get_name(dev), device_get_unit(dev),
"clock", &i) != 0 || i != 0) {
- sc->intr_rid = -1;
+ sc->intr_rid = 0;
+ bus_delete_resource(dev, SYS_RES_IRQ, sc->intr_rid);
if (!(sc->intr_res = bus_alloc_resource(dev, SYS_RES_IRQ,
&sc->intr_rid, 0, 0, 1, RF_ACTIVE))) {
device_printf(dev,"Can't map interrupt.\n");
More information about the svn-src-head
mailing list