[U-Boot] [PATCH 2/2] arm64: zynqmp: Define distro boot commnads for qspi and nand

Alexander Graf agraf at suse.de
Fri Jan 25 11:25:31 UTC 2019



On 24.01.19 16:31, Michal Simek wrote:
> From: Siva Durga Prasad Paladugu <siva.durga.paladugu at xilinx.com>
> 
> This patch adds distro boot commands for qspi and nand. The
> distro boot commands now reads the script from flash offset
> of 63.5MB and executes it.
> 
> Setup default location via script_offset_f to 63.5MB to match the most
> xilinx reference boards. 512kB allocated space for script size
> (script_size_f) should be more than enough to cover custom boot logic.
> 
> Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu at xilinx.com>
> Signed-off-by: Michal Simek <michal.simek at xilinx.com>
> ---
> 
>  include/configs/xilinx_zynqmp.h | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
> 
> diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
> index d0515fa9bc46..5eeae6331e1c 100644
> --- a/include/configs/xilinx_zynqmp.h
> +++ b/include/configs/xilinx_zynqmp.h
> @@ -129,6 +129,8 @@
>  	"kernel_addr_r=0x18000000\0" \
>  	"scriptaddr=0x02000000\0" \
>  	"ramdisk_addr_r=0x02100000\0" \
> +	"script_offset_f=0x3e80000\0" \
> +	"script_size_f=0x80000\0" \
>  
>  #if defined(CONFIG_MMC_SDHCI_ZYNQ)
>  # define BOOT_TARGET_DEVICES_MMC(func)	func(MMC, mmc, 0) func(MMC, mmc, 1)
> @@ -160,8 +162,38 @@
>  # define BOOT_TARGET_DEVICES_DHCP(func)
>  #endif
>  
> +#if defined(CONFIG_ZYNQMP_GQSPI)
> +# define BOOT_TARGET_DEVICES_QSPI(func)	func(QSPI, qspi, 0)
> +#else
> +# define BOOT_TARGET_DEVICES_QSPI(func)
> +#endif
> +
> +#if defined(CONFIG_NAND_ARASAN)
> +# define BOOT_TARGET_DEVICES_NAND(func)	func(NAND, nand, 0)
> +#else
> +# define BOOT_TARGET_DEVICES_NAND(func)
> +#endif
> +
> +#define BOOTENV_DEV_QSPI(devtypeu, devtypel, instance) \
> +	"bootcmd_qspi0=sf probe 0 0 0 && " \

This

> +		       "sf read $scriptaddr $script_offset_f $script_size_f && " \
> +		       "source ${scriptaddr}; echo SCRIPT FAILED: continuing...;\0"
> +
> +#define BOOTENV_DEV_NAME_QSPI(devtypeu, devtypel, instance) \
> +	"qspi "
> +
> +#define BOOTENV_DEV_NAND(devtypeu, devtypel, instance) \
> +	"bootcmd_nand0= nand info && " \

and this will emit errors if no device was found, right? That might be
confusing for a user, if all he sees is a scary "device not found"
message which simply only occurs because he doesn't have nand populated.


Alex

> +		       "nand read $scriptaddr $script_offset_f $script_size_f && " \
> +		       "source ${scriptaddr}; echo SCRIPT FAILED: continuing...;\0"
> +
> +#define BOOTENV_DEV_NAME_NAND(devtypeu, devtypel, instance) \
> +	"nand "
> +
>  #define BOOT_TARGET_DEVICES(func) \
>  	BOOT_TARGET_DEVICES_MMC(func) \
> +	BOOT_TARGET_DEVICES_QSPI(func) \
> +	BOOT_TARGET_DEVICES_NAND(func) \
>  	BOOT_TARGET_DEVICES_USB(func) \
>  	BOOT_TARGET_DEVICES_SCSI(func) \
>  	BOOT_TARGET_DEVICES_PXE(func) \
> 


More information about the U-Boot mailing list