Hi Fabio,

On 05/03/2014 19:51, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.este...@freescale.com>
> 
> Allow the boot of a device tree mainline kernel by aligning the environment
> variables with other FSL boards.
> 
> Tested NFS boot of a dt 3.14-rc5 kernel.
> 
> Signed-off-by: Fabio Estevam <fabio.este...@freescale.com>
> ---
>  include/configs/mx25pdk.h | 103 
> +++++++++++++++++++++++++++++++++++++++++++---
>  1 file changed, 98 insertions(+), 5 deletions(-)
> 
> diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h
> index af6aafa..aff2419 100644
> --- a/include/configs/mx25pdk.h
> +++ b/include/configs/mx25pdk.h
> @@ -62,6 +62,7 @@
>  /* No NOR flash present */
>  #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
>  #define CONFIG_ENV_SIZE        (8 * 1024)
> +#define CONFIG_SYS_MMC_ENV_DEV               0
>  
>  #define CONFIG_SYS_NO_FLASH
>  #define CONFIG_ENV_IS_IN_MMC
> @@ -69,7 +70,7 @@
>  
>  /* U-Boot general configuration */
>  #define CONFIG_AUTO_COMPLETE
> -#define CONFIG_SYS_CBSIZE    256     /* Console I/O Buffer Size  */
> +#define CONFIG_SYS_CBSIZE    1024    /* Console I/O Buffer Size  */
>  /* Print buffer sz */
>  #define CONFIG_SYS_PBSIZE    (CONFIG_SYS_CBSIZE + \
>               sizeof(CONFIG_SYS_PROMPT) + 16)
> @@ -132,12 +133,104 @@
>  #define CONFIG_LOADADDR              0x81000000      /* loadaddr env var */
>  #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
>  
> +#define CONFIG_DEFAULT_FDT_FILE              "imx25-pdk.dtb"
> +
>  #define CONFIG_EXTRA_ENV_SETTINGS \
>       "script=boot.scr\0" \
> -     "uimage=uImage\0" \
> -     "netargs=setenv bootargs console=ttymxc0,${baudrate} " \
> +     "image=zImage\0" \
> +     "console=ttymxc0\0" \
> +     "splashpos=m,m\0" \
> +     "fdt_high=0xffffffff\0" \
> +     "initrd_high=0xffffffff\0" \
> +     "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
> +     "fdt_addr=0x82000000\0" \
> +     "boot_fdt=try\0" \
> +     "ip_dyn=yes\0" \
> +     "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
> +     "mmcpart=1\0" \
> +     "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
> +     "update_sd_firmware_filename=u-boot.imx\0" \
> +     "update_sd_firmware=" \
> +             "if test ${ip_dyn} = yes; then " \
> +                     "setenv get_cmd dhcp; " \
> +             "else " \
> +                     "setenv get_cmd tftp; " \
> +             "fi; " \
> +             "if mmc dev ${mmcdev}; then "   \
> +                     "if ${get_cmd} ${update_sd_firmware_filename}; then " \
> +                             "setexpr fw_sz ${filesize} / 0x200; " \
> +                             "setexpr fw_sz ${fw_sz} + 1; "  \
> +                             "mmc write ${loadaddr} 0x2 ${fw_sz}; " \
> +                     "fi; "  \
> +             "fi\0" \
> +     "mmcargs=setenv bootargs console=${console},${baudrate} " \
> +             "root=${mmcroot}\0" \
> +     "loadbootscript=" \
> +             "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
> +     "bootscript=echo Running bootscript from mmc ...; " \
> +             "source\0" \
> +     "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
> +     "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
> +     "mmcboot=echo Booting from mmc ...; " \
> +             "run mmcargs; " \
> +             "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
> +                     "if run loadfdt; then " \
> +                             "bootz ${loadaddr} - ${fdt_addr}; " \
> +                     "else " \
> +                             "if test ${boot_fdt} = try; then " \
> +                                     "bootz; " \
> +                             "else " \
> +                                     "echo WARN: Cannot load the DT; " \
> +                             "fi; " \
> +                     "fi; " \
> +             "else " \
> +                     "bootz; " \
> +             "fi;\0" \
> +     "netargs=setenv bootargs console=${console},${baudrate} " \
>               "root=/dev/nfs " \
> -             "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
> -     "bootcmd=run netargs; dhcp ${uimage}; bootm\0" \
> +     "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
> +             "netboot=echo Booting from net ...; " \
> +             "run netargs; " \
> +             "if test ${ip_dyn} = yes; then " \
> +                     "setenv get_cmd dhcp; " \
> +             "else " \
> +                     "setenv get_cmd tftp; " \
> +             "fi; " \
> +             "${get_cmd} ${image}; " \
> +             "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
> +                     "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
> +                             "bootz ${loadaddr} - ${fdt_addr}; " \
> +                     "else " \
> +                             "if test ${boot_fdt} = try; then " \
> +                                     "bootz; " \
> +                             "else " \
> +                                     "echo WARN: Cannot load the DT; " \
> +                             "fi; " \
> +                     "fi; " \
> +             "else " \
> +                     "bootz; " \
> +             "fi;\0"
> +
> +#define CONFIG_BOOTCOMMAND \
> +        "mmc dev ${mmcdev}; if mmc rescan; then " \
> +                "if run loadbootscript; then " \
> +                        "run bootscript; " \
> +                "else " \
> +                        "if run loadimage; then " \
> +                                "run mmcboot; " \
> +                        "else run netboot; " \
> +                        "fi; " \
> +                "fi; " \
> +        "else run netboot; fi"
> +
> +/* Miscellaneous configurable options */
> +#define CONFIG_SYS_LONGHELP
> +#define CONFIG_SYS_HUSH_PARSER
> +#define CONFIG_AUTO_COMPLETE
> +
> +/* Print Buffer Size */
> +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 
> 16)
> +#define CONFIG_SYS_MAXARGS          16
> +#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
>  
>  #endif /* __CONFIG_H */
> 

Agree. It would be easier to have later a common code for the
environment if all boards share the same default.

Acked-by: Stefano Babic <sba...@denx.de>

Best regards,
Stefano Babic

-- 
=====================================================================
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

Reply via email to