[U-Boot] trying to bring linux-2.6.32.3 from RAM?

Rick Ball rball at AESAustin.com
Wed Apr 28 22:33:52 CEST 2010


Yes, but I think you need to load at address 0 instead of 0x8000, just like I load at 0x80000000 instead of 0x80008000.  My kernel is also compiled to start at an offset of 0x8000, just like yours, but I think the image has 0x8000 of reserved space at the beginning (so you load it to 0, but it starts executing at 0x8000).

I don't think the bootargs are even coming into play - you're executing a bad instruction at 0x8008 because you loaded the kernel at 0x8000 instead of 0 (so you're trying to execute the uninitialized reserved space). 

Try changing your tftp command to load at 0 instead of 0x8000, and I think it should boot.

Rick

-----Original Message-----
From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de] On Behalf Of ogara
Sent: Wednesday, April 28, 2010 3:26 PM
To: u-boot at lists.denx.de
Subject: Re: [U-Boot] trying to bring linux-2.6.32.3 from RAM?


Rick,
I have custom board with DRAM starting at 0x00000000 - 0x20000000 so I could not load it to 0x80000000 since I do not have that much memory. I noticed in your report that the load address is 0x80000000 but the kernel image was built with:
Load Address: 80008000
Entry Point:  80008000.
I was wondering what does your bootm command line looks like and if yours bootargs look like mine?
Ogi


Rick Ball wrote:
> 
> I think you want to load the kernel to memory at 0x00000000, even 
> though the u-boot load address is set to 0x8000 - my kernel, which I 
> load to memory at 0x80000000 because that's where my SDRAM is, looks like this:
> 
> Load address: 0x80000000
> Loading: #################################################################
>          #################################################################
>          #################################################################
>          #################################################################
>          #################################################################
>          #################################################################
>          ##########################
> done
> Bytes transferred = 2128612 (207ae4 hex) ## Booting kernel from Legacy 
> Image at 80000000 ...
>    Image Name:   Linux-2.6.29-rc3-omap1
>    Image Type:   ARM Linux Kernel Image (uncompressed)
>    Data Size:    2128548 Bytes =  2 MB
>    Load Address: 80008000
>    Entry Point:  80008000
>    Verifying Checksum ... OK
>    Loading Kernel Image ... OK
> OK
> 
> Starting kernel ...
> 
> Uncompressing
> Linux...........................................................................................................................................
> done, booting the kernel. 
> 
> 
> Rick
> 
> -----Original Message-----
> From: u-boot-bounces at lists.denx.de 
> [mailto:u-boot-bounces at lists.denx.de]
> On Behalf Of Marek Vasut
> Sent: Wednesday, April 28, 2010 2:35 PM
> To: u-boot at lists.denx.de
> Cc: ogara
> Subject: Re: [U-Boot] trying to bring linux-2.6.32.3 from RAM?
> 
> Dne St 28. dubna 2010 20:50:35 ogara napsal(a):
>> Hi All,
>> I am trying to bring linux from RAM. I have compiled the kernel and 
>> created uImage. I bring the image over tftp into the memory and then 
>> execute bootm memaddress. Unfortunately here is the output from my 
>> command line:
>> 
>>  tftp 0x8000 ipaddress:uImage
>> Using egiga0 device
>> TFTP from server ipaddress; our IP address is ipaddress; sending 
>> through gateway ipaddress Filename 'uImage'.
>> Load address: 0x8000
>> Loading:
>> #################################################################
>>         
>> #################################################################
>>         
>> #################################################################
>>          ###################
>> done
>> Bytes transferred = 3132020 (2fca74 hex) bootm 0x8000 ## Booting 
>> kernel from Legacy Image at 00008000 ...
>>    Image Name:   Linux-2.6.32.3
>>    Created:      2010-04-28  18:44:34 UTC
>>    Image Type:   ARM Linux Kernel Image (uncompressed)
>>    Data Size:    3131956 Bytes =  3 MB
>>    Load Address: 00008000
>>    Entry Point:  00008000
>>    Verifying Checksum ... OK
>>    XIP Kernel Image ... OK
>> OK
>> 
>> Starting kernel ...
>> 
>> undefined instruction
>> pc : [<00008008>]          lr : [<00647d1c>]
>> sp : 005ffce8  ip : 000008e0     fp : 000006fc
>> r10: 00724db0  r9 : 005fff90     r8 : 005fffcc
>> r7 : 00000002  r6 : 0072372d     r5 : 00000154  r4 : 00000000
>> r3 : 00008000  r2 : 00000100     r1 : 000006fc  r0 : 0001c200
>> Flags: nZCv  IRQs off  FIQs off  Mode SVC_32 Resetting CPU ...
>> 
>> Now, the image is good for sure because I do not have issues bringing 
>> this image from the hard drive. Do I need anything else (ftd or
>> ramdisc) to boot from RAM or the procedure presented is correct?
>> my bootargs are:
>> bootargs=console ttyS0,115200 root /dev/ram rw
>> 
>> Thank you for your help,
>> Ogi
> 
> Hi, the image is probably corrupted ? Also, why do you load it to 0x8000 ?
> It's relocated anyway, but this way it has to be relocated twice) 
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
> 
> 

--
View this message in context: http://old.nabble.com/trying-to-bring-linux-2.6.32.3-from-RAM--tp28392641p28393589.html
Sent from the Uboot - Users mailing list archive at Nabble.com.

_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list