From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rajesh Bhagat Date: Thu, 4 Oct 2018 11:30:40 +0000 Subject: [U-Boot] [PATCH 19/53] armv8: fsl-layerscape: bootcmd identification for TFABOOT. In-Reply-To: References: <20181003113736.14981-1-rajesh.bhagat@nxp.com> <20181003113736.14981-20-rajesh.bhagat@nxp.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de > -----Original Message----- > From: York Sun > Sent: Wednesday, October 3, 2018 9:54 PM > To: Rajesh Bhagat ; u-boot at lists.denx.de > Cc: Prabhakar Kushwaha ; Pankit Garg > > Subject: Re: [PATCH 19/53] armv8: fsl-layerscape: bootcmd identification for > TFABOOT. > > First, remove the period in subject. > Will take care in v2. > On 10/03/2018 04:39 AM, Rajesh Bhagat wrote: > > From: Pankit Garg > > > > Adds bootcmd identificaton on basis on boot source, valid in TFABOOT > > configuration. > > > > Signed-off-by: Rajesh Bhagat > > Signed-off-by: Pankit Garg > > --- > > arch/arm/cpu/armv8/fsl-layerscape/soc.c | 69 > > +++++++++++++++++++++++++ > > 1 file changed, 69 insertions(+) > > > > diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c > > b/arch/arm/cpu/armv8/fsl-layerscape/soc.c > > index 3f15cb08ff..1e701c58df 100644 > > --- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c > > +++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c > > @@ -679,12 +679,81 @@ int qspi_ahb_init(void) } #endif > > > > +#ifdef CONFIG_TFABOOT > > +#define MAX_BOOTCMD_SIZE 256 > > + > > +int fsl_setenv_bootcmd(void) > > +{ > > + int ret; > > + enum boot_src src = get_boot_src(); > > + char bootcmd_str[MAX_BOOTCMD_SIZE]; > > + > > + switch (src) { > > +#ifdef IFC_NOR_BOOTCOMMAND > > + case BOOT_SOURCE_IFC_NOR: > > + sprintf(bootcmd_str, IFC_NOR_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef QSPI_NOR_BOOTCOMMAND > > + case BOOT_SOURCE_QSPI_NOR: > > + sprintf(bootcmd_str, QSPI_NOR_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef XSPI_NOR_BOOTCOMMAND > > + case BOOT_SOURCE_XSPI_NOR: > > + sprintf(bootcmd_str, XSPI_NOR_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef IFC_NAND_BOOTCOMMAND > > + case BOOT_SOURCE_IFC_NAND: > > + sprintf(bootcmd_str, IFC_NAND_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef QSPI_NAND_BOOTCOMMAND > > + case BOOT_SOURCE_QSPI_NAND: > > + sprintf(bootcmd_str, QSPI_NAND_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef XSPI_NAND_BOOTCOMMAND > > + case BOOT_SOURCE_XSPI_NAND: > > + sprintf(bootcmd_str, XSPI_NAND_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef SD_BOOTCOMMAND > > + case BOOT_SOURCE_SD_MMC: > > + sprintf(bootcmd_str, SD_BOOTCOMMAND); > > + break; > > +#endif > > +#ifdef SD2_BOOTCOMMAND > > + case BOOT_SOURCE_SD_MMC2: > > + sprintf(bootcmd_str, SD2_BOOTCOMMAND); > > + break; > > +#endif > > + default: > > +#ifdef QSPI_NOR_BOOTCOMMAND > > + sprintf(bootcmd_str, QSPI_NOR_BOOTCOMMAND); #endif > > + break; > > + } > > + > > + ret = env_set("bootcmd", bootcmd_str); > > + if (ret) { > > + printf("Failed to set bootcmd: ret = %d\n", ret); > > + return ret; > > + } > > + return 0; > > +} > > +#endif > > + > > #ifdef CONFIG_BOARD_LATE_INIT > > int board_late_init(void) > > { > > #ifdef CONFIG_CHAIN_OF_TRUST > > fsl_setenv_chain_of_trust(); > > #endif > > +#ifdef CONFIG_TFABOOT > > + fsl_setenv_bootcmd(); > > +#endif > > #ifdef CONFIG_QSPI_AHB_INIT > > qspi_ahb_init(); > > #endif > > > > Shouldn't you check if such variable is valid? I think you should not overwrite > this variable if user has already set it. > Will take care in v2. > York