gen-machine-conf Overview
The gen-machine-conf tool converts hardware description data
from the System Device Tree generator (SDTGen) output directory
(part of the SHEL flow) into a Yocto-style machine
configuration. It supports updates if the hardware description
changes and should be used without manually modifying its output
layers. Use this flow to create a Yocto Machine for any Vivado
project via the SHEL flow.
For deeper reference on gen-machine-conf – internals, best
practices, and the full set of subcommands – see the SHEL
chapter pages
Overview of gen-machine-conf and
gen-machine-conf Best Practices.
Create a Machine From a System Device Tree Directory
Use gen-machine-conf to create a machine using a downloaded
prebuilt System Device Tree directory:
$ gen-machine-conf parse-sdt --hw-description <System Device Tree Directory> -c conf -l conf/local.conf --machine-name <Name for your machine/board>
Configure the Yocto Build
The target machine for the software build is set in the
environment (build shell) or by editing local.conf. This tells
Yocto which hardware platform the build is for.
Set the machine in conf/local.conf:
$ sed -i "/MACHINE ??=/c\MACHINE ??= \"<Machine_Name>\"" conf/local.conf
Build the Embedded Software Image
After the environment and machine configuration are in place, standard Yocto workflows are used to build images. Output images can be written to boot media to boot the board. Refer to AMD documentation for steps on booting and regenerating hardware designs.
$ bitbake <Image_Variant_Name>