[U-Boot] [PATCH 7/9] mx53loco: Add support to dynamically choose between ftd use or not
Stefano Babic
sbabic at denx.de
Fri Dec 28 09:52:45 CET 2012
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: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list