Also for reference, we recently did a board integration for i.MX8 on sumo branch (similar BSP to what you are using), you can take a look at the commit here,
I would suggest this as a good template for how I would have done it for i.MX6ULL
WARNING: u-boot-imx-2017.03-r0 do_provide_mender_defines: Found more than one dtb specified in KERNEL_DEVICETREE. Only one should be specified. Choosing the last one.
The file meta-fsl-bsp-release/imx/meta-bsp/conf/machine/imx6ull14x14evk.conf which is my machine.conf file contains the following:
I’ve got a working build now so I’m just trying to absorb this post now (and find the things you are subtly saying I should change ). I’m still trying to understand repo too, so bear with me.
If I understand whats happening properly, you are still using the NXP manifest to download the NXP repositories, but you then download an additional manifest with the mender info.
repo sync will then download both manifests. (I didn’t know it could do this)
You have a custom initialise script that calls the NXP script in the fashion it expects, while also setting up the mender side of things.
Reading between the lines, are the benefits:
Can still get updates from NXP since we use their manifest directly
Can still use their initialisation script to support multiple MACHINE and DISTRO variables
I’ve got a working build now so I’m just trying to absorb this post now (and find the things you are subtly saying I should change ). I’m still trying to understand repo too, so bear with me.
Understandable and do not worry much about it
If I understand whats happening properly, you are still using the NXP manifest to download the NXP repositories, but you then download an additional manifest with the mender info.
repo sync will then download both manifests. (I didn’t know it could do this)
You have a custom initialise script that calls the NXP script in the fashion it expects, while also setting up the mender side of things.
You have understood correctly.
Reading between the lines, are the benefits:
Can still get updates from NXP since we use their manifest directly
Exactly, it is usually a pain to keep a copy of the upstream manifest, which would get out of date fast and one needs keep updating it “manually”
Can still use their initialisation script to support multiple MACHINE and DISTRO variables
Yes, exactly. This is to make the Mender integration less “intrusive” to the upstream workflow even if the Mender integration is only valid for one MACHINE this could be extended to support more.
Let me know what else I can do. Once PR is done I will update the docs with the correct links and run through the build process using the instructions, then do the runtime testing etc.