[PATCH v2] board: freescale: p1_p2_rdb_pc: Add env commands norlowerboot, norupperboot, sd2boot and defboot

Peng Fan (OSS) peng.fan at oss.nxp.com
Thu Jun 16 11:01:50 CEST 2022



在 2022/4/25 22:50, Pali Rohár 写道:
> All *boot env commands overrides default boot source location via i2c.
> After board reset without power off, BootROM then starts booting U-Boot
> from this specified location instead of the default one.
>
> Add new env command defboot which reverts boot location to the default
> value, which in most cases is configurable by HW DIP switches.
>
> And add new env commands norlowerboot, norupperboot, sd2boot to boot from
> other locations. norlowerboot would instruct BootROM to boot from lower NOR
> bank, norupperboot from upper NOR bank and sd2boot from SD card with
> alternative configuration.
>
> Signed-off-by: Pali Rohár <pali at kernel.org>

Not able to apply this patch. Please new version.

Thanks,
Peng.
> ---
> Changes in v2:
> * Fix commit message
> * Adapt code to use p1_p2_bootsrc.h
> ---
>   include/configs/p1_p2_bootsrc.h | 20 ++++++++++++++++++++
>   include/configs/p1_p2_rdb_pc.h  | 13 +++++++++++++
>   2 files changed, 33 insertions(+)
>
> diff --git a/include/configs/p1_p2_bootsrc.h b/include/configs/p1_p2_bootsrc.h
> index a274c57786f5..60741ef544c0 100644
> --- a/include/configs/p1_p2_bootsrc.h
> +++ b/include/configs/p1_p2_bootsrc.h
> @@ -30,6 +30,18 @@
>   #define RST_NOR_CMD(var, ...) ""
>   #endif
>   
> +#ifdef __SW_BOOT_NOR_BANK_LO
> +#define RST_NOR_LO_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(__SW_BOOT_NOR_BANK_LO, __SW_BOOT_MASK))
> +#else
> +#define RST_NOR_LO_CMD(var, ...) ""
> +#endif
> +
> +#ifdef __SW_BOOT_NOR_BANK_UP
> +#define RST_NOR_UP_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(__SW_BOOT_NOR_BANK_UP, __SW_BOOT_MASK))
> +#else
> +#define RST_NOR_UP_CMD(var, ...) ""
> +#endif
> +
>   #ifdef __SW_BOOT_SPI
>   #define RST_SPI_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(__SW_BOOT_SPI, __SW_BOOT_MASK))
>   #else
> @@ -42,6 +54,12 @@
>   #define RST_SD_CMD(var, ...) ""
>   #endif
>   
> +#ifdef __SW_BOOT_SD2
> +#define RST_SD2_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(__SW_BOOT_SD2, __SW_BOOT_MASK))
> +#else
> +#define RST_SD2_CMD(var, ...) ""
> +#endif
> +
>   #ifdef __SW_BOOT_NAND
>   #define RST_NAND_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(__SW_BOOT_NAND, __SW_BOOT_MASK))
>   #else
> @@ -53,3 +71,5 @@
>   #else
>   #define RST_PCIE_CMD(var, ...) ""
>   #endif
> +
> +#define RST_DEF_CMD(var, ...) __VAR_CMD_RST(var, __VA_ARGS__ __BOOTSRC_CMD(0x00, 0xff))
> diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
> index 47bd20eeeafb..50ce2d9aaed4 100644
> --- a/include/configs/p1_p2_rdb_pc.h
> +++ b/include/configs/p1_p2_rdb_pc.h
> @@ -25,6 +25,9 @@
>   #define __SW_NOR_BANK_MASK	0xfd
>   #define __SW_NOR_BANK_UP	0x00
>   #define __SW_NOR_BANK_LO	0x02
> +#define __SW_BOOT_NOR_BANK_UP	0x5c /* (__SW_BOOT_NOR | __SW_NOR_BANK_UP) */
> +#define __SW_BOOT_NOR_BANK_LO	0x5e /* (__SW_BOOT_NOR | __SW_NOR_BANK_LO) */
> +#define __SW_BOOT_NOR_BANK_MASK	0x01 /* (__SW_BOOT_MASK & __SW_NOR_BANK_MASK) */
>   #define CONFIG_SYS_L2_SIZE	(256 << 10)
>   #endif
>   
> @@ -54,6 +57,9 @@
>   #define __SW_NOR_BANK_MASK	0xfd
>   #define __SW_NOR_BANK_UP	0x00
>   #define __SW_NOR_BANK_LO	0x02
> +#define __SW_BOOT_NOR_BANK_UP	0x64 /* (__SW_BOOT_NOR | __SW_NOR_BANK_UP) */
> +#define __SW_BOOT_NOR_BANK_LO	0x66 /* (__SW_BOOT_NOR | __SW_NOR_BANK_LO) */
> +#define __SW_BOOT_NOR_BANK_MASK	0x01 /* (__SW_BOOT_MASK & __SW_NOR_BANK_MASK) */
>   #define CONFIG_SYS_L2_SIZE	(256 << 10)
>   /*
>    * Dynamic MTD Partition support with mtdparts
> @@ -73,6 +79,9 @@
>   #define __SW_NOR_BANK_MASK	0xfd
>   #define __SW_NOR_BANK_UP	0x00
>   #define __SW_NOR_BANK_LO	0x02
> +#define __SW_BOOT_NOR_BANK_UP	0xc8 /* (__SW_BOOT_NOR | __SW_NOR_BANK_UP) */
> +#define __SW_BOOT_NOR_BANK_LO	0xca /* (__SW_BOOT_NOR | __SW_NOR_BANK_LO) */
> +#define __SW_BOOT_NOR_BANK_MASK	0x01 /* (__SW_BOOT_MASK & __SW_NOR_BANK_MASK) */
>   #define CONFIG_SYS_L2_SIZE	(512 << 10)
>   /*
>    * Dynamic MTD Partition support with mtdparts
> @@ -605,10 +614,14 @@ __VSCFW_ADDR	\
>   MAP_NOR_LO_CMD(map_lowernorbank) \
>   MAP_NOR_UP_CMD(map_uppernorbank) \
>   RST_NOR_CMD(norboot) \
> +RST_NOR_LO_CMD(norlowerboot) \
> +RST_NOR_UP_CMD(norupperboot) \
>   RST_SPI_CMD(spiboot) \
>   RST_SD_CMD(sdboot) \
> +RST_SD2_CMD(sd2boot) \
>   RST_NAND_CMD(nandboot) \
>   RST_PCIE_CMD(pciboot) \
> +RST_DEF_CMD(defboot) \
>   ""
>   
>   #define CONFIG_USB_FAT_BOOT	\



More information about the U-Boot mailing list