[U-Boot-Users] FW: mpc8343 could not boot on u-boot-1.2.0

Fowley, Douglas G (GE Infra, Energy) Douglas.Fowley at ge.com
Tue Mar 6 14:11:26 CET 2007



	From: Dongying_Xu at us.alphanetworks.com
[mailto:Dongying_Xu at us.alphanetworks.com] 
	Sent: Monday, March 05, 2007 3:08 PM
	To: Fowley, Douglas G (GE Infra, Energy)
	Cc: u-boot-users at lists.sourceforge.net
	Subject: Re: [U-Boot-Users] mpc8343 could not boot on

	Hi Doug, 
	Are you using linux kernel?  When you comment out 'enable
address translation', can you successfully boot with linux kernel?
When I comment out those line, it did help to boot until u-boot console
shows up, but it failed to continue boot up with linux kernel.  To make
linux kernel working, I have to keep following old 1.1.3 version code
in, which will cause another problem.  Did you have similar problem? 
	Thank you and best regards 
	        mr r14, r4 
	        mr r15, r5 
	        lis r4, (CFG_INIT_RAM_ADDR & 0xFFFE0000)@h 
	        mtspr        DBAT0U, r4 
	        ori r4, r4, 0x0002 
	        mtspr        DBAT0L, r4 
	        /* un lock all the D-cache */ 
	        mfspr        r4, HID0 
	        lis r5, (~(HID0_DLOCK))@h 
	        ori        r5, r5, (~(HID0_DLOCK))@l 
	        and r4, r4, r5 
	        mtspr        HID0 , r4 
	        /* Re - Allocate Initial RAM in data cache.*/ 
	        li  r0, 0 
	        lis        r4, (CFG_INIT_RAM_ADDR)@h 
	        ori        r4, r4, (CFG_INIT_RAM_ADDR)@l 
	        li        r5, 128*8 /* 128*8*32=32Kb */ 
	        mtctr        r5 
	        dcbz        r0, r4 
	        addi        r4, r4, 32 
	        bdnz        1b 
	        mflr r16 
	        bl dcache_disable 
	        mtlr r16 

Hi Dongy,
I do not use Linux; I run QNX Neutrino.  But I did have a similar
running QNX when I switched to U-Boot 1.1.4 and beyond.  U-Boot began
leaving the data cache enabled with that version.  Note that the last
of 1.1.3 snippet that you still use (above) disables the data cache.
I fixed it for QNX by adding "CFG_COMMAND_CACHE" to 
"CONFIG_COMMANDS" in my board header file in include/configs, and 
adding "dcache off; " to the appropriate spot in the bootcmd environment
variable.  In my case,
    #define CONFIG_BOOTCOMMAND "tftp ${loadaddr} ${ifsfile}; " \
        "dcache off; " \
        "go ${loadaddr}"
Since my disable address translation trick got your U-Boot up and
running, I suggest trying my data cache hack for Linux and reporting
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.denx.de/pipermail/u-boot/attachments/20070306/c6d1b169/attachment.htm 

More information about the U-Boot mailing list