[U-Boot] imx: Kernel not booting with fdt
Matthias Weißer
weisserm at arcor.de
Wed Jul 3 08:20:35 CEST 2013
Am 03.07.2013 03:16, schrieb Fabio Estevam:
> On Tue, Jul 2, 2013 at 12:26 PM, Matthias Weißer <weisserm at arcor.de> wrote:
>> Hi
>>
>> I try to boot a current 3.11 kernel on a custom iMX25 board using DT. u-boot
>> starts the kernel but it stops working just after the first eralyprintk
>> lines are out. The u-boot/kernel output:
>>
>> bootm 0x81000000 - 0x80800000
>> ## Booting kernel from Legacy Image at 81000000 ...
>> Image Name: Linux-3.10.0
>> Image Type: ARM Linux Kernel Image (uncompressed)
>> Data Size: 3834336 Bytes = 3.7 MiB
>> Load Address: 80008000
>> Entry Point: 80008000
>> Verifying Checksum ... OK
>> ## Flattened Device Tree blob at 80800000
>> Booting using the fdt blob at 0x80800000
>> Loading Kernel Image ... OK
>> OK
>> Loading Device Tree to 8374f000, end 837545d4 ... OK
>>
>> Starting kernel ...
>>
>> Uncompressing Linux... done, booting the kernel.
>> [ 0.000000] Booting Linux on physical CPU 0x0
>> [ 0.000000] Initializing cgroup subsys cpuset
>> [ 0.000000] Initializing cgroup subsys cpu
>> [ 0.000000] Initializing cgroup subsys cpuacct
>> [ 0.000000] Linux version 3.10.0 (mweisser at ubuntu) (gcc version 4.7.3
>> (Ubuntu/Linaro 4.7.3-1ubuntu1) ) #4 Tue Jul 2 1
>> 7:13:13 CEST 2013
>> [ 0.000000] CPU: ARM926EJ-S [41069264] revision 4 (ARMv5TEJ), cr=00053177
>> [ 0.000000] CPU: VIVT data cache, VIVT instruction cache
>> [ 0.000000] Machine: Generic DT based system, model: Graf-Syteco zmx25
>
> Not sure why you get a "Generic DT based system" here.
Isn't that supossed to be the right output for a DT kernel?
> Can you post your dts file?
Sure. It is based on imx25-pdk.dts minus nand plus uart2 which is used
as debug uart on the system in question.
/dts-v1/;
#include "imx25.dtsi"
/ {
model = "Graf-Syteco zmx25";
compatible = "fsl,zmx25", "fsl,zmx25";
memory {
reg = <0x80000000 0x4000000>;
};
};
&uart1 {
status = "okay";
};
&uart2 {
status = "okay";
};
&fec {
phy-mode = "rmii";
status = "okay";
};
> Have you selected CONFIG_MACH_IMX25_DT=y on your kernel config file?
$ cat .config | grep CONFIG_MACH_IMX25_DT
CONFIG_MACH_IMX25_DT=y
Confirmed.
> Also, make sure you have "#define CONFIG_OF_LIBFDT" on your U-boot
> board config file.
$ cat include/configs/zmx25.h | grep CONFIG_OF_LIBFDT
#define CONFIG_OF_LIBFDT
Confirmed.
As the kernel is not crashing but hanging in an endless loop I will try
if I can get some additional information via the JTAG debugger.
Regards
Matthias
More information about the U-Boot
mailing list