From owner-freebsd-arm@FreeBSD.ORG Thu Sep 27 21:40:30 2007 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9C5CD16A41B for ; Thu, 27 Sep 2007 21:40:30 +0000 (UTC) (envelope-from marius.nuennerich@gmx.de) Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by mx1.freebsd.org (Postfix) with SMTP id EC7F113C46E for ; Thu, 27 Sep 2007 21:40:29 +0000 (UTC) (envelope-from marius.nuennerich@gmx.de) Received: (qmail invoked by alias); 27 Sep 2007 21:40:29 -0000 Received: from f049170050.adsl.alicedsl.de (EHLO sol.hackerzberg.local) [78.49.170.50] by mail.gmx.net (mp033) with SMTP; 27 Sep 2007 23:40:29 +0200 X-Authenticated: #5707313 X-Provags-ID: V01U2FsdGVkX1/O8axqUKnOvR1zFmqn4yH4ABwAb+OEHLYed2WUUJ zUuYj0ToYq1yBy Date: Thu, 27 Sep 2007 23:40:36 +0200 From: Marius Nuennerich To: freebsd-arm@freebsd.org Message-ID: <20070927234036.58401eb2@sol.hackerzberg.local> In-Reply-To: <20070927221027.GA16476@ci0.org> References: <20070927171822.0bdec7d9@sol.hackerzberg.local> <20070927170339.GA11021@ci0.org> <20070927224133.5fc9b24f@sol.hackerzberg.local> <20070927214141.GB15654@ci0.org> <20070927231331.5d22bf4a@sol.hackerzberg.local> <20070927221027.GA16476@ci0.org> X-Mailer: Claws Mail 2.9.1 (GTK+ 2.10.12; i386-portbld-freebsd6.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 Subject: Re: Comment bug in locore.S? X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Sep 2007 21:40:30 -0000 On Fri, 28 Sep 2007 00:10:27 +0200 Olivier Houchard wrote: > On Thu, Sep 27, 2007 at 11:13:31PM +0200, Marius Nuennerich wrote: > > On Thu, 27 Sep 2007 23:41:41 +0200 > > Olivier Houchard wrote: > > > > > On Thu, Sep 27, 2007 at 10:41:33PM +0200, Marius Nuennerich wrote: > > > > On Thu, 27 Sep 2007 19:03:39 +0200 > > > > Olivier Houchard wrote: > > > > > > > > > On Thu, Sep 27, 2007 at 05:18:22PM +0200, Marius Nuennerich wrote: > > > > > > Hi all, > > > > > > > > > > > > > > > > Hi Marius, > > > > > > > > > > > I'm still trying to boot FreeBSD on the neo1973. So far I managed to > > > > > > put bytes over the serial console so I can see where I am. At the > > > > > > moment the (virtual) machine crashes in locore.S (1.16) line 170: > > > > > > ldr pc, .Lvirt_done > > > > > > > > > > > > qemu: fatal: Trying to execute code outside RAM or ROM at 0xc0008??? > > > > > > > > > > > > Which I don't understand because the section should be mapped by the > > > > > > MMU to 0x30008??? at that time. > > > > > > > > > > > > In line 137 the sequence in the comment is described as > > > > > > /* # of sections, PA|attr, VA */ > > > > > > but in line 185 the order is > > > > > > n_sec, VA, PA|attr > > > > > > > > > > > > Is the comment wrong? > > > > > > > > > > > > > > > > No the comment is right, 0xc0000000 should be mapped. > > > > > Did you define STARTUP_PAGETABLE_ADDR ? It's not marked as such, but it is > > > > > mandatory now. > > > > > > > > Yes, in the kernel config there are these lines: > > > > makeoptions KERNPHYSADDR=0x30008000 > > > > makeoptions KERNVIRTADDR=0xc0000000 > > > > options KERNPHYSADDR=0x30008000 > > > > options KERNVIRTADDR=0xc0000000 > > > > options PHYSADDR=0x30000000 > > > > options STARTUP_PAGETABLE_ADDR=0x30800000 > > > > > > > > It's from Andrew Turners config file which he posted on > > > > http://wiki.openmoko.org/wiki/FreeBSD > > > > in the tarball. > > > > > > > > > > Hmmm, I really see no reason why the PA <=> PA mapping would work, but not > > > the VA <=> PA one. > > > I'll try to setup qemu. Can it provide useful informations about its > > > internal state, ie CPU registers, TLB, etc ? > > > > Yes, it looks like this: > > qemu: fatal: Trying to execute code outside RAM or ROM at 0xc0008030 > > > > R00=30800000 R01=c01afdb8 R02=c0000070 R03=00000000 > > R04=3000824c R05=3000808c R06=00000002 R07=30008050 > > R08=33f17fdc R09=00000000 R10=00000041 R11=50000020 > > R12=33f14934 R13=c019b140 R14=33f8b9e8 R15=c0008030 > > PSR=60000153 -ZC- A svc32 > > There's something I seriously miss. At this point, r2 should be 0 : > ldmia r1, {r1, r2, sp} /* Set initial stack and */ > sub r2, r2, r1 /* get zero init data */ > mov r3, #0 > .L1: > str r3, [r1], #0x0004 /* get zero init data */ > subs r2, r2, #4 > bgt .L1 > ldr pc, .Lvirt_done > > And not 0xc0000070 > What are the values of _edata and _end ? I don't know. How can I find out or where are they defined? > If you've been able to do all those stores, the mapping should work anyway, Yes, I had a char output over serial line in the .L1 loop and an output right after the loop. I saw both. > I'm really confused. > > > s00=00000000( 0) s01=00000000( 0) > > d00=0000000000000000( 0) s02=00000000( 0) > > s03=00000000( 0) d01=0000000000000000( 0) > > s04=00000000( 0) s05=00000000( 0) > > d02=0000000000000000( 0) s06=00000000( 0) > > s07=00000000( 0) d03=0000000000000000( 0) > > s08=00000000( 0) s09=00000000( 0) > > d04=0000000000000000( 0) s10=00000000( 0) > > s11=00000000( 0) d05=0000000000000000( 0) > > s12=00000000( 0) s13=00000000( 0) > > d06=0000000000000000( 0) s14=00000000( 0) > > s15=00000000( 0) d07=0000000000000000( 0) > > s16=00000000( 0) s17=00000000( 0) > > d08=0000000000000000( 0) s18=00000000( 0) > > s19=00000000( 0) d09=0000000000000000( 0) > > s20=00000000( 0) s21=00000000( 0) > > d10=0000000000000000( 0) s22=00000000( 0) > > s23=00000000( 0) d11=0000000000000000( 0) > > s24=00000000( 0) s25=00000000( 0) > > d12=0000000000000000( 0) s26=00000000( 0) > > s27=00000000( 0) d13=0000000000000000( 0) > > s28=00000000( 0) s29=00000000( 0) > > d14=0000000000000000( 0) s30=00000000( 0) > > s31=00000000( 0) d15=0000000000000000( 0) > > FPSCR: 00000000 > > > > Can someone explain to me what the sxx= and dxx= value mean? > > > > No clue, sorry. > > Regards, > > Olivier > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"