[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] bootwrapper can't be compiled for cubieboard2

On Fri, 2013-08-30 at 10:27 +0200, Andre Przywara wrote:
> On 08/30/2013 10:06 AM, Ian Campbell wrote:
> > On Fri, 2013-08-30 at 15:12 +0800, Josh Zhao wrote:
> >> Hi Ian,
> >> I try compile the bootwrapper for cubieboard2 like this:
> >
> > Hi Josh,
> >
> > cubieboards2 support is not really in place yet, so I'm afraid there
> > will currently be rough edges like this.
> >
> > That said I think this worked for me, but based on the discussions I
> > think the better approach is to merge Andre's u-boot patches to support
> > entry in HYP mode into the cubieboard branch. I'll only work on
> > bootwrapper any further if some interesting platform comes along for
> > which there is no possibility of updating the bootloader, so for now you
> > should consider it dead/dormant.
> >
> > Anyhow, I've tried inserting Andre's patches into the cubieboard2 uboot
> > and stumbled across a problem -- it turns out that u-boot has enabled
> > the MMU (SCTLR.M), apparently because it is required for the caches to
> > be on (see arch/arm/lib/cache-cp15.c:cache_enable). unfortunately SCTLR
> > is banked so when nonsec-virt.S:_secure_monitor enabled SCR.NS
> > everything falls apart. NaÃvely enabling SCTLR.M while in monitor mode
> > didn't seem to help.
> Ah, good point. My whole code approach was relying on the fact that 
> u-boot runs with MMU _off_. With the MMU differences in HYP mode we may 
> run into troubles here, it may work if we switch late enough, though.

This new "Falcon mode" thing seems to be driving some changes here, in
particular it seems that turning on the caches can dramatically speed up
boot in some circumstance.

> > Calling cleanup_before_linux() early in armv7_switch_nonsec() seemed to
> > do the job -- Andre, do you think that is the right fix?
> Do you have a pointer to a u-boot repository with the cubieboard 
> patches? Then I'd take a look.

https://github.com/hno/u-boot.git branch wip/a20
specifically 80fd9a5c5b87ba2f48f4a71b666839870e780be6 and your hypmode
v4 5068b337518617586f2e51b6d616c54dbec4fa62

It looks like I should switch to the sunxi branch of
https://github.com/linux-sunxi/u-boot-sunxi.git though, it includes the
above and is more up to date.

I'll try that shortly and let you know how I get on.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.