memory corruption after MMU turned on

Claus Gindhart claus.gindhart at kontron.com
Fri Nov 17 03:11:46 EST 2006


Lei,

if you are trying to step over RFI using the BDI2000-probe (propably also with other probes), this problem could be caused by the probe.

I had similar problems in an early phase of an 8270 project. It is not possible to step over RFI; and it is always dangerous to debug through MMU initialization code with the probe.

You could work around this by setting a Breakpoint instruction after MMU-initialization, hoping, that the code will reach this point.
If also this doesnt help, i could only recommend to set some HW-signals, in the best case a register with LED's behind to see, whether your system reaches particular code areas.

-- 
Mit freundlichen Gruessen / Best regards

Claus Gindhart
SW R&D
Kontron Modular Computers
phone :++49 (0)8341-803-374
mailto:claus.gindhart at kontron-modular.com
http://www.kontron.com

-----BEGIN GEEK CODE BLOCK-----
  Version: 3.1
  GU d- s++:>++:+ a+ C++$ !U !P L++>$ E-- W+(-) N- o?
  K? w !O !M V !PS PE- Y+ PGP+ t 5? X R* tv- b+ DI+++
  D-- G e++> h--- !r x+++
------END GEEK CODE BLOCK------
 


-----Original Message-----
From: linuxppc-embedded-bounces+claus.gindhart=kontron.com at ozlabs.org
[mailto:linuxppc-embedded-bounces+claus.gindhart=kontron.com at ozlabs.org]
On Behalf Of Lei Sun
Sent: Donnerstag, 16. November 2006 16:45
To: linuxppc-embedded at ozlabs.org
Subject: memory corruption after MMU turned on


Hi all:
   I am trying to bring up customized board based on MPC8270, the
kernel version is 2.4.30, it works fine on one of the Eval board
(PQ2FADS-VR, which use MPC8275).
   The kernel hangs after uncompressing is done, further debug shows
that it hangs right after "rfi " instruction of the turn_on_mmu:
function in head.S

 turn_on_mmu:
    240     mfmsr   r0
    241     ori r0,r0,MSR_DR|MSR_IR
    242     mtspr   SRR1,r0
    243     lis r0,start_here at h
    244     ori r0,r0,start_here at l
    245     mtspr   SRR0,r0
    246     SYNC
    247     RFI             /* enables MMU */

After i step over the RFI instruction, the PC points to C000XXX , but
all memory content is 0 by then.
my BATU0 is 0xC000FFE0  BATL0 is 0x00000002, I have 128MB RAM. The
u-boot works fine, without MMU turned on. We do have some hardware
problem, such that i have to lower the bus frequency to make the SDRAM
stable. What physical parameter could cause the board not working with
MMU on?

Any suggestion?

Thanks
lei
_______________________________________________
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded



More information about the Linuxppc-embedded mailing list