Date: Thu, 29 Jun 2006 11:27:14 GMT From: Paolo Pisati <piso@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 100281 for review Message-ID: <200606291127.k5TBRES3045858@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=100281 Change 100281 by piso@piso_newluxor on 2006/06/29 11:26:21 Finished converting pic_setup_intr()&C to support interrupt filtering: now powerpc compiles again, and is in par with all the other archs. Affected files ... .. //depot/projects/soc2006/intr_filter/powerpc/include/intr_machdep.h#3 edit .. //depot/projects/soc2006/intr_filter/powerpc/include/openpicvar.h#2 edit .. //depot/projects/soc2006/intr_filter/powerpc/powermac/hrowpic.c#2 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#4 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/nexus.c#2 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/openpic.c#2 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/pic_if.m#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/powerpc/include/intr_machdep.h#3 (text+ko) ==== @@ -42,8 +42,8 @@ void intr_init(void (*)(void), int, void (*)(uintptr_t), void (*)(uintptr_t)); void intr_setup(u_int, ih_func_t *, void *, u_int); -int inthand_add(const char *, u_int, void (*)(void *), void *, int, - void **); +int inthand_add(const char *, u_int, int (*)(void *), void (*)(void *), + void *, int, void **); int inthand_remove(u_int, void *); void intr_handle(u_int); ==== //depot/projects/soc2006/intr_filter/powerpc/include/openpicvar.h#2 (text+ko) ==== @@ -58,8 +58,8 @@ struct resource *openpic_allocate_intr(device_t, device_t, int *, u_long, u_int); int openpic_setup_intr(device_t, device_t, - struct resource *, int, driver_intr_t, void *, - void **); + struct resource *, int, driver_filter_t, + driver_intr_t, void *, void **); int openpic_teardown_intr(device_t, device_t, struct resource *, void *); int openpic_release_intr(device_t dev, device_t, int, ==== //depot/projects/soc2006/intr_filter/powerpc/powermac/hrowpic.c#2 (text+ko) ==== @@ -79,8 +79,8 @@ static struct resource *hrowpic_allocate_intr(device_t, device_t, int *, u_long, u_int); static int hrowpic_setup_intr(device_t, device_t, - struct resource *, int, driver_intr_t, void *, - void **); + struct resource *, int, driver_filter_t, + driver_intr_t, void *, void **); static int hrowpic_teardown_intr(device_t, device_t, struct resource *, void *); static int hrowpic_release_intr(device_t dev, device_t, int, @@ -221,7 +221,8 @@ static int hrowpic_setup_intr(device_t picdev, device_t child, struct resource *res, - int flags, driver_intr_t *intr, void *arg, void **cookiep) + int flags, driver_filter_t *filter, driver_intr_t *intr, void *arg, + void **cookiep) { struct hrowpic_softc *sc; u_long start; @@ -240,8 +241,8 @@ if (error) return (error); - error = inthand_add(device_get_nameunit(child), start, intr, arg, - flags, cookiep); + error = inthand_add(device_get_nameunit(child), start, filter, intr, + arg, flags, cookiep); if (!error) { /* ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#4 (text+ko) ==== @@ -168,8 +168,8 @@ } int -inthand_add(const char *name, u_int irq, void (*handler)(void *), void *arg, - int flags, void **cookiep) +inthand_add(const char *name, u_int irq, int (*filter)(void *), + void (*handler)(void *), void *arg, int flags, void **cookiep) { struct ppc_intr_handler *ppc_ih; struct intr_event *event, *orphan; @@ -202,7 +202,7 @@ } } - error = intr_event_add_handler(event, name, handler, arg, + error = intr_event_add_handler(event, name, filter, handler, arg, intr_priority(flags), flags, cookiep); if (error) return (error); ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/nexus.c#2 (text+ko) ==== @@ -112,7 +112,7 @@ static int nexus_read_ivar(device_t, device_t, int, uintptr_t *); static int nexus_write_ivar(device_t, device_t, int, uintptr_t); static int nexus_setup_intr(device_t, device_t, struct resource *, int, - driver_intr_t *, void *, void **); + driver_filter_t *, driver_intr_t *, void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); static struct resource *nexus_alloc_resource(device_t, device_t, int, int *, @@ -290,7 +290,7 @@ static int nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, - driver_intr_t *intr, void *arg, void **cookiep) + driver_filter_t *filter, driver_intr_t *intr, void *arg, void **cookiep) { struct nexus_softc *sc; @@ -299,8 +299,8 @@ if (device_get_state(sc->sc_pic) != DS_ATTACHED) panic("nexus_setup_intr: no pic attached\n"); - return (PIC_SETUP_INTR(sc->sc_pic, child, res, flags, intr, arg, - cookiep)); + return (PIC_SETUP_INTR(sc->sc_pic, child, res, flags, filter, intr, + arg, cookiep)); } static int ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/openpic.c#2 (text+ko) ==== @@ -228,7 +228,8 @@ int openpic_setup_intr(device_t dev, device_t child, struct resource *res, - int flags, driver_intr_t *intr, void *arg, void **cookiep) + int flags, driver_filter_t *filter, driver_intr_t *intr, void *arg, + void **cookiep) { struct openpic_softc *sc; u_long start; @@ -253,8 +254,8 @@ if (error) return (error); - error = inthand_add(device_get_nameunit(child), start, intr, arg, - flags, cookiep); + error = inthand_add(device_get_nameunit(child), start, filter, intr, + arg, flags, cookiep); if (sc->sc_hwprobed) openpic_enable_irq(sc, start, IST_LEVEL); ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/pic_if.m#2 (text+ko) ==== @@ -44,6 +44,7 @@ device_t child; struct resource *res; int flags; + driver_filter_t *filter; driver_intr_t *intr; void *arg; void **cookiep;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200606291127.k5TBRES3045858>