<div dir="ltr">u-boot-mkimage already builds mkenvimage, you just need to install it in do_install:<div><br></div><div><div>    install -m 0755 tools/mkenvimage ${D}${bindir}/uboot-mkenvimage</div><div>    ln -sf uboot-mkenvimage ${D}${bindir}/mkenvimage</div><div><br></div></div><div>This is what we have in recipes-bsp/u-boot/u-boot-mkimage_%.bbappend and it works fine.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 30, 2018 at 8:50 AM, Martin Hundebøll <span dir="ltr">&lt;<a href="mailto:mnhu@prevas.dk" target="_blank">mnhu@prevas.dk</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Lukasz,<span class=""><br>
<br>
On 2018-04-27 16:51, Lukasz Majewski wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
This commit provides the ability to generate u-boot environment(s) as<br>
images, which afterwards can be used to produce image (with wic) for<br>
flashing (eMMC or SPI-NOR).<br>
<br>
This change removes the need to run &quot;env default&quot; during production phase,<br>
as proper environment (including redundant one) is already stored on<br>
persistent memory (the CRC is also correct).<br>
</blockquote>
<br></span>
I think we should create a separate recipe to install the native mkenvimage binary (e.g. u-boot-mkenvimage_%.bb) or update u-boot-mkimage_%.bb install it.<br>
<br>
Then a new recipe to create the environment images can depend on u-boot-mkenvimage-native.<br>
<br>
Also note the recently added upstream support for external environment definitions:<br>
<a href="http://git.denx.de/?p=u-boot.git;a=commit;h=f3d8f7dd73ac5dde258eb786d4a01869395b56d7" rel="noreferrer" target="_blank">http://git.denx.de/?p=u-boot.g<wbr>it;a=commit;h=f3d8f7dd73ac5dde<wbr>258eb786d4a01869395b56d7</a><br>
<br>
For our usecase we need the ability to generate environment images in yocto from such external definitions.<br>
<br>
// Martin<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Signed-off-by: Lukasz Majewski &lt;<a href="mailto:lukma@denx.de" target="_blank">lukma@denx.de</a>&gt;<span class=""><br>
<br>
---<br>
This patch depends on &quot;u-boot: Upgrade to 2018.03 release&quot;<br>
<a href="https://patchwork.openembedded.org/patch/149998/" rel="noreferrer" target="_blank">https://patchwork.openembedded<wbr>.org/patch/149998/</a><br>
---<br>
  meta/recipes-bsp/u-boot/u-boot<wbr>.inc | 35 ++++++++++++++++++++++++++++++<wbr>+++++<br>
  1 file changed, 35 insertions(+)<br>
<br>
diff --git a/meta/recipes-bsp/u-boot/u-bo<wbr>ot.inc b/meta/recipes-bsp/u-boot/u-bo<wbr>ot.inc<br></span>
index c2bcf99840..2796e503cf 100644<span class=""><br>
--- a/meta/recipes-bsp/u-boot/u-bo<wbr>ot.inc<br>
+++ b/meta/recipes-bsp/u-boot/u-bo<wbr>ot.inc<br>
@@ -305,3 +305,38 @@ do_deploy () {<br>
  }<br>
    addtask deploy before do_build after do_compile<br>
+<br>
+# Create new rules to extract default envs<br>
+UBOOT_ENVS_DEFAULT ?= &quot;uboot-envs-default&quot;<br>
+DEFAULT_ENVS ?= &quot;u-boot-env-default.txt&quot;<br>
+DEFAULT_ENVS_SIZE ?= &quot;65536&quot;<br>
+<br></span><span class="">
+# Generate default environment<br>
+do_gen_default_envs[doc] = &quot;Generate image with default U-Boot environment(s)&quot;<br>
+do_gen_default_envs () {<br>
+       ${B}/source/scripts/get_defau<wbr>lt_envs.sh ${B} &gt; ${B}/${DEFAULT_ENVS}<br>
+<br>
+       # Generate env image<br>
+       ${B}/tools/mkenvimage -s ${DEFAULT_ENVS_SIZE} -o ${B}/${UBOOT_ENVS_DEFAULT} ${B}/${DEFAULT_ENVS}<br></span>
+<span class=""><br>
+       # Generate redundant env image<br>
+       ${B}/tools/mkenvimage -r -s ${DEFAULT_ENVS_SIZE} -o ${B}/${UBOOT_ENVS_DEFAULT}_r ${B}/${DEFAULT_ENVS}<br></span>
+<br>
+       rm ${B}/${DEFAULT_ENVS}<br>
+}<br>
+<span class=""><br>
+addtask gen_default_envs before do_deploy_default_envs after do_compile<br>
+<br>
+# Deploy default environment<br>
+do_deploy_default_envs[doc] = &quot;Copy images with default U-Boot environment to deployment directory&quot;<br>
+do_deploy_default_envs () {<br>
+       install -d ${DEPLOYDIR}<br>
+<br></span>
+       install ${B}/${UBOOT_ENVS_DEFAULT} ${DEPLOYDIR}/${UBOOT_ENVS_DEFA<wbr>ULT}<br>
+       install ${B}/${UBOOT_ENVS_DEFAULT}_r ${DEPLOYDIR}/${UBOOT_ENVS_DEFA<wbr>ULT}_r<br>
+<br>
+       rm ${B}/${UBOOT_ENVS_DEFAULT}<br>
+       rm ${B}/${UBOOT_ENVS_DEFAULT}_r<br>
+}<br>
+<br>
+addtask deploy_default_envs before do_deploy after do_gen_default_envs<br>
<br>
</blockquote><div class="HOEnZb"><div class="h5">
-- <br>
______________________________<wbr>_________________<br>
Openembedded-core mailing list<br>
<a href="mailto:Openembedded-core@lists.openembedded.org" target="_blank">Openembedded-core@lists.openem<wbr>bedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/<wbr>mailman/listinfo/openembedded-<wbr>core</a><br>
</div></div></blockquote></div><br></div>