From owner-freebsd-ppc@FreeBSD.ORG Tue Sep 30 20:50:18 2008 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AAFDE1065691 for ; Tue, 30 Sep 2008 20:50:18 +0000 (UTC) (envelope-from neko@genesi-usa.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.158]) by mx1.freebsd.org (Postfix) with ESMTP id 424D08FC0C for ; Tue, 30 Sep 2008 20:50:18 +0000 (UTC) (envelope-from neko@genesi-usa.com) Received: by fg-out-1718.google.com with SMTP id l26so150143fgb.35 for ; Tue, 30 Sep 2008 13:50:16 -0700 (PDT) Received: by 10.180.207.7 with SMTP id e7mr3543191bkg.18.1222807411710; Tue, 30 Sep 2008 13:43:31 -0700 (PDT) Received: from ?131.194.34.47? ([131.194.34.47]) by mx.google.com with ESMTPS id k5sm11851213nfh.0.2008.09.30.13.43.29 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 30 Sep 2008 13:43:30 -0700 (PDT) Message-ID: <48E28F71.4070906@genesi-usa.com> Date: Tue, 30 Sep 2008 15:43:29 -0500 From: Matt Sealey User-Agent: Thunderbird 2.0.0.18pre (Windows/20080930) MIME-Version: 1.0 To: Marco Trillo References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sender: Matt Sealey Cc: freebsd-ppc@freebsd.org Subject: Re: Fatal kernel trap on 7400 G4 processors X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Sep 2008 20:50:18 -0000 Shouldn't be doing it on a 7447A or 7448 either as they are 744x series which explicitly does not have L3 cache capability. Ironically these are the only chips where you can actually determine the difference between having L3 and not having L3, since the 7447 and 7457 (and all previous pairs) share the same CPU PVR. -- Matt Sealey Genesi, Manager, Developer Relations Marco Trillo wrote: > Hi all, > > Recent 8.0-current kernels cause a "fatal kernel trap" on 7400 G4 processors: > > fatal kernel trap > > exception = 0x7 (program) > srr0 = 0x5336bc > srr1 = 0x83032 > lr = 0x5334b4 > > Stopped at 0x5336bc mfspr 0, dccr > > The address 0x5336bc corresponds to function cpu_setup() in powerpc/cpu.c: > > 5336b4: 7f 9e 00 00 cmpw cr7,r30,r0 > 5336b8: 40 be 02 94 bne+ cr7,53394c > 5336bc: 7c 1a fa a6 mfdccr r0 <<<<< here > 5336c0: 3d 20 00 5f lis r9,95 > > I tracked the line to the following code in cpu.c: > > switch (vers) { > case MPC7400: > case MPC7410: > case MPC7447A: > case MPC7448: > case MPC7450: > case MPC7455: > case MPC7457: > /* G3 systems don't have an L3 cache, so only check > * for G4 and above */ > > l3cr_config = mfspr(SPR_L3CR); <<<< here > > /* Fallthrough */ > > In include/spr.h I see the following: > > #define SPR_L3CR 0x3fa /* .6. L3 Control Register */ > #define SPR_DCCR 0x3fa /* 4.. Data Cache Cachability Register */ > > So it seems that the 7400 processor doesn't have these registers so it > causes a fault. > > What do you think? > > Thanks, > Marco. > _______________________________________________ > freebsd-ppc@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ppc > To unsubscribe, send any mail to "freebsd-ppc-unsubscribe@freebsd.org"