[PATCH v2 1/3] include: environment: ti: Use .env for environment variables

Add K3 common environment variables to .env. We retain the old-style C environment .h files to maintain compatibility with other K3 boards that have not moved to using .env yet.
Signed-off-by: Neha Malcom Francis n-francis@ti.com --- Changes in v2: - removed addition of dfu.env as none of the K3 boards use it - removed CONFIG_CMD_REMOTEPROC guard - removed CFG_SYS_SDRAM_BASE
include/environment/ti/k3_dfu.env | 30 +++++++++++ include/environment/ti/k3_rproc.env | 26 +++++++++ include/environment/ti/mmc.env | 61 ++++++++++++++++++++++ include/environment/ti/nand.env | 14 +++++ include/environment/ti/ti_armv7_common.env | 24 +++++++++ include/environment/ti/ufs.env | 22 ++++++++ 6 files changed, 177 insertions(+) create mode 100644 include/environment/ti/k3_dfu.env create mode 100644 include/environment/ti/k3_rproc.env create mode 100644 include/environment/ti/mmc.env create mode 100644 include/environment/ti/nand.env create mode 100644 include/environment/ti/ti_armv7_common.env create mode 100644 include/environment/ti/ufs.env
diff --git a/include/environment/ti/k3_dfu.env b/include/environment/ti/k3_dfu.env new file mode 100644 index 0000000000..201529636c --- /dev/null +++ b/include/environment/ti/k3_dfu.env @@ -0,0 +1,30 @@ +dfu_alt_info_mmc= + boot part 1 1; + rootfs part 1 2; + tiboot3.bin fat 1 1; + tispl.bin fat 1 1; + u-boot.img fat 1 1; + uEnv.txt fat 1 1; + sysfw.itb fat 1 1 + +dfu_alt_info_emmc= + rawemmc raw 0 0x800000 mmcpart 1; + rootfs part 0 1 mmcpart 0; + tiboot3.bin.raw raw 0x0 0x400 mmcpart 1; + tispl.bin.raw raw 0x400 0x1000 mmcpart 1; + u-boot.img.raw raw 0x1400 0x2000 mmcpart 1; + u-env.raw raw 0x3400 0x100 mmcpart 1; + sysfw.itb.raw raw 0x3600 0x800 mmcpart 1 + +dfu_alt_info_ospi= + tiboot3.bin raw 0x0 0x080000; + tispl.bin raw 0x080000 0x200000; + u-boot.img raw 0x280000 0x400000; + u-boot-env raw 0x680000 0x020000; + sysfw.itb raw 0x6c0000 0x100000; + rootfs raw 0x800000 0x3800000 + +dfu_alt_info_ram= + tispl.bin ram 0x80080000 0x200000; + u-boot.img ram 0x81000000 0x400000 + diff --git a/include/environment/ti/k3_rproc.env b/include/environment/ti/k3_rproc.env new file mode 100644 index 0000000000..21dad7b241 --- /dev/null +++ b/include/environment/ti/k3_rproc.env @@ -0,0 +1,26 @@ +dorprocboot=0 +boot_rprocs= + if test ${dorprocboot} -eq 1 && test ${boot} = mmc; then + rproc init; + run boot_rprocs_mmc; + fi; +rproc_load_and_boot_one= + if load mmc ${bootpart} $loadaddr ${rproc_fw}; then + if rproc load ${rproc_id} ${loadaddr} ${filesize}; then + rproc start ${rproc_id} + fi; + fi +boot_rprocs_mmc= + env set rproc_id; + env set rproc_fw; + for i in ${rproc_fw_binaries} ; do + if test -z ${rproc_id} ; then + env set rproc_id $i; + else + env set rproc_fw $i; + run rproc_load_and_boot_one; + env set rproc_id; + env set rproc_fw; + fi; + done + diff --git a/include/environment/ti/mmc.env b/include/environment/ti/mmc.env new file mode 100644 index 0000000000..5677d057d8 --- /dev/null +++ b/include/environment/ti/mmc.env @@ -0,0 +1,61 @@ +mmcdev=0 +mmcrootfstype=ext4 rootwait +finduuid=part uuid ${boot} ${bootpart} uuid +args_mmc=run finduuid;setenv bootargs console=${console} + ${optargs} + root=PARTUUID=${uuid} rw + rootfstype=${mmcrootfstype} +loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr +bootscript=echo Running bootscript from mmc${mmcdev} ...; + source ${loadaddr} +bootenvfile=uEnv.txt +importbootenv=echo Importing environment from mmc${mmcdev} ...; + env import -t ${loadaddr} ${filesize} +loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenvfile} +loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile} +loadfdt=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile} +envboot=mmc dev ${mmcdev}; + if mmc rescan; then + echo SD/MMC found on device ${mmcdev}; + if run loadbootscript; then + run bootscript; + else + if run loadbootenv; then + echo Loaded env from ${bootenvfile}; + run importbootenv; + fi; + if test -n $uenvcmd; then + echo Running uenvcmd ...; + run uenvcmd; + fi; + fi; + fi; +mmcloados= + if test ${boot_fdt} = yes || test ${boot_fdt} = try; then + if run loadfdt; then + bootz ${loadaddr} - ${fdtaddr}; + else + if test ${boot_fdt} = try; then + bootz; + else + echo WARN: Cannot load the DT; + fi; + fi; + else + bootz; + fi; +mmcboot=mmc dev ${mmcdev}; + devnum=${mmcdev}; + devtype=mmc; + if mmc rescan; then + echo SD/MMC found on device ${mmcdev}; + if run loadimage; then + run args_mmc; + if test ${boot_fit} -eq 1; then + run run_fit; + else + run mmcloados; + fi; + fi; +fi; + diff --git a/include/environment/ti/nand.env b/include/environment/ti/nand.env new file mode 100644 index 0000000000..4e185c1b5f --- /dev/null +++ b/include/environment/ti/nand.env @@ -0,0 +1,14 @@ +mtdids=nor0=47040000.spi.0,nor0=47034000.hyperbus +mtdparts=mtdparts=47040000.spi.0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),57088k@8m(ospi.rootfs),256k(ospi.phypattern);47034000.hyperbus:512k(hbmc.tiboot3),2m(hbmc.tispl),4m(hbmc.u-boot),256k(hbmc.env),-@8m(hbmc.rootfs) +nandargs=setenv bootargs console=${console} + ${optargs} + root=${nandroot} + rootfstype=${nandrootfstype} +nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048 +nandrootfstype=ubifs rootwait +nandboot=echo Booting from nand ...; + run nandargs; + nand read ${fdtaddr} NAND.u-boot-spl-os; + nand read ${loadaddr} NAND.kernel; + bootz ${loadaddr} - ${fdtaddr} + diff --git a/include/environment/ti/ti_armv7_common.env b/include/environment/ti/ti_armv7_common.env new file mode 100644 index 0000000000..4d334648c0 --- /dev/null +++ b/include/environment/ti/ti_armv7_common.env @@ -0,0 +1,24 @@ +loadaddr=0x82000000 +kernel_addr_r=0x82000000 +fdtaddr=0x88000000 +dtboaddr=0x89000000 +fdt_addr_r=0x88000000 +fdtoverlay_addr_r=0x89000000 +rdaddr=0x88080000 +ramdisk_addr_r=0x88080000 +scriptaddr=0x80000000 +pxefile_addr_r=0x80100000 +bootm_size=0x10000000 +boot_fdt=try + +boot_fit=0 +addr_fit=0x90000000 +name_fit=fitImage +update_to_fit=setenv loadaddr ${addr_fit}; setenv bootfile ${name_fit} +get_overlaystring= + for overlay in $name_overlays; + do; + setenv overlaystring ${overlaystring}'#'${overlay}; + done; +run_fit=bootm ${addr_fit}#conf-${fdtfile}${overlaystring} + diff --git a/include/environment/ti/ufs.env b/include/environment/ti/ufs.env new file mode 100644 index 0000000000..509a87b89e --- /dev/null +++ b/include/environment/ti/ufs.env @@ -0,0 +1,22 @@ +scsirootfstype=ext4 rootwait +ufs_finduuid=part uuid scsi ${bootpart} uuid +args_ufs=setenv devtype scsi;setenv bootpart 1:1; + run ufs_finduuid; + setenv bootargs console = ${console} + ${optargs} + root=PARTUUID=${uuid} rw + rootfstype=${scsirootfstype}; + setenv devtype scsi; + setenv bootpart 1:1 +init_ufs=ufs init; scsi scan; run args_ufs +get_kern_ufs=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${name_kern} +get_fdt_ufs=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile} +get_overlay_ufs= + fdt address ${fdtaddr}; + fdt resize 0x100000; + for overlay in $name_overlays; + do; + load scsi ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && + fdt apply ${dtboaddr}; + done; +

