How can I modify the H15 device tree?

Development with a local repository (linux kernel, u-boot, etc…) is a common
task when developing using the Yocto build system.
Yocto comes with a built-in devtool command that allows overriding the source
of a repository for a recipe, to allow development using a local repository
clone, instead of a remote Git repository.

The Hailo15 device tree is being built out of a dts file and additional dtsi files, for example, in case the of the Halio15 EVB (Evaluation Board) in security camera mode the device tree is built using hailo15-evb-security-camera.dts, hailo15-evb-base.dtsi and hailo15-base.dtsi.

  • First enter the Yocto environment with the command:
source poky/oe-init-build-env
  • create a local workspace for the relevant recipe, in this case linux-yocto-hailo
devtool modify linux-yocto-hailo
  • do the relevant device tree changes

  • build the modified recipe

bitbake linux-yocto-hailo -c compile -f
  • deploy the modified kernel
bitbake linux-yocto-hailo -c deploy
  • An update fitImage (which includes the kernel and the new dtb) will be created.
  • it is advisable backing up the current fitImage, and copy the new firImage under the H15 /boot directory
  • in case needed the entire image can be built
bitbake core-image-minimal
  • In order to clean up and exit development workspace when done, run:
devtool reset linux-yocto-hailo