Date: Fri, 15 Dec 2006 15:06:30 GMT From: Olivier Houchard <cognet@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 111742 for review Message-ID: <200612151506.kBFF6UAf052474@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=111742 Change 111742 by cognet@hulglah on 2006/12/15 15:06:08 Make intr_filter compile on arm: Remove the definition of NIRQ from genassym.c, because intr.h now depends of sys/bus.h, which requires device_if.h, which is not there yet when we create assym.s. Instead, make intr.h includable from asm , and do that. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/genassym.c#4 edit .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#9 edit .. //depot/projects/soc2006/intr_filter/arm/arm/irq_dispatch.S#2 edit .. //depot/projects/soc2006/intr_filter/arm/include/intr.h#3 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/genassym.c#4 (text+ko) ==== @@ -43,7 +43,6 @@ #include <machine/cpufunc.h> #include <machine/pcb.h> #include <machine/pte.h> -#include <machine/intr.h> #include <machine/sysarch.h> #include <netinet/in.h> @@ -116,4 +115,3 @@ ASSYM(TRAPFRAMESIZE, sizeof(struct trapframe)); ASSYM(MAXCOMLEN, MAXCOMLEN); -ASSYM(NIRQ, NIRQ); ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#9 (text+ko) ==== @@ -40,6 +40,7 @@ __FBSDID("$FreeBSD: src/sys/arm/arm/intr.c,v 1.13 2006/11/08 01:32:24 cognet Exp $"); #include <sys/param.h> #include <sys/systm.h> +#include <sys/kernel.h> #include <sys/syslog.h> #include <sys/malloc.h> #include <sys/proc.h> @@ -49,6 +50,7 @@ #include <machine/atomic.h> #include <machine/intr.h> #include <machine/cpu.h> +#include <machine/bus.h> static struct intr_event *intr_events[NIRQ]; static int intrcnt_tab[NIRQ]; @@ -59,6 +61,10 @@ void arm_handler_execute(struct trapframe *, int); +void intr_callout_reset(void); + +extern struct bus_space i80321_bs_tag; + void arm_setup_irqhandler(const char *name, driver_filter_t *filter, void (*hand)(void*), void *arg, int irq, int flags, void **cookiep) @@ -120,8 +126,7 @@ arm_handler_execute(struct trapframe *frame, int irqnb __unused) { struct intr_event *event; - struct thread *td = curthread; - int i, thread, res; + int i, res; PCPU_LAZY_INC(cnt.v_intr); while ((i = arm_get_next_irq()) != -1) { @@ -151,6 +156,7 @@ intr_callout_reset(void) { + return; // XXX missing callout_init_mtx(&stray_callout_handle, ...); callout_reset(&stray_callout_handle, hz, &stray_detection, &walk_intrs_events); ==== //depot/projects/soc2006/intr_filter/arm/arm/irq_dispatch.S#2 (text+ko) ==== @@ -72,6 +72,8 @@ #include <machine/asm.h> #include <machine/asmacros.h> #include <machine/armreg.h> +#include <machine/intr.h> + __FBSDID("$FreeBSD: src/sys/arm/arm/irq_dispatch.S,v 1.4 2005/01/05 21:58:47 imp Exp $"); /* ==== //depot/projects/soc2006/intr_filter/arm/include/intr.h#3 (text+ko) ==== @@ -45,6 +45,8 @@ #define NIRQ 32 #endif +#ifndef LOCORE +#include <sys/bus.h> #include <machine/psl.h> int arm_get_next_irq(void); @@ -53,4 +55,5 @@ void arm_setup_irqhandler(const char *, driver_filter_t *, void (*)(void*), void *, int, int, void **); int arm_remove_irqhandler(void *); +#endif #endif /* _MACHINE_INTR_H */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200612151506.kBFF6UAf052474>