Hi Minkyu,

> Support for a new command (defined at envs) - spl_export generates
> the ATAGS image necessary for fast boot. Afterwards, it is stored
> at ext4 partition.
> 
> Generated image format:
> CRC [4B] SIZE [4B] PAYLOAD(ATAGS/DT) [SIZE]
> 
> Remarks:
> - CRC is calculated only for PAYLOAD
> - SIZE is the size of PAYLOAD
> 
> It is important to adjust ${splsize} when large image is generated.
> It is defined as hex, since ext4 related commands expect it.
> 
> The ${spladdr} environment variable corresponds to
> CONFIG_SYS_SPL_ARGS_ADDR
> 
> Additionally definitions for DFU have been refactored and support for
> EFI has been added as well.
> 

Could this patch be added to u-boot-samsung tree? It brings many
updates for trats configuration and it would be nice to bring it to
2013.01 u-boot release.

> Signed-off-by: Lukasz Majewski <l.majew...@samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.p...@samsung.com>
> Cc: Minkyu Kang <mk7.k...@samsung.com>
> ---
>  board/samsung/trats/trats.c |    2 +-
>  include/configs/trats.h     |   45
> +++++++++++++++++++++++++++++++++--------- 2 files changed, 36
> insertions(+), 11 deletions(-)
> 
> diff --git a/board/samsung/trats/trats.c b/board/samsung/trats/trats.c
> index e540190..4738043 100644
> --- a/board/samsung/trats/trats.c
> +++ b/board/samsung/trats/trats.c
> @@ -66,7 +66,7 @@ struct s3c_plat_otg_data s5pc210_otg_data;
>  
>  int board_init(void)
>  {
> -     gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100;
> +     gd->bd->bi_boot_params = CONFIG_SYS_SPL_ARGS_ADDR;
>  
>       check_hw_revision();
>       printf("HW Revision:\t0x%x\n", board_rev);
> diff --git a/include/configs/trats.h b/include/configs/trats.h
> index 355029e..52fe77d 100644
> --- a/include/configs/trats.h
> +++ b/include/configs/trats.h
> @@ -98,6 +98,7 @@
>  #undef CONFIG_CMD_MTDPARTS
>  #define CONFIG_CMD_MMC
>  #define CONFIG_CMD_DFU
> +#define CONFIG_CMD_SETEXPR
>  
>  /* FAT */
>  #define CONFIG_CMD_FAT
> @@ -123,9 +124,8 @@
>  #define CONFIG_ENV_COMMON_BOOT               "${console} ${meminfo}"
>  
>  #define CONFIG_DFU_ALT \
> -     "dfu_alt_info=" \
>       "u-boot mmc 80 400;" \
> -     "uImage fat 0 2\0" \
> +     "uImage ext4 0 2\0" \
>  
>  #define CONFIG_ENV_OVERWRITE
>  #define CONFIG_SYS_CONSOLE_INFO_QUIET
> @@ -144,20 +144,20 @@
>               "mmc read 0 0x42100000 0x80 0x200; run
> updatebackup\0" \ "lpj=lpj=3981312\0" \
>       "nfsboot=" \
> -             "set bootargs root=/dev/nfs rw " \
> +             "setenv bootargs root=/dev/nfs rw " \
>               "nfsroot=${nfsroot},nolock,tcp " \
>               "ip=${ipaddr}:${serverip}:${gatewayip}:" \
>               "${netmask}:generic:usb0:off "
> CONFIG_ENV_COMMON_BOOT \ "; run bootk\0" \
>       "ramfsboot=" \
> -             "set bootargs root=/dev/ram0 rw rootfstype=ext2 " \
> +             "setenv bootargs root=/dev/ram0 rw rootfstype=ext2 "
> \ "${console} ${meminfo} " \
>               "initrd=0x43000000,8M ramdisk=8192\0" \
>       "mmcboot=" \
> -             "set bootargs
> root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \
> +             "setenv bootargs
> root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \ "${lpj} rootwait
> ${console} ${meminfo} ${opts} ${lcdinfo}; " \ "run loaduimage; bootm
> 0x40007FC0\0" \
> -     "bootchart=set opts init=/sbin/bootchartd; run bootcmd\0" \
> +     "bootchart=setenv opts init=/sbin/bootchartd; run bootcmd\0"
> \ "boottrace=setenv opts initcall_debug; run bootcmd\0" \
>       "mmcoops=mmc read 0 0x40000000 0x40 8; md 0x40000000
> 0x400\0" \ "verify=n\0" \
> @@ -166,12 +166,30 @@
>       "meminfo=crashkernel=32M@0x50000000\0" \
>       "nfsroot=/nfsroot/arm\0" \
>       "bootblock=" CONFIG_BOOTBLOCK "\0" \
> -     "loaduimage=fatload mmc ${mmcdev}:${mmcbootpart} 0x40007FC0
> uImage\0" \
> +     "loaduimage=ext4load mmc ${mmcdev}:${mmcbootpart} 0x40007FC0
> uImage\0" \ "mmcdev=0\0" \
>       "mmcbootpart=2\0" \
> -     "mmcrootpart=3\0" \
> +     "mmcrootpart=5\0" \
>       "opts=always_resume=1\0" \
> -     CONFIG_DFU_ALT
> +     "dfu_alt_info=" CONFIG_DFU_ALT \
> +     "spladdr=0x40000100\0" \
> +     "splsize=0x200\0" \
> +     "splfile=falcon.bin\0" \
> +     "spl_export=" \
> +                "setexpr spl_imgsize ${splsize} + 8 ;" \
> +                "setexpr spl_imgaddr ${spladdr} - 8 ;" \
> +                "setexpr spl_addr_tmp ${spladdr} - 4 ;" \
> +                "mw.b ${spl_imgaddr} 0x00 ${spl_imgsize};run
> loaduimage;" \
> +                "setenv bootargs
> root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \
> +                "${lpj} rootwait ${console} ${meminfo} ${opts}
> ${lcdinfo};" \
> +                "spl export atags 0x40007FC0;" \
> +                "crc32 ${spladdr} ${splsize} ${spl_imgaddr};" \
> +                "mw.l ${spl_addr_tmp} ${splsize};" \
> +                "ext4write mmc ${mmcdev}:${mmcbootpart}" \
> +                " /${splfile} ${spl_imgaddr} ${spl_imgsize};" \
> +                "setenv spl_imgsize;" \
> +                "setenv spl_imgaddr;" \
> +                "setenv spl_addr_tmp;\0"
>  
>  /* Miscellaneous configurable options */
>  #define CONFIG_SYS_LONGHELP          /* undef to save memory */
> @@ -207,11 +225,18 @@
>  #define CONFIG_ENV_OFFSET            ((32 - 4) << 10) /* 32KiB -
> 4KiB */ 
>  #define CONFIG_DOS_PARTITION
> +#define CONFIG_EFI_PARTITION
> +
> +/* EXT4 */
> +#define CONFIG_CMD_EXT4
> +#define CONFIG_CMD_EXT4_WRITE
> +/* Falcon mode definitions */
> +#define CONFIG_CMD_SPL
> +#define CONFIG_SYS_SPL_ARGS_ADDR        PHYS_SDRAM_1 + 0x100
>  
>  #define CONFIG_SYS_INIT_SP_ADDR      (CONFIG_SYS_LOAD_ADDR -
> GENERATED_GBL_DATA_SIZE) #define CONFIG_SYS_CACHELINE_SIZE       32
>  
> -
>  #define CONFIG_SOFT_I2C
>  #define CONFIG_SOFT_I2C_READ_REPEATED_START
>  #define CONFIG_SYS_I2C_INIT_BOARD



-- 
Best regards,

Lukasz Majewski

Samsung Poland R&D Center | Linux Platform Group
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to