[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