usage of multiple machine config files

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

usage of multiple machine config files

2,798 Views
kravik
Contributor IV

I was building images for IMX6 sabresd board using yocto.
I could see following two imx6qsabresd.conf files in two different layers in the yocto sources. Both layers are added to "BBLAYERS".

  meta-fsl-bsp-release/imx/meta-fsl-arm/conf/machine/imx6qsabresd.conf
  meta-fsl-arm/conf/machine/imx6qsabresd.conf

Both imx6qsabresd.conf files are same. Can you please tell, If same file exists in two different layers then during build time which one will be considered? what is the usage of having same config file in two different layers?

Labels (3)
Tags (1)
0 Kudos
3 Replies

1,602 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ravi Kumar,

It would seem that both are on the same layer meta-fsl-arm. Chances are that both directories are identical and somehow the checkout process duplicated the layers.

Would you please share the path of both layers? Are they not in different BSP directories?

As a side note: As a general rule the layer priority determines which recipe version or machine configuration file takes precedence unless a specific version is explicitly proffered on the configuration.

Regards,

0 Kudos

1,603 Views
kravik
Contributor IV

Thanks for the reply.

The machine config files are on different layers, I have used following steps for checkout.

    #mkdir ~/bin (this step may not be needed if the bin folder already exists)
    #curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
    #chmod a+x ~/bin/repo
    #export PATH=~/bin:$PATH
    #mkdir fsl-release-bsp
    #cd fsl-release-bsp
    #repo init -u git://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-3.14.28-1.0.0_ga
    #repo sync


 Following are the paths of two layers where "imx6qsabresd.conf" exists.

       sources/meta-fsl-bsp-release/imx/meta-fsl-arm/conf/machine/imx6qsabresd.conf
       sources/meta-fsl-arm/conf/machine/imx6qsabresd.conf

Can you tell me what are the names of BSP directories and their path. 

 Both the above layers are added in BBLAYERS.

      BBLAYERS = " \
      ${BSPDIR}/sources/meta-fsl-arm \"
      ##Freescale Yocto Release layer
      BBLAYERS += " ${BSPDIR}/sources/meta-fsl-bsp-release/imx/meta-fsl-arm "

 I have used following steps for building images.

      #MACHINE=imx6qsabresd source fsl-setup-release.sh –b build-fb –e fb 
      #bitbake core-image-minimal

 The layer priority is based on the order they mentioned in the BBLAYERS variable or we can set explicitly?

0 Kudos

1,603 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ravi Kumar,

The layer priority is set on the conf/layer.conf file inside of each layer.

You may see the priority of all layers using bitbake’s following command:

$ bitbake-layers show-layers

Thanks for posting the information of the layers in more detail. The main difference between these layers is that the meta-fsl-arm is part of the Community BSP and as such part of the Yocto Project; while the meta-fsl-bsp-release layer is part of the BSP Release and it’s not part of the Yocto Project.

I think that would perhaps be the reason behind this redundancy. If you use the Community BSP the meta-fsl-arm would provide the machine information for the i.MX6 SABRE board. This layer has a priority value of 5.

The BSP Release basically adds some layers to the Community BSP. If you are using the BSP Release the machine configuration would be given by the meta-fsl-release layer which has a higher priority (8). The BSP Releases are static so that ensures that there is a static machine configuration available since the meta-fsl-arm is part of the Yocto Project and it’s constantly being updated by the community.

I hope this answers your question!

Regards,

0 Kudos