Thanks for these infos! +1 on supporting i.MX8 in Ubuntu Core out of the box.
What you mention rgd kernel vs gadget snap, SoM and carrier board support etc, let me ask as I would like to understand how this is supposed to work in Ubuntu Core in general.
Let’s start with the concrete SoC you mention, the
This already is a SoC, so has a whole bunch of peripherals built in. Eg GPU or USB2 or RNG. The (kernel) drivers for these would be part of the kernel snap, right?
Then let’s put that SoC on a concrete SoM, such as https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx-8m-mini-nano which brings additional peripherals, such as eMMC, RAM and Wifi/BLE. The (kernel) drivers for these, would that be part of the kernel snap or a gadget snap?
Now, say I put that SoM onto a concrete carrier board such as https://developer.toradex.com/products/dahlia-carrier-board which brings additional peripherals, such as audio codec and CAN. The (kernel) drivers for these, would that be part of the kernel snap or a gadget snap?
So it might be that we can reuse the kernel snap from Canonical for 1), but would need to combine that with our own gadget snap for 2) + 3) to bake a complete device image?
Thanks a lot!
Cheers,
/Tobias