Hi,

I'm running an ebsa285-like system with 2.2.11-rmk1-stk1 (stk1 means
some stuff specific to our board), and I'm seeing something strange.
I've had Linux running on this board for quite some time now, but all of
the time I've noticed that it never boots up all the way each time I
reboot it.  I have vxWorks firmware which facilitates booting over the
Intel 21143 ethernet chip, but I only have about a 50% boot success
rate, i.e. 50% of the time I need to reboot and try again.  I've put
code in head-armv.S to track this down (basically banging individual
characters out the UART), and I've trace it to where the MMU is enabled.
Here's the sequence:

                mov     lr, pc
                mov     pc, r10                 @ Call processor flush (returns ctrl 
reg)
                adr     r5, __entry
                sub     r10, r10, r5            @ Make r10 PIC
                ldr     lr, .Lbranch
/** DEBUG! FootBase is 0x42000000 **/
                ldr     r9, FootBase
                mov     r8, #0x33
                str     r8, [r9, #0x160]
/** DEBUG! **/
                mcr     p15, 0, r0, c1, c0      @ Enable MMU & caches.  In 3 
instructions
                                                @ we lose this page!
                mov     pc, lr

What happens is I see the 3 printed out before the jump and then a solid
hang.  I noticed comments in 2.2.12-rmk1 that this is a known problem if
hte mov pc,lr instruction falls on a separate cache line, so I added the
.align 5 aligned_entry stuff from there but it had no affect.  Is there
something else that could be going wrong?

--
Kyle Mestery                    | StorageTek's Storage Networking Group
[EMAIL PROTECTED]                | http://www.freebsd.org/
[EMAIL PROTECTED]           | http://www.netwinder.org/
        Protect your right to privacy: www.freecrypto.org

unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]

Reply via email to