From owner-p4-projects@FreeBSD.ORG Mon Jun 26 23:37:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA81416A4D0; Mon, 26 Jun 2006 23:37:09 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 943CE16A4CA for ; Mon, 26 Jun 2006 23:37:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 618964497B for ; Mon, 26 Jun 2006 14:04:24 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k5QE4OOh073578 for ; Mon, 26 Jun 2006 14:04:24 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k5QE4NGX073575 for perforce@freebsd.org; Mon, 26 Jun 2006 14:04:23 GMT (envelope-from piso@freebsd.org) Date: Mon, 26 Jun 2006 14:04:23 GMT Message-Id: <200606261404.k5QE4NGX073575@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100058 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Jun 2006 23:37:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=100058 Change 100058 by piso@piso_newluxor on 2006/06/26 14:03:38 Add a filter parameter to nexus_setup_intr() and ia64_setup_intr(). Affected files ... .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#3 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/nexus.c#2 edit .. //depot/projects/soc2006/intr_filter/ia64/include/intr.h#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#3 (text+ko) ==== @@ -283,8 +283,9 @@ } int -ia64_setup_intr(const char *name, int irq, driver_intr_t handler, void *arg, - enum intr_type flags, void **cookiep, volatile long *cntp) +ia64_setup_intr(const char *name, int irq, driver_intr_t handler, + driver_filter_t filter,void *arg, enum intr_type flags, + void **cookiep, volatile long *cntp) { struct ia64_intr *i; int errcode; @@ -331,7 +332,7 @@ } /* Second, add this handler. */ - errcode = intr_event_add_handler(i->event, name, handler, arg, + errcode = intr_event_add_handler(i->event, name, filter, handler, arg, intr_priority(flags), flags, cookiep); if (errcode) return errcode; ==== //depot/projects/soc2006/intr_filter/ia64/ia64/nexus.c#2 (text+ko) ==== @@ -92,7 +92,7 @@ static int nexus_release_resource(device_t, device_t, int, int, struct resource *); static int nexus_setup_intr(device_t, device_t, struct resource *, int flags, - void (*)(void *), void *, void **); + driver_filter_t filter, void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); static struct resource_list *nexus_get_reslist(device_t dev, device_t child); @@ -467,7 +467,8 @@ */ static int nexus_setup_intr(device_t bus, device_t child, struct resource *irq, - int flags, void (*ihand)(void *), void *arg, void **cookiep) + int flags, driver_filter_t filter, void (*ihand)(void *), + void *arg, void **cookiep) { driver_t *driver; int error; @@ -490,7 +491,7 @@ return (error); error = ia64_setup_intr(device_get_nameunit(child), - rman_get_start(irq), ihand, arg, flags, cookiep, 0); + rman_get_start(irq), filter, ihand, arg, flags, cookiep, 0); return (error); } ==== //depot/projects/soc2006/intr_filter/ia64/include/intr.h#2 (text+ko) ==== @@ -51,9 +51,9 @@ struct sapic; void ia64_add_sapic(struct sapic *sa); -int ia64_setup_intr(const char *name, int irq, driver_intr_t handler, - void *arg, enum intr_type flags, void **cookiep, - volatile long *cntp); +int ia64_setup_intr(const char *name, int irq, driver_intr_t handler, + driver_filter_t filter, void *arg, enum intr_type flags, + void **cookiep, volatile long *cntp); int ia64_teardown_intr(void *cookie); void ia64_dispatch_intr(void *frame, unsigned long vector);