@@ -15,14 +15,19 @@ QCOM_ESP_FILE ?= "${@'efi.bin' if d.getVar('QCOM_ESP_IMAGE') else ''}"
1515QCOM_DTB_DEFAULT ?= "${@ os . path . basename (d . getVar ('KERNEL_DEVICETREE' ). split ()[0 ][:-4 ]) if d . getVar ('KERNEL_DEVICETREE' ) else '' }"
1616QCOM_DTB_FILE ?= "dtb.bin"
1717
18+ QCOM_BOOT_FILES_SUBDIR ?= ""
19+
20+ QCOM_PARTITION_CONF ?= ""
21+
1822QCOM_ROOTFS_FILE ?= "rootfs.img"
1923IMAGE_QCOMFLASH_FS_TYPE ??= "ext4"
2024
2125QCOMFLASH_DIR = "${IMGDEPLOYDIR} /${IMAGE_NAME} .qcomflash"
2226IMAGE_CMD :qcomflash = "create_qcomflash_pkg"
2327do_image_qcomflash [dirs ] = "${QCOMFLASH_DIR} "
2428do_image_qcomflash [cleandirs ] = "${QCOMFLASH_DIR} "
25- do_image_qcomflash [depends ] += "qcom-gen-partition-bins:do_deploy virtual/kernel:do_deploy \
29+ do_image_qcomflash [depends ] += "${@ ['' , '${QCOM_PARTITION_CONF} :do_deploy' ][d . getVar ('QCOM_PARTITION_CONF' ) != '' ]} \
30+ virtual/kernel:do_deploy \
2631 ${@ '${QCOM_ESP_IMAGE} :do_image_complete' if d . getVar ('QCOM_ESP_IMAGE' ) != '' else '' }"
2732IMAGE_TYPEDEP :qcomflash += "${IMAGE_QCOMFLASH_FS_TYPE} "
2833
@@ -60,24 +65,32 @@ create_qcomflash_pkg() {
6065 install -m 0644 ${IMGDEPLOYDIR} /${IMAGE_LINK_NAME} . ${IMAGE_QCOMFLASH_FS_TYPE} ${QCOM_ROOTFS_FILE}
6166
6267 # partition bins
63- for pbin in `find ${DEPLOY_DIR_IMAGE} -type f -name 'gpt_main*.bin' \
64- -o -name 'gpt_backup*.bin' -o -name 'patch*.xml' - o - name 'cdt.bin' `; do
68+ for pbin in `find ${DEPLOY_DIR_IMAGE} / ${QCOM_BOOT_FILES_SUBDIR} - maxdepth 1 -type f -name 'gpt_main*.bin' \
69+ -o -name 'gpt_backup*.bin' -o -name 'patch*.xml' `; do
6570 install -m 0644 ${pbin} .
6671 done
72+
6773 # skip BLANK_GPT and WIPE_PARTITIONS for rawprogram xml files
68- for rawpg in `find ${DEPLOY_DIR_IMAGE} -type f -name 'rawprogram*.xml' \
74+ for rawpg in `find ${DEPLOY_DIR_IMAGE} / ${QCOM_BOOT_FILES_SUBDIR} - maxdepth 1 -type f -name 'rawprogram*.xml' \
6975 ! -name 'rawprogram*_BLANK_GPT.xml' ! -name 'rawprogram*_WIPE_PARTITIONS.xml' `; do
7076 install -m 0644 ${rawpg} .
7177 done
72- for logfs in `find ${DEPLOY_DIR_IMAGE} -type f -name 'logfs_*.bin' `; do
78+
79+ if [ -n "${QCOM_CDT_FILE} " ]; then
80+ install -m 0644 ${DEPLOY_DIR_IMAGE} /${QCOM_BOOT_FILES_SUBDIR} /${QCOM_CDT_FILE} . bin cdt . bin
81+ # For machines with a published cdt file, let's make sure we flash it
82+ sed -i '/label="cdt"/ s/filename=""/filename="cdt.bin"/' rawprogram *. xml
83+ fi
84+
85+ for logfs in `find ${DEPLOY_DIR_IMAGE} /${QCOM_BOOT_FILES_SUBDIR} -maxdepth 1 -type f -name 'logfs_*.bin' `; do
7386 install -m 0644 ${logfs} .
7487 done
75- for zeros in `find ${DEPLOY_DIR_IMAGE} -type f -name 'zeros_*.bin' `; do
88+ for zeros in `find ${DEPLOY_DIR_IMAGE} / ${QCOM_BOOT_FILES_SUBDIR} - maxdepth 1 -type f -name 'zeros_*.bin' `; do
7689 install -m 0644 ${zeros} .
7790 done
7891
7992 # boot firmware
80- for bfw in `find ${DEPLOY_DIR_IMAGE} -type f -name '*.elf' -o -name '*.mbn' -o -name '*.fv' `; do
93+ for bfw in `find ${DEPLOY_DIR_IMAGE} / ${QCOM_BOOT_FILES_SUBDIR} - maxdepth 1 -type f -name '*.elf' -o -name '*.mbn' -o -name '*.fv' `; do
8194 install -m 0644 ${bfw} .
8295 done
8396
0 commit comments