Move to using .env file for setting up environment variables for J721S2.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com --- Changes in v2: - Added CONFIG_CMD_REMOTEPROC guard to including k3_rproc.env - Retained Reviewed-by tag
board/ti/j721s2/Kconfig | 6 ++ board/ti/j721s2/j721s2.env | 56 +++++++++++++++++ include/configs/j721s2_evm.h | 118 +---------------------------------- 3 files changed, 63 insertions(+), 117 deletions(-) create mode 100644 board/ti/j721s2/j721s2.env
diff --git a/board/ti/j721s2/Kconfig b/board/ti/j721s2/Kconfig index 6141798333..70972d1227 100644 --- a/board/ti/j721s2/Kconfig +++ b/board/ti/j721s2/Kconfig @@ -40,6 +40,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721s2_evm"
+config ENV_SOURCE_FILE + default "j721s2" + source "board/ti/common/Kconfig"
endif @@ -55,6 +58,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721s2_evm"
+config ENV_SOURCE_FILE + default "j721s2" + source "board/ti/common/Kconfig"
endif diff --git a/board/ti/j721s2/j721s2.env b/board/ti/j721s2/j721s2.env new file mode 100644 index 0000000000..2152f8849f --- /dev/null +++ b/board/ti/j721s2/j721s2.env @@ -0,0 +1,56 @@ +#include <environment/ti/ti_armv7_common.env> +#include <environment/ti/mmc.env> +#include <environment/ti/ufs.env> +#include <environment/ti/k3_dfu.env> + +#if CONFIG_CMD_REMOTEPROC +#include <environment/ti/k3_rproc.env> +#endif + +default_device_tree=k3-j721s2-common-proc-board.dtb +findfdt= + setenv name_fdt ${default_device_tree}; + if test $board_name = j721s2; then \ + setenv name_fdt k3-j721s2-common-proc-board.dtb; fi; + if test $board_name = am68-sk; then + setenv name_fdt k3-am68-sk-base-board.dtb; fi; + setenv fdtfile ${name_fdt} +name_kern=Image +console=ttyS2,115200n8 +args_all=setenv optargs earlycon=ns16550a,mmio32,0x02880000 + ${mtdparts} +run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr} + +boot=mmc +mmcdev=1 +bootpart=1:2 +bootdir=/boot +#if CONFIG_SYS_K3_SPL_ATF +#if CONFIG_TARGET_J721S2_R5_EVM +addr_mcur5f0_0load=0x89000000 +name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw +#endif +#endif +rd_spec=- +init_mmc=run args_all args_mmc +get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt} +get_overlay_mmc= + fdt address ${fdtaddr}; + fdt resize 0x100000; + for overlay in $name_overlays; + do; + load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && + fdt apply ${dtboaddr}; + done; +partitions=uuid_disk=${uuid_gpt_disk}; + name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs} +get_kern_mmc=load mmc ${bootpart} ${loadaddr} + ${bootdir}/${name_kern} +get_fit_mmc=load mmc ${bootpart} ${addr_fit} + ${bootdir}/${name_fit} +partitions=uuid_disk=${uuid_gpt_disk}; + name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs} + +rproc_fw_binaries= 2 /lib/firmware/j721s2-main-r5f0_0-fw 3 /lib/firmware/j721s2-main-r5f0_1-fw 4 /lib/firmware/j721s2-main-r5f1_0-fw 5 /lib/firmware/j721s2-main-r5f1_1-fw 6 /lib/firmware/j721s2-c71_0-fw 7 /lib/firmware/j721s2-c71_1-fw + + diff --git a/include/configs/j721s2_evm.h b/include/configs/j721s2_evm.h index bfada9eebc..2fa93b7961 100644 --- a/include/configs/j721s2_evm.h +++ b/include/configs/j721s2_evm.h @@ -11,10 +11,6 @@
#include <linux/sizes.h> #include <config_distro_bootcmd.h> -#include <environment/ti/mmc.h> -#include <environment/ti/k3_rproc.h> -#include <environment/ti/ufs.h> -#include <environment/ti/k3_dfu.h>
/* DDR Configuration */ #define CFG_SYS_SDRAM_BASE1 0x880000000 @@ -27,120 +23,8 @@ #define CFG_SYS_UBOOT_BASE 0x50080000 #endif
-/* U-Boot general configuration */ -#define EXTRA_ENV_J721S2_BOARD_SETTINGS \ - "default_device_tree=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \ - "findfdt=" \ - "setenv name_fdt ${default_device_tree};" \ - "if test $board_name = j721s2; then " \ - "setenv name_fdt k3-j721s2-common-proc-board.dtb; fi;" \ - "if test $board_name = am68-sk; then " \ - "setenv name_fdt k3-am68-sk-base-board.dtb; fi;"\ - "setenv fdtfile ${name_fdt}\0" \ - "name_kern=Image\0" \ - "console=ttyS2,115200n8\0" \ - "args_all=setenv optargs earlycon=ns16550a,mmio32,0x02880000 " \ - "${mtdparts}\0" \ - "run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr}\0" - -#define PARTS_DEFAULT \ - /* Linux partitions */ \ - "uuid_disk=${uuid_gpt_disk};" \ - "name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}\0" - -#ifdef CONFIG_SYS_K3_SPL_ATF -#if defined(CONFIG_TARGET_J721S2_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "addr_mcur5f0_0load=0x89000000\0" \ - "name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw\0" -#elif defined(CONFIG_TARGET_J7200_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "addr_mcur5f0_0load=0x89000000\0" \ - "name_mcur5f0_0fw=/lib/firmware/j7200-mcu-r5f0_0-fw\0" -#endif /* CONFIG_TARGET_J721S2_R5_EVM */ -#else -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC "" -#endif /* CONFIG_SYS_K3_SPL_ATF */ - -/* U-Boot MMC-specific configuration */ -#define EXTRA_ENV_J721S2_BOARD_SETTINGS_MMC \ - "boot=mmc\0" \ - "mmcdev=1\0" \ - "bootpart=1:2\0" \ - "bootdir=/boot\0" \ - EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "rd_spec=-\0" \ - "init_mmc=run args_all args_mmc\0" \ - "get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt}\0" \ - "get_overlay_mmc=" \ - "fdt address ${fdtaddr};" \ - "fdt resize 0x100000;" \ - "for overlay in $name_overlays;" \ - "do;" \ - "load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && " \ - "fdt apply ${dtboaddr};" \ - "done;\0" \ - "partitions=" PARTS_DEFAULT \ - "get_kern_mmc=load mmc ${bootpart} ${loadaddr} " \ - "${bootdir}/${name_kern}\0" \ - "get_fit_mmc=load mmc ${bootpart} ${addr_fit} " \ - "${bootdir}/${name_fit}\0" \ - "partitions=" PARTS_DEFAULT - -/* Set the default list of remote processors to boot */ -#if defined(CONFIG_TARGET_J721S2_A72_EVM) || defined(CONFIG_TARGET_J7200_A72_EVM) -#ifdef DEFAULT_RPROCS -#undef DEFAULT_RPROCS -#endif -#endif - -#ifdef CONFIG_TARGET_J721S2_A72_EVM -#define DEFAULT_RPROCS "" \ - "2 /lib/firmware/j721s2-main-r5f0_0-fw " \ - "3 /lib/firmware/j721s2-main-r5f0_1-fw " \ - "4 /lib/firmware/j721s2-main-r5f1_0-fw " \ - "5 /lib/firmware/j721s2-main-r5f1_1-fw " \ - "6 /lib/firmware/j721s2-c71_0-fw " \ - "7 /lib/firmware/j721s2-c71_1-fw " -#endif /* CONFIG_TARGET_J721S2_A72_EVM */ - -#ifdef CONFIG_TARGET_J7200_A72_EVM -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY \ - "do_main_cpsw0_qsgmii_phyinit=1\0" \ - "init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17;" \ - "gpio clear gpio@22_16\0" \ - "main_cpsw0_qsgmii_phyinit=" \ - "if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && " \ - "test ${boot} = mmc; then " \ - "run init_main_cpsw0_qsgmii_phy;" \ - "fi;\0" -#define DEFAULT_RPROCS "" \ - "2 /lib/firmware/j7200-main-r5f0_0-fw " \ - "3 /lib/firmware/j7200-main-r5f0_1-fw " -#endif /* CONFIG_TARGET_J7200_A72_EVM */ - -#ifndef EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#endif - -/* set default dfu_bufsiz to 128KB (sector size of OSPI) */ -#define EXTRA_ENV_DFUARGS \ - DFU_ALT_INFO_MMC \ - DFU_ALT_INFO_EMMC \ - DFU_ALT_INFO_RAM \ - DFU_ALT_INFO_OSPI - /* Incorporate settings into the U-Boot environment */ -#define CFG_EXTRA_ENV_SETTINGS \ - DEFAULT_LINUX_BOOT_ENV \ - DEFAULT_MMC_TI_ARGS \ - DEFAULT_FIT_TI_ARGS \ - EXTRA_ENV_J721S2_BOARD_SETTINGS \ - EXTRA_ENV_J721S2_BOARD_SETTINGS_MMC \ - EXTRA_ENV_RPROC_SETTINGS \ - EXTRA_ENV_DFUARGS \ - DEFAULT_UFS_TI_ARGS \ - EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY +#define CFG_EXTRA_ENV_SETTINGS
/* Now for the remaining common defines */ #include <configs/ti_armv7_common.h>

Hi Neha,
Thanks for the patch. On 15/03/23 10:57, Neha Malcom Francis wrote:
Move to using .env file for setting up environment variables for J721S2.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Changes in v2:
- Added CONFIG_CMD_REMOTEPROC guard to including k3_rproc.env
- Retained Reviewed-by tag
board/ti/j721s2/Kconfig | 6 ++ board/ti/j721s2/j721s2.env | 56 +++++++++++++++++ include/configs/j721s2_evm.h | 118 +---------------------------------- 3 files changed, 63 insertions(+), 117 deletions(-) create mode 100644 board/ti/j721s2/j721s2.env
diff --git a/board/ti/j721s2/Kconfig b/board/ti/j721s2/Kconfig index 6141798333..70972d1227 100644 --- a/board/ti/j721s2/Kconfig +++ b/board/ti/j721s2/Kconfig @@ -40,6 +40,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721s2_evm"
+config ENV_SOURCE_FILE
default "j721s2"
source "board/ti/common/Kconfig"
endif
@@ -55,6 +58,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721s2_evm"
+config ENV_SOURCE_FILE
default "j721s2"
source "board/ti/common/Kconfig"
endif
diff --git a/board/ti/j721s2/j721s2.env b/board/ti/j721s2/j721s2.env new file mode 100644 index 0000000000..2152f8849f --- /dev/null +++ b/board/ti/j721s2/j721s2.env @@ -0,0 +1,56 @@ +#include <environment/ti/ti_armv7_common.env> +#include <environment/ti/mmc.env> +#include <environment/ti/ufs.env> +#include <environment/ti/k3_dfu.env>
+#if CONFIG_CMD_REMOTEPROC +#include <environment/ti/k3_rproc.env> +#endif
+default_device_tree=k3-j721s2-common-proc-board.dtb +findfdt=
- setenv name_fdt ${default_device_tree};
- if test $board_name = j721s2; then \
setenv name_fdt k3-j721s2-common-proc-board.dtb; fi;
- if test $board_name = am68-sk; then
setenv name_fdt k3-am68-sk-base-board.dtb; fi;
- setenv fdtfile ${name_fdt}
+name_kern=Image +console=ttyS2,115200n8 +args_all=setenv optargs earlycon=ns16550a,mmio32,0x02880000
- ${mtdparts}
+run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr}
+boot=mmc +mmcdev=1 +bootpart=1:2 +bootdir=/boot +#if CONFIG_SYS_K3_SPL_ATF +#if CONFIG_TARGET_J721S2_R5_EVM +addr_mcur5f0_0load=0x89000000 +name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw +#endif +#endif +rd_spec=- +init_mmc=run args_all args_mmc +get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt} +get_overlay_mmc=
- fdt address ${fdtaddr};
- fdt resize 0x100000;
- for overlay in $name_overlays;
- do;
- load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} &&
- fdt apply ${dtboaddr};
- done;
+partitions=uuid_disk=${uuid_gpt_disk};
- name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}
+get_kern_mmc=load mmc ${bootpart} ${loadaddr}
- ${bootdir}/${name_kern}
+get_fit_mmc=load mmc ${bootpart} ${addr_fit}
- ${bootdir}/${name_fit}
+partitions=uuid_disk=${uuid_gpt_disk};
- name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}
+rproc_fw_binaries= 2 /lib/firmware/j721s2-main-r5f0_0-fw 3 /lib/firmware/j721s2-main-r5f0_1-fw 4 /lib/firmware/j721s2-main-r5f1_0-fw 5 /lib/firmware/j721s2-main-r5f1_1-fw 6 /lib/firmware/j721s2-c71_0-fw 7 /lib/firmware/j721s2-c71_1-fw
You have two extra lines at the end of the file.
diff --git a/include/configs/j721s2_evm.h b/include/configs/j721s2_evm.h index bfada9eebc..2fa93b7961 100644 --- a/include/configs/j721s2_evm.h +++ b/include/configs/j721s2_evm.h @@ -11,10 +11,6 @@
#include <linux/sizes.h> #include <config_distro_bootcmd.h> -#include <environment/ti/mmc.h> -#include <environment/ti/k3_rproc.h> -#include <environment/ti/ufs.h> -#include <environment/ti/k3_dfu.h>
/* DDR Configuration */ #define CFG_SYS_SDRAM_BASE1 0x880000000 @@ -27,120 +23,8 @@ #define CFG_SYS_UBOOT_BASE 0x50080000 #endif
-/* U-Boot general configuration */ -#define EXTRA_ENV_J721S2_BOARD_SETTINGS \
- "default_device_tree=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
- "findfdt=" \
"setenv name_fdt ${default_device_tree};" \
"if test $board_name = j721s2; then " \
"setenv name_fdt k3-j721s2-common-proc-board.dtb; fi;" \
"if test $board_name = am68-sk; then " \
"setenv name_fdt k3-am68-sk-base-board.dtb; fi;"\
"setenv fdtfile ${name_fdt}\0" \
- "name_kern=Image\0" \
- "console=ttyS2,115200n8\0" \
- "args_all=setenv optargs earlycon=ns16550a,mmio32,0x02880000 " \
"${mtdparts}\0" \
- "run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr}\0"
-#define PARTS_DEFAULT \
- /* Linux partitions */ \
- "uuid_disk=${uuid_gpt_disk};" \
- "name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}\0"
-#ifdef CONFIG_SYS_K3_SPL_ATF -#if defined(CONFIG_TARGET_J721S2_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \
- "addr_mcur5f0_0load=0x89000000\0" \
- "name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw\0"
-#elif defined(CONFIG_TARGET_J7200_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \
- "addr_mcur5f0_0load=0x89000000\0" \
- "name_mcur5f0_0fw=/lib/firmware/j7200-mcu-r5f0_0-fw\0"
-#endif /* CONFIG_TARGET_J721S2_R5_EVM */ -#else -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC "" -#endif /* CONFIG_SYS_K3_SPL_ATF */
-/* U-Boot MMC-specific configuration */ -#define EXTRA_ENV_J721S2_BOARD_SETTINGS_MMC \
- "boot=mmc\0" \
- "mmcdev=1\0" \
- "bootpart=1:2\0" \
- "bootdir=/boot\0" \
- EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \
- "rd_spec=-\0" \
- "init_mmc=run args_all args_mmc\0" \
- "get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt}\0" \
- "get_overlay_mmc=" \
"fdt address ${fdtaddr};" \
"fdt resize 0x100000;" \
"for overlay in $name_overlays;" \
"do;" \
"load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && " \
"fdt apply ${dtboaddr};" \
"done;\0" \
- "partitions=" PARTS_DEFAULT \
- "get_kern_mmc=load mmc ${bootpart} ${loadaddr} " \
"${bootdir}/${name_kern}\0" \
- "get_fit_mmc=load mmc ${bootpart} ${addr_fit} " \
"${bootdir}/${name_fit}\0" \
- "partitions=" PARTS_DEFAULT
-/* Set the default list of remote processors to boot */ -#if defined(CONFIG_TARGET_J721S2_A72_EVM) || defined(CONFIG_TARGET_J7200_A72_EVM) -#ifdef DEFAULT_RPROCS -#undef DEFAULT_RPROCS -#endif -#endif
-#ifdef CONFIG_TARGET_J721S2_A72_EVM -#define DEFAULT_RPROCS "" \
"2 /lib/firmware/j721s2-main-r5f0_0-fw " \
"3 /lib/firmware/j721s2-main-r5f0_1-fw " \
"4 /lib/firmware/j721s2-main-r5f1_0-fw " \
"5 /lib/firmware/j721s2-main-r5f1_1-fw " \
"6 /lib/firmware/j721s2-c71_0-fw " \
"7 /lib/firmware/j721s2-c71_1-fw "
-#endif /* CONFIG_TARGET_J721S2_A72_EVM */
-#ifdef CONFIG_TARGET_J7200_A72_EVM -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY \
- "do_main_cpsw0_qsgmii_phyinit=1\0" \
- "init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17;" \
"gpio clear gpio@22_16\0" \
- "main_cpsw0_qsgmii_phyinit=" \
- "if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && " \
"test ${boot} = mmc; then " \
"run init_main_cpsw0_qsgmii_phy;" \
- "fi;\0"
-#define DEFAULT_RPROCS "" \
"2 /lib/firmware/j7200-main-r5f0_0-fw " \
"3 /lib/firmware/j7200-main-r5f0_1-fw "
-#endif /* CONFIG_TARGET_J7200_A72_EVM */
-#ifndef EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#endif
-/* set default dfu_bufsiz to 128KB (sector size of OSPI) */ -#define EXTRA_ENV_DFUARGS \
- DFU_ALT_INFO_MMC \
- DFU_ALT_INFO_EMMC \
- DFU_ALT_INFO_RAM \
- DFU_ALT_INFO_OSPI
- /* Incorporate settings into the U-Boot environment */
-#define CFG_EXTRA_ENV_SETTINGS \
- DEFAULT_LINUX_BOOT_ENV \
- DEFAULT_MMC_TI_ARGS \
- DEFAULT_FIT_TI_ARGS \
- EXTRA_ENV_J721S2_BOARD_SETTINGS \
- EXTRA_ENV_J721S2_BOARD_SETTINGS_MMC \
- EXTRA_ENV_RPROC_SETTINGS \
- EXTRA_ENV_DFUARGS \
- DEFAULT_UFS_TI_ARGS \
- EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY
+#define CFG_EXTRA_ENV_SETTINGS
/* Now for the remaining common defines */ #include <configs/ti_armv7_common.h>
Regards, Nikhil

On Wed, Mar 15, 2023 at 10:57:44AM +0530, Neha Malcom Francis wrote:
Move to using .env file for setting up environment variables for J721S2.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!

Move to using .env file for setting up environment variables for J721E and J7200.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com --- Changes in v2: - Added CONFIG_CMD_REMOTEPROC guard to including k3_rproc.env - Retained Reviewed-by tag
board/ti/j721e/Kconfig | 12 ++++ board/ti/j721e/j721e.env | 82 ++++++++++++++++++++++ include/configs/j721e_evm.h | 134 ------------------------------------ 3 files changed, 94 insertions(+), 134 deletions(-) create mode 100644 board/ti/j721e/j721e.env
diff --git a/board/ti/j721e/Kconfig b/board/ti/j721e/Kconfig index d19d30d59e..d5e12183f0 100644 --- a/board/ti/j721e/Kconfig +++ b/board/ti/j721e/Kconfig @@ -60,6 +60,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721e_evm"
+config ENV_SOURCE_FILE + default "j721e" + source "board/ti/common/Kconfig"
endif @@ -75,6 +78,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721e_evm"
+config ENV_SOURCE_FILE + default "j721e" + source "board/ti/common/Kconfig"
endif @@ -90,6 +96,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721e_evm"
+config ENV_SOURCE_FILE + default "j721e" + source "board/ti/common/Kconfig"
endif @@ -105,6 +114,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "j721e_evm"
+config ENV_SOURCE_FILE + default "j721e" + source "board/ti/common/Kconfig"
endif diff --git a/board/ti/j721e/j721e.env b/board/ti/j721e/j721e.env new file mode 100644 index 0000000000..446395adfa --- /dev/null +++ b/board/ti/j721e/j721e.env @@ -0,0 +1,82 @@ +#include <environment/ti/ti_armv7_common.env> +#include <environment/ti/mmc.env> +#include <environment/ti/ufs.env> +#include <environment/ti/k3_dfu.env> + +#if CONFIG_CMD_REMOTEPROC +#include <environment/ti/k3_rproc.env> +#endif + +default_device_tree=k3-j721e-common-proc-board.dtb +findfdt= + setenv name_fdt ${default_device_tree}; + if test $board_name = j721e; then + setenv name_fdt k3-j721e-common-proc-board.dtb; fi; + if test $board_name = j721e-eaik || test $board_name = j721e-sk; then + setenv name_fdt k3-j721e-sk.dtb; fi; + setenv fdtfile ${name_fdt} +name_kern=Image +console=ttyS2,115200n8 +args_all=setenv optargs earlycon=ns16550a,mmio32,0x02800000 + ${mtdparts} +run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr} + +#if CONFIG_SYS_K3_SPL_ATF +#if CONFIG_TARGET_J721E_R5_EVM +addr_mcur5f0_0load=0x89000000 +name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw +#elif CONFIG_TARGET_J7200_R5_EVM +addr_mcur5f0_0load=0x89000000 +name_mcur5f0_0fw=/lib/firmware/j7200-mcu-r5f0_0-fw +#endif +#endif + +boot=mmc +mmcdev=1 +bootpart=1:2 +bootdir=/boot +rd_spec=- +init_mmc=run args_all args_mmc +get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt} +get_overlay_mmc= + fdt address ${fdtaddr}; + fdt resize 0x100000; + for overlay in $name_overlays; + do; + load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && + fdt apply ${dtboaddr}; + done; +partitions=uuid_disk=${uuid_gpt_disk}; + name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs} +get_kern_mmc=load mmc ${bootpart} ${loadaddr} + ${bootdir}/${name_kern} +get_fit_mmc=load mmc ${bootpart} ${addr_fit} + ${bootdir}/${name_fit} + +#if CONFIG_TARGET_J7200_A72_EVM +do_main_cpsw0_qsgmii_phyinit=1 +init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17; + gpio clear gpio@22_16 +main_cpsw0_qsgmii_phyinit= + if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && test ${boot} = mmc; then + run init_main_cpsw0_qsgmii_phy; + fi; +#elif CONFIG_TARGET_J721E_A72_EVM +init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17; + gpio clear gpio@22_16 +main_cpsw0_qsgmii_phyinit= + if test $board_name = J721EX-PM1-SOM || test $board_name = J721EX-PM2-SOM || test $board_name = j721e; then + do_main_cpsw0_qsgmii_phyinit=1; else + do_main_cpsw0_qsgmii_phyinit=0; fi; + if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && test ${boot} = mmc; then + run init_main_cpsw0_qsgmii_phy; \ + fi; +#endif + +#if CONFIG_TARGET_J721E_A72_EVM +rproc_fw_binaries=2 /lib/firmware/j7-main-r5f0_0-fw 3 /lib/firmware/j7-main-r5f0_1-fw 4 /lib/firmware/j7-main-r5f1_0-fw 5 /lib/firmware/j7-main-r5f1_1-fw 6 /lib/firmware/j7-c66_0-fw 7 /lib/firmware/j7-c66_1-fw 8 /lib/firmware/j7-c71_0-fw +#endif + +#if CONFIG_TARGET_J7200_A72_EVM +rproc_fw_binaries=2 /lib/firmware/j7200-main-r5f0_0-fw 3 /lib/firmware/j7200-main-r5f0_1-fw +#endif diff --git a/include/configs/j721e_evm.h b/include/configs/j721e_evm.h index 48b1cea6e3..de92cd48fb 100644 --- a/include/configs/j721e_evm.h +++ b/include/configs/j721e_evm.h @@ -10,10 +10,6 @@ #define __CONFIG_J721E_EVM_H
#include <linux/sizes.h> -#include <environment/ti/mmc.h> -#include <environment/ti/k3_rproc.h> -#include <environment/ti/ufs.h> -#include <environment/ti/k3_dfu.h>
/* DDR Configuration */ #define CFG_SYS_SDRAM_BASE1 0x880000000 @@ -28,127 +24,6 @@ #define CFG_SYS_UBOOT_BASE 0x50080000 #endif
-/* HyperFlash related configuration */ - -/* U-Boot general configuration */ -#define EXTRA_ENV_J721E_BOARD_SETTINGS \ - "default_device_tree=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \ - "findfdt=" \ - "setenv name_fdt ${default_device_tree};" \ - "if test $board_name = j721e; then " \ - "setenv name_fdt k3-j721e-common-proc-board.dtb; fi;" \ - "if test $board_name = j721e-eaik || test $board_name = j721e-sk; then " \ - "setenv name_fdt k3-j721e-sk.dtb; fi;" \ - "setenv fdtfile ${name_fdt}\0" \ - "name_kern=Image\0" \ - "console=ttyS2,115200n8\0" \ - "args_all=setenv optargs earlycon=ns16550a,mmio32,0x02800000 " \ - "${mtdparts}\0" \ - "run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr}\0" - -#define PARTS_DEFAULT \ - /* Linux partitions */ \ - "uuid_disk=${uuid_gpt_disk};" \ - "name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}\0" - -#ifdef CONFIG_SYS_K3_SPL_ATF -#if defined(CONFIG_TARGET_J721E_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "addr_mcur5f0_0load=0x89000000\0" \ - "name_mcur5f0_0fw=/lib/firmware/j7-mcu-r5f0_0-fw\0" -#elif defined(CONFIG_TARGET_J7200_R5_EVM) -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "addr_mcur5f0_0load=0x89000000\0" \ - "name_mcur5f0_0fw=/lib/firmware/j7200-mcu-r5f0_0-fw\0" -#endif /* CONFIG_TARGET_J721E_R5_EVM */ -#else -#define EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC "" -#endif /* CONFIG_SYS_K3_SPL_ATF */ - -/* U-Boot MMC-specific configuration */ -#define EXTRA_ENV_J721E_BOARD_SETTINGS_MMC \ - "boot=mmc\0" \ - "mmcdev=1\0" \ - "bootpart=1:2\0" \ - "bootdir=/boot\0" \ - EXTRA_ENV_R5_SPL_RPROC_FW_ARGS_MMC \ - "rd_spec=-\0" \ - "init_mmc=run args_all args_mmc\0" \ - "get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt}\0" \ - "get_overlay_mmc=" \ - "fdt address ${fdtaddr};" \ - "fdt resize 0x100000;" \ - "for overlay in $name_overlays;" \ - "do;" \ - "load mmc ${bootpart} ${dtboaddr} ${bootdir}/${overlay} && " \ - "fdt apply ${dtboaddr};" \ - "done;\0" \ - "partitions=" PARTS_DEFAULT \ - "get_kern_mmc=load mmc ${bootpart} ${loadaddr} " \ - "${bootdir}/${name_kern}\0" \ - "get_fit_mmc=load mmc ${bootpart} ${addr_fit} " \ - "${bootdir}/${name_fit}\0" \ - "partitions=" PARTS_DEFAULT - -/* Set the default list of remote processors to boot */ -#if defined(CONFIG_TARGET_J7200_A72_EVM) -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY \ - "do_main_cpsw0_qsgmii_phyinit=1\0" \ - "init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17;" \ - "gpio clear gpio@22_16\0" \ - "main_cpsw0_qsgmii_phyinit=" \ - "if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && " \ - "test ${boot} = mmc; then " \ - "run init_main_cpsw0_qsgmii_phy;" \ - "fi;\0" -#ifdef DEFAULT_RPROCS -#undef DEFAULT_RPROCS -#endif -#elif defined(CONFIG_TARGET_J721E_A72_EVM) -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY \ - "init_main_cpsw0_qsgmii_phy=gpio set gpio@22_17;" \ - "gpio clear gpio@22_16\0" \ - "main_cpsw0_qsgmii_phyinit=" \ - "if test $board_name = J721EX-PM1-SOM || test $board_name = J721EX-PM2-SOM " \ - "|| test $board_name = j721e; then " \ - "do_main_cpsw0_qsgmii_phyinit=1; else " \ - "do_main_cpsw0_qsgmii_phyinit=0; fi;" \ - "if test ${do_main_cpsw0_qsgmii_phyinit} -eq 1 && test ${dorprocboot} -eq 1 && " \ - "test ${boot} = mmc; then " \ - "run init_main_cpsw0_qsgmii_phy;" \ - "fi;\0" -#ifdef DEFAULT_RPROCS -#undef DEFAULT_RPROCS -#endif -#endif - -#ifdef CONFIG_TARGET_J721E_A72_EVM -#define DEFAULT_RPROCS "" \ - "2 /lib/firmware/j7-main-r5f0_0-fw " \ - "3 /lib/firmware/j7-main-r5f0_1-fw " \ - "4 /lib/firmware/j7-main-r5f1_0-fw " \ - "5 /lib/firmware/j7-main-r5f1_1-fw " \ - "6 /lib/firmware/j7-c66_0-fw " \ - "7 /lib/firmware/j7-c66_1-fw " \ - "8 /lib/firmware/j7-c71_0-fw " -#endif /* CONFIG_TARGET_J721E_A72_EVM */ - -#ifdef CONFIG_TARGET_J7200_A72_EVM -#define DEFAULT_RPROCS "" \ - "2 /lib/firmware/j7200-main-r5f0_0-fw " \ - "3 /lib/firmware/j7200-main-r5f0_1-fw " -#endif /* CONFIG_TARGET_J7200_A72_EVM */ - -#ifndef EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#define EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY -#endif - -#define EXTRA_ENV_DFUARGS \ - DFU_ALT_INFO_MMC \ - DFU_ALT_INFO_EMMC \ - DFU_ALT_INFO_RAM \ - DFU_ALT_INFO_OSPI - #if CONFIG_IS_ENABLED(CMD_PXE) # define BOOT_TARGET_PXE(func) func(PXE, pxe, na) #else @@ -178,15 +53,6 @@
/* Incorporate settings into the U-Boot environment */ #define CFG_EXTRA_ENV_SETTINGS \ - DEFAULT_LINUX_BOOT_ENV \ - DEFAULT_MMC_TI_ARGS \ - DEFAULT_FIT_TI_ARGS \ - EXTRA_ENV_J721E_BOARD_SETTINGS \ - EXTRA_ENV_J721E_BOARD_SETTINGS_MMC \ - EXTRA_ENV_RPROC_SETTINGS \ - EXTRA_ENV_DFUARGS \ - DEFAULT_UFS_TI_ARGS \ - EXTRA_ENV_CONFIG_MAIN_CPSW0_QSGMII_PHY \ BOOTENV
/* Now for the remaining common defines */

On Wed, Mar 15, 2023 at 10:57:45AM +0530, Neha Malcom Francis wrote:
Move to using .env file for setting up environment variables for J721E and J7200.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!

On Wed, Mar 15, 2023 at 10:57:43AM +0530, Neha Malcom Francis wrote:
Add K3 common environment variables to .env. We retain the old-style C environment .h files to maintain compatibility with other K3 boards that have not moved to using .env yet.
Signed-off-by: Neha Malcom Francis n-francis@ti.com
Reviewed-by: Tom Rini trini@konsulko.com

On Wed, Mar 15, 2023 at 10:57:43AM +0530, Neha Malcom Francis wrote:
Add K3 common environment variables to .env. We retain the old-style C environment .h files to maintain compatibility with other K3 boards that have not moved to using .env yet.
Signed-off-by: Neha Malcom Francis n-francis@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!
participants (3)
-
Neha Malcom Francis
-
Nikhil M Jain
-
Tom Rini