Home  >  Edison  >  Setting Up

How to update linux or U-Boot to a newer version

Updating Linux

Currently 4 kernels are supplied:

  1. linux-yocto_lts (LTS, default)
  2. linux-yocto_test (Latest released kernel)
  3. linux-yocto_current (Current HEAD from Linus tree)
  4. linux-yocto_next (Linux next, completely volatile with queued patches)

You select your preferred kernel from meta-intel-edison/meta-intel-edison-distro/conf/distro/poky-edison.conf. This is also where you can remove rt from DISTRO_FEATURES. To select i686 or x86_64 see Enabling x86_64 mode,

If you want to update the kernel to a newer (typically for LTS, change LINUX_VERSION near the end of the recipe).

Updating LTS versions

Generally this should just work. But in particular for the LTS versions, patches that we carry in the recipe may have been upstreamed so the patching stage will fail while building. Commenting out the redundant patch in the recipe will fix the issue.

Updating Testing versions

For testing even newer versions in general the same may happen, but occasionally you may encounter other issues like new kernel config settings needed, new patches needed to fix regressions. You might want to follow https://github.com/htot/meta-intel-edison to see if there are any fixes being tested or join the Telegram group Intel Edison and participate in the discussions (don’t worry, the group is low traffic).

Updating U-Boot

U-Boot recipes are found in meta-intel-edison/meta-intel-edison-bsp/recipes-bsp/u-boot/.
Generally not much development normally goes on there that affects Edison.

To update U-Boot change the PV in the filenames of the following files:

  • u-boot_2024.10.bb
  • u-boot-common_2024.10.inc
  • u-boot-mkimage_2021.10.bb

Additionally inside u-boot-common_2024.10.inc change the SRCREV to the correct hash and set PV to the version you need. Same as with LTS kernels, patches may have reached upstream and might need to commented out.