We are really new in Linux and embedded world and we are trying to find the right way, how to customize Linux image for our needs. The final product will use only Ethernet and I2C interface. No need for HMI. We need to customize:
- bitbake recipe adjustment - adding ICU library support to Console-trdx-image and using custom IUCdtxx.zip file - currently made in oe-core build, based on openembedded
- customize Kernel configuration - removing unused features, adding new needed features - currently made in Kernel compilation, based on Build U-Boot and Linux kernel
- customize Device tree, currently made in Kernel compilation
- customize Uboot - just to show some information we need, currently made in U-Boot compilation, based on same as point 2.
So our current workflow is:
- generate oe-core image with customized ICU
- extract oe-core image
- compile custom Kernel and overwrite zImage file in extracted oe-core folder
- compile custom Device tree and overwrite dtb file in extracted oe-core folder
- customize rootfs structure in extracted oe-core folder (custom configs, kernel modules, applications…)
- generate image for Colibri module using update.sh script - we are using tftp server for downloading image to Colibri module
- compile custom U-Boot and overwrite U-Boot file generated in previous step
- flash Linux image to Colibri module from tftp server.
So, what do you think about this scenario? Maybe we should move also Kernel customization to oe-core build?
Thank you for any comments to our setup.