I am new to embedded Linux (but do have experiences as user of Linux on PC, RPI, Armbian, VPS, ...), so my questions will be very basic.
I hope I can ask in this thread and get help.
I currently have 1 development system PicoCore™MX8MM and according to Uboot has following:
CPU: Freescale i.MX8MMQ rev1.0 1800 MHz (running at 1200 MHz)
CPU: Commercial temperature grade (0C to 95C) at 57C
Reset cause: POR
Model: FSL i.MX8MM PCoreMX8MM board
DRAM: 1 GiB
PMIC: BD71847 Rev. 0xa0
NAND: 512 MiB
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from NAND... OK
auto-detected panel NT35521_OLED
Display: NT35521_OLED (720x1280)
It appears to be an older version, as it's debug UART isn't where it's supposed to be in any documentation. I was promised to get new one, but am currently working with what I have.
Our companies short term goal is to develop user interface for white goods appliance (Gorenje) with SOM/SOC.
As we don't have such experience, I am learning how to do this.
I am working with following documents FSiMX8MM_FirstSteps_eng.pdf, LinuxOnFSBoards_eng.pdf, FSiMX8_FirstSteps_eng.txt.
I am using Fedora VM, which I loaded with 20201106 fsimx8mm-B2020.08-pre.tar.bz2.
Following guides in mentioned documents, I managed to succesfully build complete system SW (Uboot, Kernel and Buildroot).
Now I am trying to transfer it via TFTP & Uboot to the board.
Meanwhile I have few questions (more will follow).
1. Most important one and very confusing to me. I haven't yet grasped the process development for Embedded Linux. In MCU apps you develop code, compile, flash to MCU, test and then flash in serial production. I am not sure how it is done with Linux. So I have Linux Kernel, Buildroot (or Yocto,...) FS, FDT (which I will have to adapt to my peripherals later) and Uboot. I need to develop GUI application - let's say with Qt, custom FDT. How I then join everything together into 1 binary to use in serial production? Do I (simplified description) first upload System Software to devboard using Uboot and application via network, set up everything and then download all binaries via Uboot+TFTP and get image, which is to be used in serial production programming. Or how everything is integrated together? I haven't seen this described anywhere and it seems it isn't addressed in any of your workshops.
2. Developing GUI. It seems that with F&S our only option is to use Qt. Since this option requires licensing I am asking, if there are any FOSS options, which can be used in commercial applications and still supported by F&S platform.
3. Building FDT. Are there any guides how to build FDT with specific HW - for example I don't think my currently used display (NT35521_OLED) is supported in any of the device trees in 20201106 fsimx8mm-B2020.08-pre.tar.bz2. How to add more devices - like touchscreen, I2S sound sink... I assume Linux drivers are required for all such devices (unless some slow peripherals, with which we can work directly over (serial) data buses).
4. Buildroot and Yocto. Which one to choose - what are the factors for the selection (as far as I know Yocto is newer).
As you see these are beginner questions. Hopefully someone can help. Maybe via MS Teams meeting if not here.