From owner-svn-src-projects@FreeBSD.ORG Wed Nov 18 22:53:05 2009 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7EF2E1065670; Wed, 18 Nov 2009 22:53:05 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 53D218FC19; Wed, 18 Nov 2009 22:53:05 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nAIMr5Dx086723; Wed, 18 Nov 2009 22:53:05 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id nAIMr5bD086720; Wed, 18 Nov 2009 22:53:05 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <200911182253.nAIMr5bD086720@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Wed, 18 Nov 2009 22:53:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r199497 - projects/mips/sys/mips/atheros X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Nov 2009 22:53:05 -0000 Author: gonzo Date: Wed Nov 18 22:53:05 2009 New Revision: 199497 URL: http://svn.freebsd.org/changeset/base/199497 Log: - Add intr counters for APB interrupts Modified: projects/mips/sys/mips/atheros/apb.c projects/mips/sys/mips/atheros/apbvar.h Modified: projects/mips/sys/mips/atheros/apb.c ============================================================================== --- projects/mips/sys/mips/atheros/apb.c Wed Nov 18 22:52:05 2009 (r199496) +++ projects/mips/sys/mips/atheros/apb.c Wed Nov 18 22:53:05 2009 (r199497) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include @@ -285,11 +286,18 @@ apb_setup_intr(device_t bus, device_t ch NULL, NULL, "apb intr%d:", irq); - sc->sc_eventstab[irq] = event; + if (error == 0) { + sc->sc_eventstab[irq] = event; + sc->sc_intr_counter[irq] = + mips_intrcnt_create(event->ie_name); + } + else + return (error); } intr_event_add_handler(event, device_get_nameunit(child), filt, handler, arg, intr_priority(flags), flags, cookiep); + mips_intrcnt_setname(sc->sc_intr_counter[irq], event->ie_fullname); apb_unmask_irq((void*)irq); @@ -333,12 +341,13 @@ apb_intr(void *arg) if (!event || TAILQ_EMPTY(&event->ie_handlers)) { /* Ignore timer interrupts */ if (irq != 0) - printf("Stray IRQ %d\n", irq); + printf("Stray APB IRQ %d\n", irq); continue; } /* TODO: frame instead of NULL? */ intr_event_handle(event, NULL); + mips_intrcnt_inc(sc->sc_intr_counter[irq]); } } Modified: projects/mips/sys/mips/atheros/apbvar.h ============================================================================== --- projects/mips/sys/mips/atheros/apbvar.h Wed Nov 18 22:52:05 2009 (r199496) +++ projects/mips/sys/mips/atheros/apbvar.h Wed Nov 18 22:53:05 2009 (r199497) @@ -37,6 +37,7 @@ struct apb_softc { struct rman apb_mem_rman; /* IRQ events structs for child devices */ struct intr_event *sc_eventstab[APB_NIRQS]; + mips_intrcnt_t sc_intr_counter[APB_NIRQS]; /* Resources and cookies for MIPS CPU INTs */ struct resource *sc_misc_irq; void *sc_misc_ih;