diff --git a/classes/image_types_tegra.bbclass b/classes/image_types_tegra.bbclass index eb138400..18e3a252 100644 --- a/classes/image_types_tegra.bbclass +++ b/classes/image_types_tegra.bbclass @@ -638,7 +638,7 @@ def tegraflash_bupgen_strip_cmd(d): tegraflash_generate_bupgen_script() { local outfile="${1:-./generate_bup_payload.sh}" - local spec__ sdramcfg fab boardsku boardrev + local spec__ sdramcfg fab boardsku boardrev bup_type buptype_arg rm -f $outfile cat < $outfile #!/bin/bash @@ -658,9 +658,15 @@ EOF boardsku="${TEGRA_BOARDSKU}" boardrev="${TEGRA_BOARDREV}" for spec__ in ${@' '.join(['"%s"' % entry for entry in d.getVar('TEGRA_BUPGEN_SPECS').split()])}; do + bup_type="" eval $spec__ + if [ -n "$bup_type" ]; then + buptype_arg="--bup-type $bup_type" + else + buptype_arg="" + fi cat <> $outfile -MACHINE=${TNSPEC_MACHINE} FAB="$fab" BOARDSKU="$boardsku" BOARDREV="$boardrev" ./${SOC_FAMILY}-flash-helper.sh --bup ./flash-stripped.xml.in ${DTBFILE} $sdramcfg ${ODMDATA} "\$@" +MACHINE=${TNSPEC_MACHINE} FAB="$fab" BOARDSKU="$boardsku" BOARDREV="$boardrev" ./${SOC_FAMILY}-flash-helper.sh --bup $buptype_arg ./flash-stripped.xml.in ${DTBFILE} $sdramcfg ${ODMDATA} "\$@" EOF done chmod +x $outfile @@ -765,8 +771,6 @@ EOF create_bup_payload_image() { local type="$1" oe_make_bup_payload ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} - install -m 0644 ${WORKDIR}/bup-payload/bl_update_payload ${IMGDEPLOYDIR}/${IMAGE_NAME}.bup-payload - ln -sf ${IMAGE_NAME}.bup-payload ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.bup-payload for f in ${WORKDIR}/bup-payload/*_only_payload; do [ -e $f ] || continue sfx=$(basename $f _payload) diff --git a/recipes-bsp/tegra-bup-payload/tegra-bup-payload_1.0.bb b/recipes-bsp/tegra-bup-payload/tegra-bup-payload_1.0.bb index 3e6729c5..a1b438b7 100644 --- a/recipes-bsp/tegra-bup-payload/tegra-bup-payload_1.0.bb +++ b/recipes-bsp/tegra-bup-payload/tegra-bup-payload_1.0.bb @@ -16,17 +16,22 @@ def bup_dependency(d): return "kernel-bup-payload:do_deploy" return "${INITRAMFS_IMAGE}:do_image_complete" -BUPFILE = "${@bupfile_basename(d)}.bup-payload" +BUPFILENAME = "${@bupfile_basename(d)}" do_install() { install -d ${D}/opt/ota_package/ - install -m 0644 ${DEPLOY_DIR_IMAGE}/${BUPFILE} ${D}/opt/ota_package/bl_update_payload + if [ -e ${DEPLOY_DIR_IMAGE}/${BUPFILENAME}.bl_only.bup_payload ]; then + install -m 0644 ${DEPLOY_DIR_IMAGE}/${BUPFILENAME}.bl_only.bup_payload ${D}/opt/ota_package/bl_only_payload + fi + if [ -e ${DEPLOY_DIR_IMAGE}/${BUPFILENAME}.kernel_only.bup_payload ]; then + install -m 0644 ${DEPLOY_DIR_IMAGE}/${BUPFILENAME}.kernel_only.bup_payload ${D}/opt/ota_package/kernel_only_payload + fi } ALLOW_EMPTY:${PN} = "1" do_install[depends] += "${@bup_dependency(d)}" -FILES:${PN} = "/opt/ota_package/bl_update_payload" +FILES:${PN} = "/opt/ota_package" RDEPENDS:${PN} += "tegra-redundant-boot-update-engine" # For UEFI build - remove once buildpaths issue is resolved there INSANE_SKIP:${PN} = "buildpaths" diff --git a/recipes-kernel/kernel-bup-payload/kernel-bup-payload.bb b/recipes-kernel/kernel-bup-payload/kernel-bup-payload.bb index a9998b94..5b7bdd45 100644 --- a/recipes-kernel/kernel-bup-payload/kernel-bup-payload.bb +++ b/recipes-kernel/kernel-bup-payload/kernel-bup-payload.bb @@ -24,7 +24,6 @@ do_deploy() { initramfs_symlink_name=${imageType}-${INITRAMFS_LINK_NAME} oe_make_bup_payload ${DEPLOY_DIR_IMAGE}/${initramfs_symlink_name}.cboot install -d ${DEPLOYDIR} - install -m 0644 ${WORKDIR}/bup-payload/bl_update_payload ${DEPLOYDIR}/${initramfs_symlink_name}.bup-payload for f in ${WORKDIR}/bup-payload/*_only_payload; do [ -e $f ] || continue sfx=$(basename $f _payload)