npx.c (93024) | npx.c (93264) |
---|---|
1/*- 2 * Copyright (c) 1990 William Jolitz. 3 * Copyright (c) 1991 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 18 unchanged lines hidden (view full) --- 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * 34 * from: @(#)npx.c 7.2 (Berkeley) 5/12/91 | 1/*- 2 * Copyright (c) 1990 William Jolitz. 3 * Copyright (c) 1991 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 18 unchanged lines hidden (view full) --- 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * 34 * from: @(#)npx.c 7.2 (Berkeley) 5/12/91 |
35 * $FreeBSD: head/sys/i386/isa/npx.c 93024 2002-03-23 16:01:49Z bde $ | 35 * $FreeBSD: head/sys/i386/isa/npx.c 93264 2002-03-27 05:39:23Z dillon $ |
36 */ 37 38#include "opt_cpu.h" 39#include "opt_debug_npx.h" 40#include "opt_isa.h" 41#include "opt_math_emulate.h" 42#include "opt_npx.h" 43 --- 380 unchanged lines hidden (view full) --- 424no_irq13: 425 idt[16] = save_idt_npxtrap; 426 bus_teardown_intr(dev, irq_res, irq_cookie); 427 428 /* 429 * XXX hack around brokenness of bus_teardown_intr(). If we left the 430 * irq active then we would get it instead of exception 16. 431 */ | 36 */ 37 38#include "opt_cpu.h" 39#include "opt_debug_npx.h" 40#include "opt_isa.h" 41#include "opt_math_emulate.h" 42#include "opt_npx.h" 43 --- 380 unchanged lines hidden (view full) --- 424no_irq13: 425 idt[16] = save_idt_npxtrap; 426 bus_teardown_intr(dev, irq_res, irq_cookie); 427 428 /* 429 * XXX hack around brokenness of bus_teardown_intr(). If we left the 430 * irq active then we would get it instead of exception 16. 431 */ |
432 mtx_lock_spin(&icu_lock); 433 INTRDIS(1 << irq_num); 434 mtx_unlock_spin(&icu_lock); | 432 { 433 register_t crit; |
435 | 434 |
435 crit = intr_disable(); 436 mtx_lock_spin(&icu_lock); 437 INTRDIS(1 << irq_num); 438 mtx_unlock_spin(&icu_lock); 439 intr_restore(crit); 440 } 441 |
|
436 bus_release_resource(dev, SYS_RES_IRQ, irq_rid, irq_res); 437 bus_release_resource(dev, SYS_RES_IOPORT, ioport_rid, ioport_res); 438 return (0); 439 440#endif /* SMP */ 441} 442 443/* --- 567 unchanged lines hidden --- | 442 bus_release_resource(dev, SYS_RES_IRQ, irq_rid, irq_res); 443 bus_release_resource(dev, SYS_RES_IOPORT, ioport_rid, ioport_res); 444 return (0); 445 446#endif /* SMP */ 447} 448 449/* --- 567 unchanged lines hidden --- |