Where is Downloadable TorizonCore Image for Booting from SATA SSD?

I am trying to U-Boot in Flash, with TorizonCore Kernel and Rootfs in SATA drive. Apalis iMX8QM 4GB IT V1.1C on a Custom Carrier board based on Ixora V1.1B. As described here, I need a xxx-Image.bootfs.tar.xz and xxx-Image.rootfs.tar.xz. However, when downloading the TorizonCore image (TorizonCore PREEMPT_RT 5.6.0-devel-202203+build.22) and extracting the contents I find:

image.json
imx-boot
LA_OPT_NXP_SW.html
marketing.tar
prepare.sh
toradexlinux.png
u-boot-initial-env-sd
wrapup.sh
torizon-core-docker-rt-apalis-imx8.ota.tar.zst

extracting torizon-core-docker-rt-apalis-imx8.ota.tar.zst shows a filesystem, but it is unclear to me how that will help me follow the two guides available to accomplish this goal.

Obviously the guide is written for a Yocto-based image but I’m trying to accomplish the same task with TorizonCore on the SSD instead. I also understand that the guide is a bit outdated (2018) so correct me if there is a more up-to-date resource to be using for this.

Related posts:
Enable SATA command in u-boot?
SATA support for u-boot updates
Boot up Linux and Android from mSata and PCIe/Mini PCIe Interface
Ixora apalis imx8
Boot iMX8 from SD or USB
Apalis Evaluation Module failed to boot up from external SATA Disk
Documentation for Booting from SD card on Apalis iMX8x
How to set IMx8 to boot OS from MSATA SSD or 4Bit SD slot?

Related Developer Resources:
Distro Boot
Linux - Booting
Boot From an SD Card / USB Stick / SATA drive
Reference Images for Yocto Project Software Downloads
U-Boot
Toradex Download Links (Torizon, Linux BSP, WinCE and Partner Demos)
BSP Layers and Reference Images for Yocto Project Software

Should I build TorizonCore from source to get the rootfs file needed to boot from the eMMC but have the kernel and OS on a SATA drive?

Greetings @jonk4m,

You best approach would probably be using Distro boot: Distro Boot | Toradex Developer Center

This is already what TorizonCore uses to boot from eMMC. In short it locates a boot script that’s found in the eMMC to then bootstrap and start the Linux Kernel/OS. In theory you’d have to modify the distro-boot command to mount and look at your SSD rather than eMMC.

However this is only in theory. We don’t support booting TorizonCore from alternative medias and honestly no one’s really tried it so far. There could be many issues or implications, we just don’t know.

Furthermore, I believe our default U-Boot doesn’t even have the support enabled to work with SATA. So you’ll need to probably modify U-Boot for this as well.

At a high level it should be possible, but I hope you can understand why we can’t really give further support on such a use-case.

Best Regards,
Jeremias

Hi Jeremias!

I’ve gotten to the point where I’ve made my own image and placed it on a USB Drive which booted just fine. I then placed the image on a SATA SSD, but I am struggling to know where to begin to modify the default U-boot on the eMMC to support SATA.

When you say “modify” the U-Boot, do you mean the variables and general u-boot setup environment or actually changing rebuilding U-Boot itself from Yocto as described here?

Herein lies the difficult part. I’m not entirely sure all that needs to be changed to support SATA in U-boot. Just theorizing here’s what I imagine needs to be done:

  • Enable sata command or some equivalent.
    • Most interfaces have some kind of special command in U-Boot to interact with them. eMMC has the mmc command, and USB has the usb command. I believe there is also one for SATA devices. However, it doesn’t seem to be enabled or built-in to our U-Boot.
  • Possibly enable special drivers for i.MX.
    • Here’s the detail I’m really unsure about. It may be the case that special drivers are needed for the i.MX8 module to use SATA in U-Boot. Though I don’t have enough knowledge on this to say for sure. You may need to consult NXP documentation for this.

There may be other things to change as well, but these are the immediate ones that come to mind. These changes will probably require changing and rebuilding the U-Boot source as a whole.

Best Regards,
Jeremias

Thanks for responding!

If that’s the case, then this article and this one probably need to be updated since they both state that booting from SATA is possible without including the caveat of rebuilding and modifying U-Boot entirely.

Thanks for pointing that out, we’ll make sure to update those old articles when we can.