[ELDK] Kernel hangs after fdt unpacking
Wolfgang Grandegger
wg at grandegger.com
Thu May 20 13:16:00 CEST 2010
On 05/20/2010 12:55 PM, Axel Beierlein wrote:
> On Thu, May 20, 2010 at 11:22:00AM +0200, Wolfgang Grandegger wrote:
>> On 05/20/2010 11:01 AM, Axel Beierlein wrote:
>>> Hello,
>>>
>>> i try to port our TQM5200S Module OS from Kernel Version 2.4 to 2.6.
>>> I choose the Kernel Version 2.6.32.3 from the Denx Repository cause this
>>> was the last version wich i can patch with the lates Xenomai Stable
>>> release (2.5.3).
>>> Ok, patching and building Kernel was no Problem.
>>> I use the latest U-Boot commit to build an actual Bootloader with
>>> the configuration for an TQM5200B Board.
>>>
>>> I use tqm5200.dts from /arch/powerpc/boot/dts to build an fdt blob with
>>> the dtc compiler on my Ubuntu 9.10.
>>>
>>> dtc -I dts -O dtb -o tqm5200.dtb tqm5200.dts
>>
>> You need to reserve some spare space, e.g. by adding "-p 0x1000" or even
>> better, use make to build tqm5200.dtb:
>>
>> $ cd linux-2.6-denx
>> $ make tqm5200.dtb
>>
>> That's documented in
>> http://www.denx.de/wiki/view/DULG/Manual?stickboard=tqm5200
>>
>
> Ok, nice hint but doesn't fit the Problem
>
>>> was the command to getting the fdt blob for the Board.
>>> But when i try to boot the Kernel the System hangs after uncompressing
>>> the fdt blob.
>>>
>>> Where is the Problem? Where can i see why the Kernel doesn't boot?
>>
>> Also, make sure that the right console bootargs are used:
>>
>> console=ttyPSC0,115200
>
> bootargs=root=/dev/nfs rw nfsroot=192.168.0.133:/mnt/tqm5200
> ip=192.168.0.50:192.168.0.133:::tqm5200:eth0:off panic=1
> console=ttyPSC0,115200
>
> that is not the Problem...
Is this kernel already with built-in Xenomai support? If yes, please try
without first.
>>
>> Most likely that's the primary problem.
>>
>>>
>>> Also when i try to get some information about the device tree blob with
>>> fdt header. The System hangs after the output.
>>
>> What exactly did you do?
>>
>
> => tftp ${kernel_addr_r} ${bootfile}; tftp ${fdt_addr_r} ${fdt_file};
> Using FEC ETHERNET device
> TFTP from server 192.168.0.133; our IP address is 192.168.0.50
> Filename 'uImage'.
> Load address: 0x400000
> Loading:
> #################################################################
> ################################################################
> done
> Bytes transferred = 1889268 (1cd3f4 hex)
> Using FEC ETHERNET device
> TFTP from server 192.168.0.133; our IP address is 192.168.0.50
> Filename 'tqm5200.dtb'.
> Load address: 0x600000
> Loading: #
> done
> Bytes transferred = 5229 (146d hex)
>
> after that..
>
> => fdt header
> magic: 0x60000000
> totalsize: 0x60000000 (1610612736)
> off_dt_struct: 0x60000000
> off_dt_strings: 0x2c050000
> off_mem_rsvmap: 0x4182001c
> version: 1117716485
> last_comp_version: 2097676966
> boot_cpuid_phys: 0x3d080000
> size_dt_strings: 0x3908ffe8
> size_dt_struct: 0x4837ef11
>
> and here it hangs and i have to hard reboot
=> fdt addr 600000
=> fdt header
should work.
Wolfgang.
More information about the eldk
mailing list