From owner-svn-src-head@FreeBSD.ORG Tue Mar 27 07:51:43 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5BF9D106566B; Tue, 27 Mar 2012 07:51:43 +0000 (UTC) (envelope-from jchandra@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 46DAA8FC16; Tue, 27 Mar 2012 07:51:43 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q2R7phpA075633; Tue, 27 Mar 2012 07:51:43 GMT (envelope-from jchandra@svn.freebsd.org) Received: (from jchandra@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q2R7phZs075631; Tue, 27 Mar 2012 07:51:43 GMT (envelope-from jchandra@svn.freebsd.org) Message-Id: <201203270751.q2R7phZs075631@svn.freebsd.org> From: "Jayachandran C." Date: Tue, 27 Mar 2012 07:51:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233535 - head/sys/mips/nlm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Mar 2012 07:51:43 -0000 Author: jchandra Date: Tue Mar 27 07:51:42 2012 New Revision: 233535 URL: http://svn.freebsd.org/changeset/base/233535 Log: Update the L1D cache flush sequence when enabling threads. Added more comments to the code. Modified: head/sys/mips/nlm/mpreset.S Modified: head/sys/mips/nlm/mpreset.S ============================================================================== --- head/sys/mips/nlm/mpreset.S Tue Mar 27 07:47:13 2012 (r233534) +++ head/sys/mips/nlm/mpreset.S Tue Mar 27 07:51:42 2012 (r233535) @@ -55,24 +55,24 @@ .set noreorder li $8, LSU_DEBUG_DATA0 /* use register number to handle */ li $9, LSU_DEBUG_ADDR /* different ABIs */ - li t2, 0 - li t3, 0x200 + li t2, 0 /* index */ + li t3, 0x1000 /* loop count, 512 sets * 8 whatever? */ 1: sll v0, t2, 5 MTCR(0, 8) - ori v1, v0, 0x3 + ori v1, v0, 0x3 /* way0 | write_enable | write_active */ MTCR(3, 9) 2: MFCR(3, 9) - andi v1, 0x1 + andi v1, 0x1 /* wait for write_active == 0 */ bnez v1, 2b nop MTCR(0, 8) - ori v1, v0, 0x7 + ori v1, v0, 0x7 /* way1 | write_enable | write_active */ MTCR(3, 9) 3: MFCR(3, 9) - andi v1, 0x1 + andi v1, 0x1 /* wait for write_active == 0 */ bnez v1, 3b nop addi t2, 1 @@ -195,7 +195,7 @@ LEAF(xlp_enable_threads) mfc0 t1, MIPS_COP_0_STATUS move sp, t0 /* Restore the real SP */ - jr ra + jr.hb ra nop END(xlp_enable_threads) #endif