Re: [meta-arago] [PATCH] tisdk-uenv: Add instructions to load initramfs while booting linux
Ryan Eatmon <[email protected]>
| Newsgroups | org.yoctoproject.lists.meta-arago |
|---|---|
| Message-ID | <[email protected]> |
On 3/4/2026 12:32 AM, Moteen Shah wrote: > > On 03/03/26 22:49, Andrew Davis wrote: >> On 3/3/26 4:49 AM, Moteen Shah via lists.yoctoproject.org wrote: >>> Add instructions to load initramfs image and update the boot command >>> to use the image to boot the linux kernel. >>> >>> Signed-off-by: Moteen Shah <[email protected]> >>> --- >>> .../recipes-tisdk/tisdk-uenv/tisdk-uenv/uEnv.txt | 15 +++++++++++++++ >>> 1 file changed, 15 insertions(+) >>> >>> diff --git >>> a/meta-arago-distro/recipes-tisdk/tisdk-uenv/tisdk-uenv/uEnv.txt >>> b/meta-arago-distro/recipes-tisdk/tisdk-uenv/tisdk-uenv/uEnv.txt >>> index 0af0eef3..5ac61b34 100644 >>> --- a/meta-arago-distro/recipes-tisdk/tisdk-uenv/tisdk-uenv/uEnv.txt >>> +++ b/meta-arago-distro/recipes-tisdk/tisdk-uenv/tisdk-uenv/uEnv.txt >>> @@ -7,3 +7,18 @@ >>> # default on all newer U-Boot images. This also means that some >>> # variables such as bootdelay cannot be changed by this file >>> since >>> # it is not evaluated until the bootcmd is run. >>> + >>> +# Initramfs configuration >>> +# Name of the initramfs file in the boot partition >>> +name_initramfs=ti-core-initramfs.cpio.xz >>> + >>> +# Command to load initramfs from boot partition (mmc device:partition) >>> +# Adjust the device number (0 or 1) based on your setup >>> +# mmcdev is set to 1 by default, partition 1 is the boot partition >>> +get_initramfs_mmc=fatload mmc ${mmcdev}:1 ${rdaddr} ${name_initramfs} >>> + >> >> This belongs in u-boot default env, it is basically the same as >> `get_fdt_mmc` >> and other helpers already there. >> >>> +# Load initramfs and set up variables >>> +load_initramfs=if run get_initramfs_mmc; then setenv _initramfs >>> ${rdaddr}:${filesize}; setenv rd_spec ${_initramfs}; echo Initramfs >>> loaded at ${rdaddr}, size ${filesize}; else echo WARNING: Initramfs >>> not found, continuing without initramfs; setenv rd_spec -; fi >>> + >> >> This should be part of `mmcloados` in u-boot also. > > > mmcloados is only used by 'mmcboot' which is a differnt boot command > other than bootcmd_ti_mmc? > We can consider adding the load_initramfs to 'get_kern_mmc' and we wont > need to override the init_mmc with the change. > >> >>> +# Custom boot command that loads initramfs before kernel >>> +init_mmc=run args_all args_mmc load_initramfs >> >> With the above added, you don't need to override `init_mmc` so >> this line goes away too. >> >> That leaves one line left, `name_initramfs`. How about just >> setting a sane default name in u-boot. We got away with something >> like this for K2 plats: > > We don't expect the name of the cpio to be variable, as the name of the > cpio stays the same for all K3 platforms which is > "ti-core-initramfs.cpio.xz", I can remove the variable altogether maybe > and directly use the image name to load. Thoughts? That is a very Yocto centric take. But we also support armbian and other distros. They may not want to name the file the same way we chose in meta-ti. The question is, should we paint ourselves into a corner from the beginning or allow for some flexibility? Plus, even in Yocto, a user could choose to not use ti-core-initramfs and instead make their own with their own name. Making this more flexible feels more friendly in the long run. Just my two cents. > Regards, > Moteen > >> >> https://github.com/u-boot/u-boot/blob/master/board/ti/ks2_evm/k2e_evm.env#L12 >> >> although I'd recommend a more generic filename. >> >> Andrew >> >>> \ No newline at end of file >> -- Ryan Eatmon [email protected] ----------------------------------------- Texas Instruments, Inc. - LCPD - MGTS