[linux-cirrus] Re: [PATCH] Re: FastBus mode, core running on HCLK

Charles Moschel wrote:
On Sat, 2007-02-03 at 21:53 +0100, Lennert Buytenhek wrote:
On Sat, Feb 03, 2007 at 03:42:38PM -0500, Charles Moschel wrote:

Until some more skilled can find where nF is being clobbered, or add
some code to see if it is or isn't set by the bootrom, how about this
patch?  It's against 2.6.20-rc7, and it works for me.
I have at least three ep93xx boards that boot in the right mode in
2.6.20-rcX, so it's unlikely that the mode setting is being clobbered
by Linux.

Well, it _is_ set in the bootrom, but then it (looks to me) like it's
clobbered by redboot.  From
/~/sources/ecos/packages/hal/arm/arm9/ts7250/current/src/ts7250_misc.c:

 // Enable MMU
    asm volatile (
        "mcr    p15,0,%0,c1,c0,0;"
        "nop;nop;nop;nop;nop;nop;nop;nop;"
        :
        : "r"(MMU_Control_Init|MMU_Control_M)
        /* : */ );

(MMU_Control_Init | MMU_Control_M) evaluates to 0x0071.

What's the best way to fix this?

Nasty!  What an evil thing for RedBoot to do!

We'll fix this in our RedBoot and internally I'll push through an engineering change-order. I'm pretty sure we didn't touch that code since we've imported it from Cirrus.

Newer boards (TS-7300, TS-7400) we've removed RedBoot altogether so they won't have this issue.

Thanks for pointing this out!

//Jesse Off


Other related posts: