Adding a custom kernel and bootloader

Development in U-Boot and the Linux kernel is usually done externally to Yocto, as they are easy to build using a toolchain, like the one provided by Yocto.

The development work is then integrated into Yocto in one of two ways:

  • With patches added to the kernel and U-Boot bbappend files. This method will build the same source as the reference design board we are using as base, and apply our changes over it.
  • Using a different Git repository, forked from the Linux kernel and U-Boot Git repositories being used by the reference design, and using a bbappend file to point the recipe to it. This way, we can directly commit the changes to the repository and the Yocto build system will build them.

Usually a forked Git repository ...

Get Linux: Embedded Development now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.