From owner-svn-src-projects@FreeBSD.ORG Fri Apr 24 04:17:21 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 585F1106566B; Fri, 24 Apr 2009 04:17:21 +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 470298FC17; Fri, 24 Apr 2009 04:17:21 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n3O4HLkN008099; Fri, 24 Apr 2009 04:17:21 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n3O4HLI8008098; Fri, 24 Apr 2009 04:17:21 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <200904240417.n3O4HLI8008098@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Fri, 24 Apr 2009 04:17:21 +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: r191451 - projects/mips/sys/mips/include 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: Fri, 24 Apr 2009 04:17:21 -0000 Author: gonzo Date: Fri Apr 24 04:17:21 2009 New Revision: 191451 URL: http://svn.freebsd.org/changeset/base/191451 Log: - Define accessor functions for CP0 Config(16) register selects 1, 2, 3. Content of these registers is defined in MIPS spec and can be used for obtaining info about CPU capabilities. Modified: projects/mips/sys/mips/include/cpufunc.h Modified: projects/mips/sys/mips/include/cpufunc.h ============================================================================== --- projects/mips/sys/mips/include/cpufunc.h Fri Apr 24 03:51:11 2009 (r191450) +++ projects/mips/sys/mips/include/cpufunc.h Fri Apr 24 04:17:21 2009 (r191451) @@ -212,18 +212,24 @@ MIPS_RDRW32_COP0(pagemask, MIPS_COP_0_TL MIPS_RDRW32_COP0(prid, MIPS_COP_0_PRID); MIPS_RDRW32_COP0(watchlo, MIPS_COP_0_WATCH_LO); MIPS_RDRW32_COP0(watchhi, MIPS_COP_0_WATCH_HI); +#undef MIPS_RDRW32_COP0 -static __inline uint32_t -mips_rd_config_sel1(void) -{ - int v0; - __asm __volatile("mfc0 %[v0], $16, 1 ;" - : [v0] "=&r" (v0)); - mips_barrier(); - return (v0); +#define MIPS_RD_CONFIG_SEL(sel) \ +static __inline uint32_t \ +mips_rd_config_sel##sel(void) \ +{ \ + int v0; \ + __asm __volatile("mfc0 %[v0], $16, " #sel " ;" \ + : [v0] "=&r" (v0)); \ + mips_barrier(); \ + return (v0); \ } -#undef MIPS_RDRW32_COP0 + +MIPS_RD_CONFIG_SEL(1); +MIPS_RD_CONFIG_SEL(2); +MIPS_RD_CONFIG_SEL(3); +#undef MIPS_RD_CONFIG_SEL static __inline register_t intr_disable(void)