diff --git a/recipes-bsp/firmware/firmware-qcom-nhlos.inc b/recipes-bsp/firmware/firmware-qcom-nhlos.inc index 56530258..199bfab8 100644 --- a/recipes-bsp/firmware/firmware-qcom-nhlos.inc +++ b/recipes-bsp/firmware/firmware-qcom-nhlos.inc @@ -70,7 +70,14 @@ do_install:prepend() { elif [ -r ${B}/$fw ] ; then install -m 0644 ${B}/$fw ${D}${FW_QCOM_PATH} elif [ -r ${B}/firmware/image/$fw ] ; then - install -m 0644 ${B}/firmware/image/$fw ${D}${FW_QCOM_PATH} + if [ -d ${B}/firmware/image/$fw ] ; then + find ${B}/firmware/image/$fw -type f | while read f ; do + relpath="${f#${B}/firmware/image/}" + install -Dm 0644 "$f" ${D}${FW_QCOM_PATH}/"$relpath" + done + else + install -m 0644 ${B}/firmware/image/$fw ${D}${FW_QCOM_PATH} + fi fi done fi diff --git a/recipes-bsp/firmware/firmware-qcom-qcm6490-idp.bb b/recipes-bsp/firmware/firmware-qcom-qcm6490-idp.bb new file mode 100644 index 00000000..b88dcb7d --- /dev/null +++ b/recipes-bsp/firmware/firmware-qcom-qcm6490-idp.bb @@ -0,0 +1,22 @@ +# Specify location of the corresponding NON-HLOS.bin file by adding +# NHLOS_URI:pn-firmware-qcom-qcm6490-idp = "..." to local.conf. Use "file://" +# if the file is provided locally. + +DESCRIPTION = "QCOM Firmware for QCM6490-IDP board" + +LICENSE = "CLOSED" + +FW_QCOM_NAME = "qcm6490" + +FW_QCOM_LIST = "\ + modem.mbn modem_pr/ \ +" + +S = "${UNPACKDIR}" + +require recipes-bsp/firmware/firmware-qcom.inc +require recipes-bsp/firmware/firmware-qcom-nhlos.inc + +SPLIT_FIRMWARE_PACKAGES = "\ + linux-firmware-qcom-${FW_QCOM_NAME}-modem \ +" diff --git a/recipes-bsp/firmware/firmware-qcom-rb3gen2.bb b/recipes-bsp/firmware/firmware-qcom-rb3gen2.bb new file mode 100644 index 00000000..6862048e --- /dev/null +++ b/recipes-bsp/firmware/firmware-qcom-rb3gen2.bb @@ -0,0 +1,22 @@ +# Specify location of the corresponding NON-HLOS.bin file by adding +# NHLOS_URI:pn-firmware-qcom-rb3gen2 = "..." to local.conf. Use "file://" +# if the file is provided locally. + +DESCRIPTION = "QCOM Firmware for Rb3 Gen2 board" + +LICENSE = "CLOSED" + +FW_QCOM_NAME = "qcs6490" + +FW_QCOM_LIST = "\ + modem.mbn modem_pr/ \ +" + +S = "${UNPACKDIR}" + +require recipes-bsp/firmware/firmware-qcom.inc +require recipes-bsp/firmware/firmware-qcom-nhlos.inc + +SPLIT_FIRMWARE_PACKAGES = "\ + linux-firmware-qcom-${FW_QCOM_NAME}-modem \ +" diff --git a/recipes-bsp/firmware/firmware-qcom.inc b/recipes-bsp/firmware/firmware-qcom.inc index b5645f29..a396e10d 100644 --- a/recipes-bsp/firmware/firmware-qcom.inc +++ b/recipes-bsp/firmware/firmware-qcom.inc @@ -30,7 +30,8 @@ FILES:linux-firmware-qcom-${FW_QCOM_NAME}-dsps = "${FW_QCOM_PATH}/dsps.mbn*" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-generalpurpose = "${FW_QCOM_PATH}/gpdsp*.mbn*" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-gss = "${FW_QCOM_PATH}/gss.mbn*" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-ipa = "${FW_QCOM_PATH}/ipa_fws.mbn* ${FW_QCOM_PATH}/ipa_fws.elf*" -FILES:linux-firmware-qcom-${FW_QCOM_NAME}-modem = "${FW_QCOM_PATH}/mba.mbn* ${FW_QCOM_PATH}/modem.mbn* ${FW_QCOM_PATH}/modem*.jsn" +FILES:linux-firmware-qcom-${FW_QCOM_NAME}-modem = "${FW_QCOM_PATH}/mba.mbn* ${FW_QCOM_PATH}/modem.mbn* \ + ${FW_QCOM_PATH}/modem*.jsn ${FW_QCOM_PATH}/modem_pr/so/*.mbn" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-q6 = "${FW_QCOM_PATH}/q6.mbn*" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-sensors = "${FW_QCOM_PATH}/slpi.mbn* ${FW_QCOM_PATH}/slpi*.jsn" FILES:linux-firmware-qcom-${FW_QCOM_NAME}-venus = "${FW_QCOM_PATH}/venus.mbn* ${FW_QCOM_PATH}/vidc* ${FW_QCOM_BASE_PATH}/vpu*" diff --git a/recipes-bsp/packagegroups/packagegroup-qcm6490-idp.bb b/recipes-bsp/packagegroups/packagegroup-qcm6490-idp.bb index f7f691de..0569c574 100644 --- a/recipes-bsp/packagegroups/packagegroup-qcm6490-idp.bb +++ b/recipes-bsp/packagegroups/packagegroup-qcm6490-idp.bb @@ -16,6 +16,7 @@ RRECOMMENDS:${PN}-firmware = " \ linux-firmware-qcom-qcm6490-audio \ linux-firmware-qcom-qcm6490-compute \ linux-firmware-qcom-qcm6490-ipa \ + linux-firmware-qcom-qcm6490-modem \ linux-firmware-qcom-qcm6490-qupv3fw \ linux-firmware-qcom-vpu \ " diff --git a/recipes-bsp/packagegroups/packagegroup-rb3gen2.bb b/recipes-bsp/packagegroups/packagegroup-rb3gen2.bb index ba2a2df0..b375b958 100644 --- a/recipes-bsp/packagegroups/packagegroup-rb3gen2.bb +++ b/recipes-bsp/packagegroups/packagegroup-rb3gen2.bb @@ -21,6 +21,7 @@ RRECOMMENDS:${PN}-firmware = " \ linux-firmware-qcom-qcm6490-audio \ linux-firmware-qcom-qcm6490-compute \ linux-firmware-qcom-qcm6490-qupv3fw \ + linux-firmware-qcom-qcs6490-modem \ linux-firmware-qcom-vpu \ "