aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-bsp
diff options
context:
space:
mode:
authorNicolas Dechesne <nicolas.dechesne@linaro.org>2017-05-09 22:27:38 +0200
committerNicolas Dechesne <nicolas.dechesne@linaro.org>2017-05-09 22:27:38 +0200
commit3e8c6e4de8c8a517d009bbd4449744b922fa3e5d (patch)
treea555c49304e72420a5f570752b5f0685f0b0246a /recipes-bsp
parentdc97efd7064ca8316115e140d6f37f2faae2eaa0 (diff)
downloadmeta-qcom-3e8c6e4de8c8a517d009bbd4449744b922fa3e5d.tar.gz
meta-qcom-3e8c6e4de8c8a517d009bbd4449744b922fa3e5d.tar.bz2
meta-qcom-3e8c6e4de8c8a517d009bbd4449744b922fa3e5d.zip
firmware-qcom-dragonboard: upgrade to r1032.1
Qualcomm has release Linux BSP firmware package r1032.1. Main changes are the following: * new LICENSE/EULA that allows redistribution * new SBL with support for CDT partition and LK signing * new DSP firmware with GPS and audio coexistence Since the new license allows redistribution, the firmware is no hosted on 96boards.org and the file is published as a standard ZIP file, not a self extractable archive as before. Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Diffstat (limited to 'recipes-bsp')
-rw-r--r--recipes-bsp/firmware/firmware-qcom-dragonboard410c_1.4.0.bb90
-rw-r--r--recipes-bsp/firmware/firmware-qcom-dragonboard410c_1032.1.bb52
2 files changed, 52 insertions, 90 deletions
diff --git a/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1.4.0.bb b/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1.4.0.bb
deleted file mode 100644
index d64c41d..0000000
--- a/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1.4.0.bb
+++ /dev/null
@@ -1,90 +0,0 @@
-DESCRIPTION = "QCOM Firmware for DragonBoard 410c"
-
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=003cae816e20ae44589f8f7cc022cb54"
-
-SRC_URI = "http://developer.qualcomm.com/download/db410c/firmware-410c-${PV}.bin;qcom-eula=true"
-SRC_URI[md5sum] = "be80a375473a9308d8b4b47c4d8ff811"
-SRC_URI[sha256sum] = "822d2f8506d9657dbce6aa2bfce81ccbf97dcfc40831b70703b14b3f296fa4c0"
-
-DEPENDS += "mtools-native"
-do_unpack[depends] += "bc-native:do_populate_sysroot xz-native:do_populate_sysroot"
-
-COMPATIBLE_MACHINE = "(dragonboard-410c)"
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-S = "${WORKDIR}/linux-board-support-package-v1.4"
-
-python qcom_bin_do_unpack() {
- src_uri = (d.getVar('SRC_URI', True) or "").split()
- if len(src_uri) == 0:
- return
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- rootdir = localdata.getVar('WORKDIR', True)
- fetcher = bb.fetch2.Fetch(src_uri, localdata)
-
- for url in fetcher.ud.values():
- save_cwd = os.getcwd()
- # Check for supported fetchers
- if url.type in ['http', 'https', 'ftp', 'file']:
- if url.parm.get('qcom-eula', False):
- # If download has failed, do nothing
- if not os.path.exists(url.localpath):
- bb.debug(1, "Exiting as '%s' cannot be found" % url.basename)
- return
-
- # Change to the working directory
- bb.note("Handling file '%s' as a Qualcomm's EULA binary." % url.basename)
- save_cwd = os.getcwd()
- os.chdir(rootdir)
-
- cmd = "sh %s --auto-accept --force" % (url.localpath)
- bb.fetch2.runfetchcmd(cmd, d, quiet=True)
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
-
-python do_unpack() {
- eula = d.getVar('ACCEPT_EULA_'+d.getVar('MACHINE', True), True)
- eula_file = d.getVar('QCOM_EULA_FILE', True)
- pkg = d.getVar('PN', True)
- if eula == None:
- bb.fatal("To use '%s' you need to accept the EULA at '%s'. "
- "Please read it and in case you accept it, write: "
- "ACCEPT_EULA_dragonboard-410c = \"1\" in your local.conf." % (pkg, eula_file))
- elif eula == '0':
- bb.fatal("To use '%s' you need to accept the EULA." % pkg)
- else:
- bb.note("EULA has been accepted for '%s'" % pkg)
-
- # The binary unpack needs to be done first so 'S' is valid
- bb.build.exec_func('qcom_bin_do_unpack', d)
-
- try:
- bb.build.exec_func('base_do_unpack', d)
- except:
- raise
-}
-
-do_compile() {
- :
-}
-
-do_install() {
- install -d ${D}/lib/firmware/
- rm -f ./proprietary-linux/firmware.tar
- cp -r ./proprietary-linux/* ${D}/lib/firmware/
-
- MTOOLS_SKIP_CHECK=1 mcopy -i ./bootloaders-linux/NON-HLOS.bin \
- ::image/modem.* ::image/mba.mbn ${D}/lib/firmware/
-
- install -d ${D}${sysconfdir}/
- install -m 0644 LICENSE ${D}${sysconfdir}/license.txt
-}
-
-FILES_${PN} += "/lib/firmware/*"
-INSANE_SKIP_${PN} += "arch"
diff --git a/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1032.1.bb b/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1032.1.bb
new file mode 100644
index 0000000..686f2bc
--- /dev/null
+++ b/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1032.1.bb
@@ -0,0 +1,52 @@
+DESCRIPTION = "QCOM Firmware for DragonBoard 410c"
+
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4d087ee0965cb059f1b2f9429e166f64"
+
+SRC_URI = "http://builds.96boards.org/releases/dragonboard410c/qualcomm/firmware/linux-board-support-package-r${PV}.zip;qcom-eula=true"
+SRC_URI[md5sum] = "e1c7e8957b8f37a91cadc18c1aef5c04"
+SRC_URI[sha256sum] = "a76405fae85399343bc421b6101ba765d92b3709f2d4ae8afe85dc300cf72c7e"
+
+DEPENDS += "mtools-native"
+
+COMPATIBLE_MACHINE = "(dragonboard-410c)"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+S = "${WORKDIR}/linux-board-support-package-r${PV}"
+
+python do_unpack() {
+ eula = d.getVar('ACCEPT_EULA_'+d.getVar('MACHINE', True), True)
+ eula_file = d.getVar('QCOM_EULA_FILE', True)
+ pkg = d.getVar('PN', True)
+ if eula == None:
+ bb.fatal("To use '%s' you need to accept the EULA at '%s'. "
+ "Please read it and in case you accept it, write: "
+ "ACCEPT_EULA_dragonboard-410c = \"1\" in your local.conf." % (pkg, eula_file))
+ elif eula == '0':
+ bb.fatal("To use '%s' you need to accept the EULA." % pkg)
+ else:
+ bb.note("EULA has been accepted for '%s'" % pkg)
+
+ try:
+ bb.build.exec_func('base_do_unpack', d)
+ except:
+ raise
+}
+
+do_compile() {
+ :
+}
+
+do_install() {
+ install -d ${D}/lib/firmware/
+ cp -r ./proprietary-linux/* ${D}/lib/firmware/
+
+ MTOOLS_SKIP_CHECK=1 mcopy -i ./bootloaders-linux/NON-HLOS.bin \
+ ::image/modem.* ::image/mba.mbn ::image/wcnss.* ${D}/lib/firmware/
+
+ install -d ${D}${sysconfdir}/
+ install -m 0644 LICENSE ${D}${sysconfdir}/QCOM-LINUX-BOARD-SUPPORT-LICENSE
+}
+
+FILES_${PN} += "/lib/firmware/*"
+INSANE_SKIP_${PN} += "arch"