]> git.sur5r.net Git - u-boot/commitdiff
Fix jornada memory init
authorKristoffer Ericson <kristoffer.ericson@gmail.com>
Sat, 6 Nov 2010 13:24:27 +0000 (14:24 +0100)
committerWolfgang Denk <wd@denx.de>
Sat, 27 Nov 2010 22:35:12 +0000 (23:35 +0100)
* Fix memory initialization. This fixes the problem
  with kernel oopses during heavy load.

* Cleanup pinsetup, which for reference is among
  other things needed for proper flash erasing.

Signed-off-by: Kristoffer Ericson <kristoffer.ericson@gmail.com>
board/jornada/setup.S

index 885e02f7dbcfde187ed150924aaa86bf298594f4..cdf5f544503cac093b58e46a7b35b22ebf929edb 100644 (file)
@@ -112,12 +112,13 @@ gafr_set: .long   0x08600000
 .globl lowlevel_init
 lowlevel_init:
 
-       /* set output and direction of pins */
-       ldr r0, PPC_BASE
-       ldr r1, pin_set_out
-       str r1, [r0, #PPSR]
-       ldr r1, pin_set_dir
-       str r1, [r0, #PPDR]
+
+       /* this is required for flashing */
+       ldr     r0, PPC_BASE
+       ldr     r1, pin_set_out
+       str     r1, [r0, #PPSR]
+       ldr     r1, pin_set_dir
+       str     r1, [r0, #PPDR]
 
        /* Setting up the memory and stuff */
        /***********************************/
@@ -190,6 +191,11 @@ lowlevel_init:
        ldr     r3, [r2]
 .endr
 
+       ldr     r2, [r0, #MDCNFG]
+       orr     r2, r2, #0x00000003
+       orr     r2, r2, #0x00030000
+       str     r2, [r0, #MDCNFG]
+
        ldr     r1, msc0
        str     r1, [r0, #MSC0]
        ldr     r1, msc1
@@ -198,13 +204,7 @@ lowlevel_init:
        str     r1, [r0, #MSC2]
        ldr     r1, smcnfg
        str     r1, [r0, #SMCNFG]
-       ldr     r1, mdcnfg
-       str     r1, [r0, #MDCNFG]
        ldr     r1, mecr
        str     r1, [r0, #MECR]
 
-       /* enable SDRAM */
-       orr     r1, r1, #0x00000001
-       str     r1, [r0, #MDCNFG]
-
        mov     pc, lr