From owner-svn-src-projects@FreeBSD.ORG Wed Nov 11 22:36:19 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 9CD081065676; Wed, 11 Nov 2009 22:36:19 +0000 (UTC) (envelope-from rrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 8C75B8FC13; Wed, 11 Nov 2009 22:36:19 +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 nABMaJnH009449; Wed, 11 Nov 2009 22:36:19 GMT (envelope-from rrs@svn.freebsd.org) Received: (from rrs@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id nABMaJY9009448; Wed, 11 Nov 2009 22:36:19 GMT (envelope-from rrs@svn.freebsd.org) Message-Id: <200911112236.nABMaJY9009448@svn.freebsd.org> From: Randall Stewart Date: Wed, 11 Nov 2009 22:36:19 +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: r199203 - projects/mips/sys/mips/rmi 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, 11 Nov 2009 22:36:19 -0000 Author: rrs Date: Wed Nov 11 22:36:19 2009 New Revision: 199203 URL: http://svn.freebsd.org/changeset/base/199203 Log: Ok set in the values in clock 7 as in the original codes (I had changed one by accident) Also do the pic_ack/pic_delayed_ack after the interrupt so we clear it. The clock with these changes starts working. Its off doing a short/long short/long warning but it now runs. My NFS mount now works but has the same problem with sbin/init (errno 8 ENOEXEC) so it panics with no init. Either this is a problem with my buildworld.. OR its a yet undiscovered RMI issue. Modified: projects/mips/sys/mips/rmi/clock.c projects/mips/sys/mips/rmi/intr_machdep.c Modified: projects/mips/sys/mips/rmi/clock.c ============================================================================== --- projects/mips/sys/mips/rmi/clock.c Wed Nov 11 22:31:02 2009 (r199202) +++ projects/mips/sys/mips/rmi/clock.c Wed Nov 11 22:36:19 2009 (r199203) @@ -240,7 +240,7 @@ platform_initclocks(void) pic_update_control(1 << (8 + 7)); xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_0, (0xffffffff & 0xffffffff)); - xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_1, (0xffffffff & 0xffffffff)); + xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_1, (0x0 & 0xffffffff)); xlr_write_reg(mmio, PIC_IRT_0_TIMER_6, (1 << cpu)); xlr_write_reg(mmio, PIC_IRT_1_TIMER_6, (1 << 31) | (0 << 30) | (1 << 6) | (PIC_TIMER_6_IRQ)); pic_update_control(1 << (8 + 6)); Modified: projects/mips/sys/mips/rmi/intr_machdep.c ============================================================================== --- projects/mips/sys/mips/rmi/intr_machdep.c Wed Nov 11 22:31:02 2009 (r199202) +++ projects/mips/sys/mips/rmi/intr_machdep.c Wed Nov 11 22:36:19 2009 (r199203) @@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include /*#include */ @@ -167,6 +168,7 @@ cpu_intr(struct trapframe *tf) ie = mih->mih_event; write_c0_eirr64(1ULL << i); + pic_ack(i); if (!ie || TAILQ_EMPTY(&ie->ie_handlers)) { printf("stray interrupt %d\n", i); continue; @@ -174,6 +176,7 @@ cpu_intr(struct trapframe *tf) if (intr_event_handle(ie, tf) != 0) { printf("stray interrupt %d\n", i); } + pic_delayed_ack(i); } critical_exit(); }