On 27/12/2012 22:22, Otavio Salvador wrote: > > Right; I have did the bellow changes: > > diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h
ok, you changed the mx28evk, but we are really talking about mx53loco...never mind ! > index ac9522f..45ac072 100644 > --- a/include/configs/mx28evk.h > +++ b/include/configs/mx28evk.h > @@ -290,6 +290,10 @@ > "uimage=uImage\0" \ > "console_fsl=ttyAM0\0" \ > "console_mainline=ttyAMA0\0" \ > + "ftd_file=imx28-evk.dtb\0" \ > + "ftd_addr=0x41000000\0" \ > + "boot_fdt=auto\0" \ > + "ip_dyn=yes\0" \ Only my personal taste. I find simpler, specially with U-Boot environment, to not full describe the variable with strings like "yes" or "no". This lets me to simply test with if test -n ${ip_dyn} and it works if ip_dyn is not set at all. > "mmcdev=0\0" \ > "mmcpart=2\0" \ > "mmcroot=/dev/mmcblk0p3 rw rootwait\0" \ > @@ -302,13 +306,43 @@ > "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ > "mmcboot=echo Booting from mmc ...; " \ > "run mmcargs; " \ > - "bootm\0" \ > + "if test ${boot_fdt} = no; then " \ > + "bootm; " \ > + "else " \ > + "if fatload mmc ${mmcdev}:${mmcpart} ${ftd_addr} > ${ftd_file}; then " \ > + "bootm ${loadaddr} - ${ftd_addr}; " \ I think you can better rewrite it as : "if test ${boot_fdt} = yes; then " \ "if fatload mmc ${mmcdev}:${mmcpart} ${ftd_addr} ${ftd_file}; then " \ "bootm ${loadaddr} - ${ftd_addr}; " \ "else " \ "echo ERROR: Cannot load the DT, aborting...; " \ "fi;\0" \ "else " "bootm; " \ "fi;\0" \ Not sure what you mean with "auto". You try to start a DT kernel without FDT. Why is it helpful ? > + "else " \ > + "if test ${boot_fdt} = auto; then " \ > + "bootm; " \ > + "else " \ > + "echo ERROR: Cannot load the DT, aborting...; " \ > + "fi;\0" \ > + "fi;\0" \ > + "fi;\0" \ > "netargs=setenv bootargs console=${console_mainline},${baudrate} " \ > "root=/dev/nfs " \ > "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ > "netboot=echo Booting from net ...; " \ > "run netargs; " \ > - "dhcp ${uimage}; bootm\0" > + "if test ${ip_dyn} = yes; then " \ > + "setenv get_cmd dhcp; " \ > + "else " \ > + "setenv get_cmd tftp; " \ > + "fi;\0" \ > + ${get_cmd} ${uimage}; " \ This does not work - you must use "run ${get_cmd}" > + "if test ${boot_fdt} = no; then " \ > + "bootm; " \ > + "else " \ > + "if ${get_cmd} ${ftd_addr} ${ftd_file}; then " \ > + "bootm ${loadaddr} - ${ftd_addr}; " \ > + "else " \ > + "if test ${boot_fdt} = auto; then " \ > + "bootm; " \ > + "else " \ > + "echo ERROR: Cannot load the DT, aborting...; " \ > + "fi;\0" \ > + "fi;\0" \ > + "fi;\0" > > #define CONFIG_BOOTCOMMAND \ > "mmc dev ${mmcdev}; if mmc rescan; then " \ > > What do you think? I don't have the board I can test it on mx53loco Regards, Stefano -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de ===================================================================== _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot