
On 11/6/2023 5:48 PM, Nishanth Menon wrote:
On 15:54-20231104, Kumar, Udit wrote:
On 11/3/2023 6:07 AM, Nishanth Menon wrote:
Commit 5019170970ad ("arch: arm: mach-k3: j721e: add support for UDA FS") introduced basic UDA FS support, however, we can Take approach similar to commit 0f1c1e8b368b ("arm: mach-k3: am625: Add support for UDA FS"). While boot partition support with EMMC boot is useful, it is constrained by the size of boot hardware partition itself.
In the case of K3 devices, tispl images can contain OP-TEE images that can substantially vary in size and the u-boot image itself can vary over time as we enable various features.
So use the CSD information in the case of EMMC_BOOT configuration being enabled to pick boot partition or UDA FS mode operation to pick.
If EMMC_BOOT is disabled, then depend on filesystem configuration to pick data from UDA.
I am thinking, in which case we have EMMC_BOOT disabled,
Case here I am considering, updating u-boot to eMMC from u-boot shell, If EMMC_BOOT
is not set then , we can not set CSD information
Yes, but we cannot use boot0 mode of operation for Beagle family. the size of u-boot and optee vary over time and SK's boot0 partition strategy does'nt work for Beagle platforms.
Thanks, I was not aware of this limitation of Beagle family.
Let each board chose needed config with that
Reviewed-by: Udit Kumar u-kumar1@ti.com
Signed-off-by: Nishanth Menon nm@ti.com
arch/arm/mach-k3/j721e_init.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-k3/j721e_init.c b/arch/arm/mach-k3/j721e_init.c index b1f7e25ed092..bcdfbfc79c4a 100644 --- a/arch/arm/mach-k3/j721e_init.c +++ b/arch/arm/mach-k3/j721e_init.c @@ -294,7 +294,14 @@ u32 spl_mmc_boot_mode(struct mmc *mmc, const u32 boot_device) { switch (boot_device) { case BOOT_DEVICE_MMC1:
return (spl_mmc_emmc_boot_partition(mmc) ? MMCSD_MODE_EMMCBOOT : MMCSD_MODE_FS);
if (IS_ENABLED(CONFIG_SUPPORT_EMMC_BOOT)) {
if (spl_mmc_emmc_boot_partition(mmc))
return MMCSD_MODE_EMMCBOOT;
return MMCSD_MODE_FS;
}
I had a view EMMC_BOOT should be needed config.
if (IS_ENABLED(CONFIG_SPL_FS_FAT) || IS_ENABLED(CONFIG_SPL_FS_EXT4))
return MMCSD_MODE_FS;
return MMCSD_MODE_EMMCBOOT;
If you consider, to make EMMC_BOOT as needed config, then this is not needed
EMMC_BOOT is not a mandatory config.
case BOOT_DEVICE_MMC2: return MMCSD_MODE_FS; default: