Hello,
I am attempting to confirm that after the repository migration from git://git.freescale.com/imx.... to https://source.codeaurora.org/external/imx.... that our build instructions will still function. I have run into a problem that I cannot wrap my head around.
For our custom i.MX6 board currently we are installing imx-4.1-krogoth from the following repo:
$ repo init -u https://source.codeaurora.org/external/imx/fsl-yocto-arm-bsp -b imx-4.1-krogoth
$ repo sync
We set the build configuration, add our recipe and then run bitbake:
$ bitbake fsl-image-gui
It has been running fine so far but I run into a checksum error for the firmware-imx-5.4.bin. It tells me that the checksum is x but was expecting y and that I can just add x to the recipe. I have done so and it then tells me that the checksum is y but it was expecting x and I may add y to the recipe. Back and forth over and over. Below I will paste the errors for both versions of the error (note that I have repeated this many times now), the firmware-imx.inc, the firmware-imx_5.4.bb, and some temp files that I have attempted to remove. Please let me know what else I may provide if necessary.
firmware-imx.inc
SUMMARY = "Freescale IMX firmware"
DESCRIPTION = "Freescale IMX firmware such as for the VPU"
SECTION = "base"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://COPYING;md5=8cf95184c220e247b9917e7244124c5a"
PE = "1"
#BRCM firmware git
SRCBRANCH ?= "nxp/master"
SRC_URI = "${FSL_MIRROR}/firmware-imx-${PV}.bin \
https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp;branch=${SRCBRANCH};destsuffix=${S}/git "
inherit fsl-eula-unpack
do_install() {
install -d ${D}${base_libdir}/firmware/imx
install -d ${D}${base_libdir}/firmware/bcm
install -d ${D}${sysconfdir}/firmware
cp -rfv firmware/* ${D}${base_libdir}/firmware/
#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/
#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/
#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
find ${D}${base_libdir}/firmware -type f -exec chmod 644 '{}' ';'
find ${D}${base_libdir}/firmware -type f -exec chown root:root '{}' ';'
# Remove files not going to be installed
find ${D}${base_libdir}/firmware/ -name '*.mk' -exec rm '{}' ';'
}
python populate_packages_prepend() {
vpudir = bb.data.expand('${base_libdir}/firmware/vpu', d)
do_split_packages(d, vpudir, '^vpu_fw_([^_]*).*\.bin',
output_pattern='firmware-imx-vpu-%s',
description='Freescale IMX Firmware %s',
extra_depends='',
prepend=True)
sdmadir = bb.data.expand('${base_libdir}/firmware/sdma', d)
do_split_packages(d, sdmadir, '^sdma-([^-]*).*\.bin',
output_pattern='firmware-imx-sdma-%s',
description='Freescale IMX Firmware %s',
extra_depends='',
prepend=True)
}
ALLOW_EMPTY_${PN} = "1"
PACKAGES_DYNAMIC = "${PN}-vpu-* ${PN}-sdma-*"
PACKAGES =+ "${PN}-epdc ${PN}-brcm"
FILES_${PN}-epdc = "${base_libdir}/firmware/imx/epdc/"
FILES_${PN}-brcm = "${base_libdir}/firmware/bcm/*/*.bin ${base_libdir}/firmware/bcm/*/*.cal ${sysconfdir}/firmware/"
PACKAGE_ARCH = "${MACHINE_SOCARCH}"
firmware-imx_5.4.bb
# Copyright (C) 2012-2016 Freescale Semiconductor
require firmware-imx.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=8cf95184c220e247b9917e7244124c5a"
SRC_URI[md5sum] = "dae846ca2fc4504067f725f501491adf"
SRC_URI[sha256sum] = "c5bd4bff48cce9715a5d6d2c190ff3cd2262c7196f7facb9b0eda231c92cc223"
#SRC_URI[md5sum] = "8f5418788ed659d651ff262f90952cf5"
#SRC_URI[sha256sum] = "d1cdda0aa7ebc2c642818d148a74bdb572c0ecec144a7119c8fcef0351e588cf"
#BRCM firmware git
SRCREV = "951c1363abe95dd75ab3e9447f640d7807240236"
COMPATIBLE_MACHINE = "(mx5|mx6|mx6ul|mx6sll|mx7)"
Error #1
desktop:~/fsl-release-bsp/testbuild3$ bitbake fsl-image-gui
Parsing recipes: 100% |######################################################################################################################################################################| Time: 00:05:32
Parsing of 2219 .bb files complete (0 cached, 2219 parsed). 2794 targets, 210 skipped, 5 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.30.0"
BUILD_SYS = "i686-linux"
NATIVELSBSTRING = "Ubuntu-14.04"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "imx6qtetra"
DISTRO = "fsl-imx-x11"
DISTRO_VERSION = "4.1.15-2.1.0"
TUNE_FEATURES = "arm armv7a vfp neon callconvention-hard cortexa9"
TARGET_FPU = "hard"
meta
meta-poky = "HEAD:f5da2a5913319ad6ac2141438ba1aa17576326ab"
meta-oe
meta-multimedia = "HEAD:247b1267bbe95719cd4877d2d3cfbaf2a2f4865a"
meta-fsl-arm = "HEAD:be78894e4682f111575470fb23e51e6ba523508d"
meta-fsl-arm-extra = "HEAD:3dfb82fc7e703eae9891b3ffda0e9393701f2396"
meta-fsl-demos = "HEAD:a165068f8a0d1cf29aabe4b4053f28be1c2aa492"
meta-versalogic = "master:35228c85d0ff51ed5e067e6fda15a4d5d162f407"
meta-bsp
meta-sdk = "HEAD:f0e54cdf7a1c6d35976b0be80ded28a7f019b567"
meta-browser = "HEAD:77736988073a5d90fcff9d0005c8477332ede387"
meta-gnome
meta-networking
meta-python
meta-filesystems = "HEAD:247b1267bbe95719cd4877d2d3cfbaf2a2f4865a"
meta-qt5 = "HEAD:ccae79be69c5268df3b47e4e14cea0591c39a531"
NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: bash-4.3.30-r0 do_install_ptest_base: Taskhash mismatch a9d22420b20600a83dfc837e5b6c8caa verses 231cdb3d93702f598f7f6a1e9ae8eafe for /home/versalogic/fsl-release-bsp/sources/poky/meta/recipes-extended/bash/bash_4.3.30.bb.do_install_ptest_base
ERROR: Taskhash mismatch a9d22420b20600a83dfc837e5b6c8caa verses 231cdb3d93702f598f7f6a1e9ae8eafe for /home/versalogic/fsl-release-bsp/sources/poky/meta/recipes-extended/bash/bash_4.3.30.bb.do_install_ptest_base
WARNING: firmware-imx-1_5.4-r0 do_fetch: Checksum mismatch for local file /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin
Cleaning and trying again.
WARNING: firmware-imx-1_5.4-r0 do_fetch: Renaming /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin to /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin_bad-checksum_dae846ca2fc4504067f725f501491adf
WARNING: firmware-imx-1_5.4-r0 do_fetch: Checksum failure encountered with download of http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin - will attempt other sources if available
WARNING: firmware-imx-1_5.4-r0 do_fetch: Checksum mismatch for local file /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin
Cleaning and trying again.
WARNING: firmware-imx-1_5.4-r0 do_fetch: Renaming /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin to /home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin_bad-checksum_dae846ca2fc4504067f725f501491adf
ERROR: firmware-imx-1_5.4-r0 do_fetch: Checksum failure fetching http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin
ERROR: firmware-imx-1_5.4-r0 do_fetch: Function failed: Fetcher failure for URL: 'http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin'. Checksum mismatch!
File: '/home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin' has md5 checksum dae846ca2fc4504067f725f501491adf when 8f5418788ed659d651ff262f90952cf5 was expected
File: '/home/versalogic/fsl-release-bsp/downloads/firmware-imx-5.4.bin' has sha256 checksum c5bd4bff48cce9715a5d6d2c190ff3cd2262c7196f7facb9b0eda231c92cc223 when d1cdda0aa7ebc2c642818d148a74bdb572c0ecec144a7119c8fcef0351e588cf was expected
If this change is expected (e.g. you have upgraded to a new version without updating the checksums) then you can use these lines within the recipe:
SRC_URI[md5sum] = "dae846ca2fc4504067f725f501491adf"
SRC_URI[sha256sum] = "c5bd4bff48cce9715a5d6d2c190ff3cd2262c7196f7facb9b0eda231c92cc223"
Otherwise you should retry the download and/or check with upstream to determine if the file has become corrupted or otherwise unexpectedly modified.
ERROR: Logfile of failure stored in: /home/versalogic/fsl-release-bsp/testbuild3/tmp/work/cortexa9hf-neon-mx6qdl-poky-linux-gnueabi/firmware-imx/1_5.4-r0/temp/log.do_fetch.29351
ERROR: Task 1330 (/home/versalogic/fsl-release-bsp/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-bsp/firmware-imx/firmware-imx_5.4.bb, do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3864 tasks of which 554 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
/home/versalogic/fsl-release-bsp/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-bsp/firmware-imx/firmware-imx_5.4.bb, do_fetch
Summary: There were 5 WARNING messages shown.
Summary: There were 4 ERROR messages shown, returning a non-zero exit code.
Error #2
desktop:~/fsl-release-bsp/testbuild3$ bitbake fsl-image-gui
Loading cache: 100% |########################################################################################################################################################################| ETA: 00:00:00
Loaded 2795 entries from dependency cache.
Parsing recipes: 100% |######################################################################################################################################################################| Time: 00:00:02
Parsing of 2219 .bb files complete (2218 cached, 1 parsed). 2794 targets, 210 skipped, 5 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.30.0"
BUILD_SYS = "i686-linux"
NATIVELSBSTRING = "Ubuntu-14.04"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "imx6qtetra"
DISTRO = "fsl-imx-x11"
DISTRO_VERSION = "4.1.15-2.1.0"
TUNE_FEATURES = "arm armv7a vfp neon callconvention-hard cortexa9"
TARGET_FPU = "hard"
meta
meta-poky = "HEAD:f5da2a5913319ad6ac2141438ba1aa17576326ab"
meta-oe
meta-multimedia = "HEAD:247b1267bbe95719cd4877d2d3cfbaf2a2f4865a"
meta-fsl-arm = "HEAD:be78894e4682f111575470fb23e51e6ba523508d"
meta-fsl-arm-extra = "HEAD:3dfb82fc7e703eae9891b3ffda0e9393701f2396"
meta-fsl-demos = "HEAD:a165068f8a0d1cf29aabe4b4053f28be1c2aa492"
meta-versalogic = "master:35228c85d0ff51ed5e067e6fda15a4d5d162f407"
meta-bsp
meta-sdk = "HEAD:f0e54cdf7a1c6d35976b0be80ded28a7f019b567"
meta-browser = "HEAD:77736988073a5d90fcff9d0005c8477332ede387"
meta-gnome
meta-networking
meta-python
meta-filesystems = "HEAD:247b1267bbe95719cd4877d2d3cfbaf2a2f4865a"
meta-qt5 = "HEAD:ccae79be69c5268df3b47e4e14cea0591c39a531"
NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: firmware-imx-1_5.4-r0 do_fetch: Checksum mismatch for local file /home/versalogic/fsl-release-bsp/downloads/fsl-arm-yocto-bsp
Cleaning and trying again.
WARNING: firmware-imx-1_5.4-r0 do_fetch: Renaming /home/versalogic/fsl-release-bsp/downloads/fsl-arm-yocto-bsp to /home/versalogic/fsl-release-bsp/downloads/fsl-arm-yocto-bsp_bad-checksum_8f5418788ed659d651ff262f90952cf5
WARNING: firmware-imx-1_5.4-r0 do_fetch: Checksum failure encountered with download of https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp;branch=nxp/master;destsuffix=/home/vers... - will attempt other sources if available
ERROR: firmware-imx-1_5.4-r0 do_fetch: Fetcher failure for URL: 'https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp;branch=nxp/master;destsuffix=/home/versalogic/fsl-release-bsp/testbuild3/tmp/work/cortexa9hf-neon-mx6qdl-poky-linux-gnueabi/firmware-imx/1_5.4-r0/firmware-imx-5.4/git'. Checksum mismatch!
File: '/home/versalogic/fsl-release-bsp/downloads/fsl-arm-yocto-bsp' has md5 checksum 8f5418788ed659d651ff262f90952cf5 when dae846ca2fc4504067f725f501491adf was expected
File: '/home/versalogic/fsl-release-bsp/downloads/fsl-arm-yocto-bsp' has sha256 checksum d1cdda0aa7ebc2c642818d148a74bdb572c0ecec144a7119c8fcef0351e588cf when c5bd4bff48cce9715a5d6d2c190ff3cd2262c7196f7facb9b0eda231c92cc223 was expected
If this change is expected (e.g. you have upgraded to a new version without updating the checksums) then you can use these lines within the recipe:
SRC_URI[md5sum] = "8f5418788ed659d651ff262f90952cf5"
SRC_URI[sha256sum] = "d1cdda0aa7ebc2c642818d148a74bdb572c0ecec144a7119c8fcef0351e588cf"
Otherwise you should retry the download and/or check with upstream to determine if the file has become corrupted or otherwise unexpectedly modified.
ERROR: firmware-imx-1_5.4-r0 do_fetch: Function failed: Fetcher failure for URL: 'https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp;branch=nxp/master;destsuffix=/home/versalogic/fsl-release-bsp/testbuild3/tmp/work/cortexa9hf-neon-mx6qdl-poky-linux-gnueabi/firmware-imx/1_5.4-r0/firmware-imx-5.4/git'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: /home/versalogic/fsl-release-bsp/testbuild3/tmp/work/cortexa9hf-neon-mx6qdl-poky-linux-gnueabi/firmware-imx/1_5.4-r0/temp/log.do_fetch.31349
ERROR: Task 1330 (/home/versalogic/fsl-release-bsp/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-bsp/firmware-imx/firmware-imx_5.4.bb, do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3885 tasks of which 3880 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
/home/versalogic/fsl-release-bsp/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-bsp/firmware-imx/firmware-imx_5.4.bb, do_fetch
Summary: There were 3 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Have tried in combination as well as individually:
* updating the .bb file with the reported "correct" checksums
* removing the created firmware-imx_5.4.bin and firmware-imx_5.4.bin.done and fsl-arm-yocto-bsp_bad-checksum_8f5418788ed659d651ff262f90952cf5 from the downloads folder
* removed the /home/versalogic/fsl-release-bsp/testbuild3/tmp/work/cortexa9hf-neon-mx6qdl-poky-linux-gnueabi/firmware-imx folder and/or just the logs deeper in that folder
I have also tried starting from scratch 3 times, as well as using a different repository to no avail.
What obvious thing am I missing? :smileyhappy:
Thanks!
Nathan
See attachment, please!
copy these 2 files to ~/fsl-release-bsp/downloads.
firmware-im-5.4.bin and firmware-im-5.4.bin.done
Weidong
Hello Weidong and thank you for the reply.
Those 2 files were already in the ~/fsl-release-bsp/downloads directory in fact, and I was able to confirm also that the firmware-imx-5.4.bin had a md5sum of the expected "dae846ca2fc4504067f725f501491adf". It pushed me to pay more attention to the errors and I found that I could download that file directly via a web browser from http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin which was listed as a mirror in the error message if I am understanding it. Again, it had the correct md5.
So in my firmware-imx.inc file I changed the following line
From:
SRC_URI = "${FSL_MIRROR}/firmware-imx-${PV}.bin \
https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp;branch=${SRCBRANCH};destsuffix=${S}/git "
To:
SRC_URI = "http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin "
I came to the above with some experimentation and guess work more than anything. That ultimately got me a lot further, however I eventually ended up with another checksum error still mentioning the firmware-imx_5.4.bb file but this time it was regarding the LIC_FILES_CHKSUM. After some research I realized I had removed the "fsl-eula=true" portion from the original SRC_URI line.
It is now:
SRC_URI = "http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.4.bin;fsl-eula=true "
My bitbake is still in progress, but moving forward once again!
Thanks again for the reply and idea! I will add any follow up modifications I make after completion in order to mark this resolved.
Regards,
Nathan
Hi, Nathan,
It seemed that in your yocto firmware-im-5.4.bin file is not incomplete, It looks like the firmware-im-5.4.bin file in your yocto seems to be incomplete, so I will send it to you and ask you to replace yours. When you compile, Yocto will no longer download this file. I just recompiled 4.1.15_2.0.0 BSP and found no problems.
Have a nice day!
B.R,
Weidong