1.1. BSP Layers

The BSP consists of a file structure inside a base directory. Collectively, you can think of the base directory and the file structure as a BSP Layer. Although not a strict requirement, layers in the Yocto Project use the following well established naming convention:

     meta-<bsp_name>
                

The string "meta-" is prepended to the machine or platform name, which is "bsp_name" in the above form.

The layer's base directory (meta-<bsp_name>) is the root of the BSP Layer. This root is what you add to the BBLAYERS variable in the conf/bblayers.conf file found in the Build Directory. Adding the root allows the OpenEmbedded build system to recognize the BSP definition and from it build an image. Here is an example:

     BBLAYERS ?= " \
       /usr/local/src/yocto/meta \
       /usr/local/src/yocto/meta-yocto \
       /usr/local/src/yocto/meta-yocto-bsp \
       /usr/local/src/yocto/meta-mylayer \
       "

     BBLAYERS_NON_REMOVABLE ?= " \
       /usr/local/src/yocto/meta \
       /usr/local/src/yocto/meta-yocto \
       "
                

Some BSPs require additional layers on top of the BSP's root layer in order to be functional. For these cases, you also need to add those layers to the BBLAYERS variable in order to build the BSP. You must also specify in the "Dependencies" section of the BSP's README file any requirements for additional layers and, preferably, any build instructions that might be contained elsewhere in the README file.

Some layers function as a layer to hold other BSP layers. An example of this type of layer is the meta-intel layer. The meta-intel layer contains many individual BSP layers.

For more detailed information on layers, see the "Understanding and Creating Layers" section of the Yocto Project Development Manual.