diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2020-02-17 19:37:29 +0100 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2020-03-12 19:06:46 +0100 |
commit | 78802e3ecd139a5031c06821526f249e060894c1 (patch) | |
tree | 502ce8a806046b1809e86051b24024d521a16c6d | |
parent | b4a20babea319d117614e3885d1d28a3b1a5766f (diff) |
firmware: update to 4.14.98 2.3.1
The seco firmware is now split out of firmware-imx.
The seco firmware has now a i.MX8X B0 and C0 silicon version.
Related-to: ELB-2351
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
-rw-r--r-- | conf/machine/apalis-imx8x.conf | 1 | ||||
-rw-r--r-- | conf/machine/colibri-imx8x.conf | 1 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8.4.1.inc (renamed from recipes-bsp/firmware-imx/firmware-imx-8.1.1.inc) | 7 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8_8.4.1.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8_8.1.1.bb) | 2 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8m_8.4.1.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8m_8.1.1.bb) | 0 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8x_8.1.1.bb | 20 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx_8.4.1.bb (renamed from recipes-bsp/firmware-imx/firmware-imx_8.1.1.bb) | 45 | ||||
-rw-r--r-- | recipes-bsp/imx-mkimage/imx-boot_%.bbappend | 58 | ||||
-rw-r--r-- | recipes-bsp/imx-mkimage/imx-mkimage_git.bbappend | 18 | ||||
-rw-r--r-- | recipes-bsp/imx-seco/imx-seco_2.5.6.bb | 35 |
10 files changed, 112 insertions, 75 deletions
diff --git a/conf/machine/apalis-imx8x.conf b/conf/machine/apalis-imx8x.conf index 726a0aa..d2abc60 100644 --- a/conf/machine/apalis-imx8x.conf +++ b/conf/machine/apalis-imx8x.conf @@ -5,6 +5,7 @@ MACHINE_NAME = "Apalis-iMX8X" +# for C0 silicon add mx8qxpc0 to the right of mx8qxp MACHINEOVERRIDES =. "mx8:mx8x:mx8qxp:" require conf/machine/include/imx-base.inc diff --git a/conf/machine/colibri-imx8x.conf b/conf/machine/colibri-imx8x.conf index 151513f..2686edd 100644 --- a/conf/machine/colibri-imx8x.conf +++ b/conf/machine/colibri-imx8x.conf @@ -5,6 +5,7 @@ MACHINE_NAME = "Colibri-iMX8X" +# for C0 silicon add mx8qxpc0 to the right of mx8qxp MACHINEOVERRIDES =. "mx8:mx8x:mx8qxp:" require conf/machine/include/imx-base.inc diff --git a/recipes-bsp/firmware-imx/firmware-imx-8.1.1.inc b/recipes-bsp/firmware-imx/firmware-imx-8.4.1.inc index 3231b49..a2fa611 100644 --- a/recipes-bsp/firmware-imx/firmware-imx-8.1.1.inc +++ b/recipes-bsp/firmware-imx/firmware-imx-8.4.1.inc @@ -3,15 +3,14 @@ # Copyright (C) 2018 O.S. Systems Software LTDA. SECTION = "base" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=fb0303e4ee8b0e71c094171e2272bd44" +LIC_FILES_CHKSUM = "file://COPYING;md5=fd4b227530cd88a82af6a5982cfb724d" -SRCBRANCH ?= "master" SRC_URI = " \ ${FSL_MIRROR}/firmware-imx-${PV}.bin;fsl-eula=true \ " -SRC_URI[md5sum] = "b494c9a2ba9f8906de73ac33068789a2" -SRC_URI[sha256sum] = "c115d5d0d115fc14754671bd2428f672f9f99677988588accef2fbca2c3f749c" +SRC_URI[md5sum] = "70bdefdd7fb58f782237acf4c648f5cd" +SRC_URI[sha256sum] = "f04b2deb4f126e6b6cd4460462292acd72183b9f799e3b873fb390ff0f18eb55" S = "${WORKDIR}/firmware-imx-${PV}" diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.1.1.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.4.1.bb index d99aa41..64fa288 100644 --- a/recipes-bsp/firmware-imx/firmware-imx-8_8.1.1.bb +++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.4.1.bb @@ -13,8 +13,6 @@ do_deploy() { install -m 0644 ${S}/firmware/hdmi/cadence/hdmitxfw.bin ${DEPLOYDIR} install -m 0644 ${S}/firmware/hdmi/cadence/hdmirxfw.bin ${DEPLOYDIR} install -m 0644 ${S}/firmware/hdmi/cadence/dpfw.bin ${DEPLOYDIR} - # SECO - install -m 0644 ${S}/firmware/seco/mx8qm-ahab-container.img ${DEPLOYDIR} } addtask deploy after do_install before do_build diff --git a/recipes-bsp/firmware-imx/firmware-imx-8m_8.1.1.bb b/recipes-bsp/firmware-imx/firmware-imx-8m_8.4.1.bb index a605d22..a605d22 100644 --- a/recipes-bsp/firmware-imx/firmware-imx-8m_8.1.1.bb +++ b/recipes-bsp/firmware-imx/firmware-imx-8m_8.4.1.bb diff --git a/recipes-bsp/firmware-imx/firmware-imx-8x_8.1.1.bb b/recipes-bsp/firmware-imx/firmware-imx-8x_8.1.1.bb deleted file mode 100644 index 85d394a..0000000 --- a/recipes-bsp/firmware-imx/firmware-imx-8x_8.1.1.bb +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 2018 NXP -SUMMARY = "Freescale i.MX firmware for 8X family" -DESCRIPTION = "Freescale i.MX firmware for 8X family" - -require firmware-imx-${PV}.inc - -inherit deploy - -do_install[noexec] = "1" - -do_deploy() { - # SECO - install -m 0644 ${S}/firmware/seco/mx8qx-ahab-container.img ${DEPLOYDIR} -} - -addtask deploy after do_install before do_build - -PACKAGE_ARCH = "${MACHINE_SOCARCH}" - -COMPATIBLE_MACHINE = "(mx8x)" diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.1.1.bb b/recipes-bsp/firmware-imx/firmware-imx_8.4.1.bb index 4e72baa..4d4b479 100644 --- a/recipes-bsp/firmware-imx/firmware-imx_8.1.1.bb +++ b/recipes-bsp/firmware-imx/firmware-imx_8.4.1.bb @@ -8,16 +8,10 @@ require firmware-imx-${PV}.inc PE = "1" -SRC_URI += " \ - git://github.com/NXP/imx-firmware.git;protocol=https;branch=${SRCBRANCH};destsuffix=${S}/git \ -" -SRCREV = "8ce9046f5058fdd2c5271f86ccfc61bc5a248ae3" - inherit allarch do_install() { install -d ${D}${base_libdir}/firmware/imx - install -d ${D}${base_libdir}/firmware/bcm install -d ${D}${sysconfdir}/firmware cd firmware @@ -37,42 +31,11 @@ do_install() { #the sdma firmware is expected in ${D}${base_libdir}/firmware/imx/sdma mv ${D}${base_libdir}/firmware/sdma ${D}${base_libdir}/firmware/imx/sdma - #1BW_BCM43340 - install -d ${D}${base_libdir}/firmware/bcm/1BW_BCM43340 - cp -rfv git/brcm/1BW_BCM43340/*.bin ${D}${base_libdir}/firmware/bcm/1BW_BCM43340 - cp -rfv git/brcm/1BW_BCM43340/*.cal ${D}${base_libdir}/firmware/bcm/1BW_BCM43340 - cp -rfv git/brcm/1BW_BCM43340/*.hcd ${D}${sysconfdir}/firmware/ - - #1CX_BCM4356 - install -d ${D}${base_libdir}/firmware/bcm/1CX_BCM4356 - cp -rfv git/brcm/1CX_BCM4356/fw_bcmdhd.bin ${D}${base_libdir}/firmware/bcm/1CX_BCM4356 - - #1DX_BCM4343W - install -d ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W - cp -rfv git/brcm/1DX_BCM4343W/*.bin ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W - cp -rfv git/brcm/1DX_BCM4343W/*.cal ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W - cp -rfv git/brcm/1DX_BCM4343W/*.hcd ${D}${sysconfdir}/firmware/ - - #1FD_BCM89359 - install -d ${D}${base_libdir}/firmware/bcm/1FD_BCM89359 - cp -rfv git/brcm/1FD_BCM89359/*.bin ${D}${base_libdir}/firmware/bcm/1FD_BCM89359 - cp -rfv git/brcm/1FD_BCM89359/*.hcd ${D}${sysconfdir}/firmware/ - - #SN8000_BCM43362 - install -d ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362 - cp -rfv git/brcm/SN8000_BCM43362/*.bin ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362 - cp -rfv git/brcm/SN8000_BCM43362/*.cal ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362 - cp -rfv git/brcm/1DX_BCM4343W/*.hcd ${D}${sysconfdir}/firmware/ - - #ZP_BCM4339 - install -d ${D}${base_libdir}/firmware/bcm/ZP_BCM4339 - cp -rfv git/brcm/ZP_BCM4339/*.bin ${D}${base_libdir}/firmware/bcm/ZP_BCM4339 - cp -rfv git/brcm/ZP_BCM4339/*.cal ${D}${base_libdir}/firmware/bcm/ZP_BCM4339 - cp -rfv git/brcm/ZP_BCM4339/*.hcd ${D}${sysconfdir}/firmware/ - mv ${D}${base_libdir}/firmware/epdc/ ${D}${base_libdir}/firmware/imx/epdc/ mv ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw + mv ${D}${base_libdir}/firmware/easrc/ ${D}${base_libdir}/firmware/imx/easrc/ + find ${D}${base_libdir}/firmware -type f -exec chmod 644 '{}' ';' find ${D}${base_libdir}/firmware -type f -exec chown root:root '{}' ';' @@ -100,10 +63,10 @@ ALLOW_EMPTY_${PN} = "1" PACKAGES_DYNAMIC = "${PN}-vpu-* ${PN}-sdma-*" -PACKAGES =+ "${PN}-epdc ${PN}-brcm ${PN}-scfw" +PACKAGES =+ "${PN}-easrc ${PN}-epdc ${PN}-scfw" FILES_${PN}-epdc = "${base_libdir}/firmware/imx/epdc/" -FILES_${PN}-brcm = "${base_libdir}/firmware/bcm/*/*.bin ${base_libdir}/firmware/bcm/*/*.cal ${sysconfdir}/firmware/" FILES_${PN}-scfw = "${base_libdir}/firmware/scfw/" +FILES_${PN}-easrc = "${base_libdir}/firmware/imx/easrc/" COMPATIBLE_MACHINE = "(imx)" diff --git a/recipes-bsp/imx-mkimage/imx-boot_%.bbappend b/recipes-bsp/imx-mkimage/imx-boot_%.bbappend index db891fc..2a840cb 100644 --- a/recipes-bsp/imx-mkimage/imx-boot_%.bbappend +++ b/recipes-bsp/imx-mkimage/imx-boot_%.bbappend @@ -1,6 +1,27 @@ ATF_MACHINE_NAME_mx8qxp = "bl31-imx8qx.bin" -SRCBRANCH = "imx_4.14.98_2.0.0_ga" -SRCREV = "dd0234001713623c79be92b60fa88bc07b07f24f" +ATF_MACHINE_NAME_mx8mn = "bl31-imx8mn.bin" + +SECO_CHIP ?= "qmb0" +SECO_CHIP_mx8qxp = "qxb0" +SECO_CHIP_imx8qxpc0mek = "qxc0" +SECO_CHIP_imx8qxpc0lpddr4arm2 = "qxc0" +SECO_CHIP_mx8qxpc0 = "qxc0" + +SECO_FIRMWARE = "mx8${SECO_CHIP}-ahab-container.img" + +SOC_TARGET_mx8mn = "iMX8MN" + +SRCBRANCH = "imx_4.14.98_2.3.0" +SRCREV = "d7f9440dd5c050cc22cb362d53d4048e689a0c01" + +REV_CHIP ?= "B0" +REV_CHIP_imx8qxpc0mek = "C0" +REV_CHIP_imx8qxpc0lpddr4arm2 = "C0" +REV_CHIP_mx8qxpc0 = "C0" + +IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware imx-seco" +IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m" +IMX_EXTRA_FIRMWARE_mx8x = "firmware-imx-8x imx-sc-firmware imx-seco" compile_mx8m() { bbnote 8MQ/8MM boot binary build @@ -16,13 +37,38 @@ compile_mx8m() { cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin } +compile_mx8() { + bbnote 8QM boot binary build + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin + cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin + cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE} ${BOOT_STAGING} +} +compile_mx8x() { + bbnote 8QX boot binary build + cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE} ${BOOT_STAGING} + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin + cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin +} +do_compile() { + compile_${SOC_FAMILY} + # mkimage for i.MX8 + for target in ${IMXBOOT_TARGETS}; do + bbnote "building ${SOC_TARGET} - ${target}" + make SOC=${SOC_TARGET} REV=${REV_CHIP} dtbs=${UBOOT_DTB_NAME} ${target} + if [ -e "${BOOT_STAGING}/flash.bin" ]; then + cp ${BOOT_STAGING}/flash.bin ${S}/${BOOT_CONFIG_MACHINE}-${target} + fi + done +} deploy_mx8() { install -d ${DEPLOYDIR}/${BOOT_TOOLS} - install -m 0644 ${BOOT_STAGING}/mx8qm-ahab-container.img ${DEPLOYDIR}/${BOOT_TOOLS} - install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS} + install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE} ${DEPLOYDIR}/${BOOT_TOOLS} + install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS} } deploy_mx8x() { install -d ${DEPLOYDIR}/${BOOT_TOOLS} - install -m 0644 ${BOOT_STAGING}/mx8qx-ahab-container.img ${DEPLOYDIR}/${BOOT_TOOLS} - install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS} + install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE} ${DEPLOYDIR}/${BOOT_TOOLS} + install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS} } diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bbappend b/recipes-bsp/imx-mkimage/imx-mkimage_git.bbappend index 636494f..da59113 100644 --- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bbappend +++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bbappend @@ -1,2 +1,16 @@ -SRCBRANCH = "imx_4.14.98_2.0.0_ga" -SRCREV = "dd0234001713623c79be92b60fa88bc07b07f24f" +SRCBRANCH = "imx_4.14.98_2.3.0" +SRCREV = "d7f9440dd5c050cc22cb362d53d4048e689a0c01" + +REV_CHIP ?= "B0" +REV_CHIP_imx8qxpc0mek = "C0" +REV_CHIP_imx8qxpc0lpddr4arm2 = "C0" +REV_CHIP_mx8qxpc0 = "C0" + +do_compile () { + cd ${S} + oe_runmake clean + oe_runmake bin + oe_runmake -C iMX8M -f soc.mak mkimage_imx8 + oe_runmake -C iMX8QM REV=${REV_CHIP} -f soc.mak imx8qm_dcd.cfg.tmp + oe_runmake -C iMX8QX REV=${REV_CHIP} -f soc.mak imx8qx_dcd.cfg.tmp +} diff --git a/recipes-bsp/imx-seco/imx-seco_2.5.6.bb b/recipes-bsp/imx-seco/imx-seco_2.5.6.bb new file mode 100644 index 0000000..eb2b55b --- /dev/null +++ b/recipes-bsp/imx-seco/imx-seco_2.5.6.bb @@ -0,0 +1,35 @@ +# Copyright 2019 NXP + +SUMMARY = "NXP i.MX SECO firmware" +DESCRIPTION = "NXP IMX SECO firmware" +SECTION = "base" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://COPYING;md5=fd4b227530cd88a82af6a5982cfb724d" + +inherit fsl-eula-unpack deploy + +SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true " + +SRC_URI[md5sum] = "b0e0e358f02b7030b57f9eca6a22cf3d" +SRC_URI[sha256sum] = "e18ce97a7ae0878c708393c6e65aaad86508d642ef4fd1b3ad9930287cc96294" + +do_compile[noexec] = "1" + +do_install[noexec] = "1" + +SECO_CHIP ?= "qmb0" +SECO_CHIP_mx8qxp = "qxb0" +SECO_CHIP_imx8qxpc0mek = "qxc0" +SECO_CHIP_imx8qxpc0lpddr4arm2 = "qxc0" +SECO_CHIP_mx8qxpc0 = "qxc0" + +SECO_FIRMWARE_NAME = "mx8${SECO_CHIP}-ahab-container.img" + +addtask deploy after do_install +do_deploy () { + # Deploy i.MX8 SECO firmware files + install -m 0644 ${S}/firmware/seco/${SECO_FIRMWARE_NAME} ${DEPLOYDIR} +} + + +COMPATIBLE_MACHINE = "(mx8qm|mx8qxp)" |