diff --git a/device/community/firmware-qcom-db410c-wcnss/APKBUILD b/device/community/firmware-qcom-db410c-wcnss/APKBUILD new file mode 100644 index 000000000..f250a0fb1 --- /dev/null +++ b/device/community/firmware-qcom-db410c-wcnss/APKBUILD @@ -0,0 +1,46 @@ +pkgname=firmware-qcom-db410c-wcnss +pkgver=1034.2.1 +pkgrel=3 +pkgdesc="DragonBoard 410c WiFi/BT firmware" +url="https://releases.linaro.org/96boards/dragonboard410c/qualcomm/firmware/" +subpackages="$pkgname-doc" +arch="aarch64 armv7" +license="custom" +options="!check !strip !archcheck !tracedeps pmb:cross-native" +makedepends="mtools pil-squasher" +source="https://releases.linaro.org/96boards/dragonboard410c/qualcomm/firmware/linux-board-support-package-r$pkgver.zip" +builddir="$srcdir/linux-board-support-package-r$pkgver" + +# This package is a replacement for linux-firmware-qcom (packaging only necessary +# firmware plus some missing ones), so it's packaged in /qcom, not /postmarketos. +replaces="linux-firmware-qcom" +_fwdir="/lib/firmware/qcom" + +unpack() { + default_unpack + + # Extract firmware files from FAT file system image + mcopy -i "$builddir"/bootloaders-linux/NON-HLOS.bin -p -m -v \ + ::image/wcnss.* "$builddir" +} + +build() { + pil-squasher wcnss.mbn wcnss.mdt +} + +package() { + install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + install -Dm644 NOTICE.txt "$pkgdir"/usr/share/licenses/$pkgname/NOTICE + + # Use this firmware by default for devices that can use unsigned firmware + provides="firmware-qcom-msm8916-wcnss" + provider_priority=100 + + install -Dm644 "$builddir"/wcnss.mbn -t "$pkgdir/$_fwdir"/apq8016/ + + # Still link to old location in case this is installed on other devices + mkdir -p "$pkgdir"/lib/firmware/postmarketos + ln -s "$_fwdir"/apq8016/wcnss.mbn "$pkgdir"/lib/firmware/postmarketos/wcnss.mdt +} + +sha512sums="4b5d0250552ff3b0a55af9395e62064299a1240f22a5f50383de95723db964351412fa2b38f24fe73fdeb613366e0eb6b3c335600c238546db783ca84647e2d2 linux-board-support-package-r1034.2.1.zip" diff --git a/device/community/firmware-qcom-db410c/APKBUILD b/device/community/firmware-qcom-db410c/APKBUILD index 61c7b1d0c..707ca338e 100644 --- a/device/community/firmware-qcom-db410c/APKBUILD +++ b/device/community/firmware-qcom-db410c/APKBUILD @@ -1,11 +1,11 @@ pkgname=firmware-qcom-db410c -pkgver=1034.2.1 -pkgrel=2 +pkgver=1036.1 +pkgrel=0 pkgdesc="Firmware for DragonBoard 410c" url="https://releases.linaro.org/96boards/dragonboard410c/qualcomm/firmware/" subpackages=" $pkgname-doc - $pkgname-wcnss $pkgname-wcnss-nv:wcnss_nv + $pkgname-wcnss-nv:wcnss_nv $pkgname-modem $pkgname-venus " @@ -26,11 +26,10 @@ unpack() { # Extract firmware files from FAT file system image mcopy -i "$builddir"/bootloaders-linux/NON-HLOS.bin -p -m -v \ - ::image/mba.mbn ::image/modem.* ::image/wcnss.* "$builddir" + ::image/mba.mbn ::image/modem.* "$builddir" } build() { - pil-squasher wcnss.mbn wcnss.mdt pil-squasher modem.mbn modem.mdt pil-squasher venus.mbn proprietary-linux/venus.mdt } @@ -46,19 +45,8 @@ modem() { install -Dm644 "$builddir"/modem.mbn -t "$subpkgdir/$_fwdir"/apq8016/ } -wcnss() { - pkgdesc="DragonBoard 410c WiFi/BT firmware" - - # Use this firmware by default for devices that can use unsigned firmware - provides="firmware-qcom-msm8916-wcnss" - provider_priority=100 - - install -Dm644 "$builddir"/wcnss.mbn -t "$subpkgdir/$_fwdir"/apq8016/ - - # Still link to old location in case this is installed on other devices - mkdir -p "$subpkgdir"/lib/firmware/postmarketos - ln -s "$_fwdir"/apq8016/wcnss.mbn "$subpkgdir"/lib/firmware/postmarketos/wcnss.mdt -} +# For some reason the wcnss firmware in r1036.1 is actually older than the one +# in r1034.2.1, so firmware-qcom-db410c-wcnss is packaged separately. wcnss_nv() { pkgdesc="DragonBoard 410c WiFi/BT firmware configuration" @@ -78,4 +66,6 @@ venus() { install -Dm644 "$builddir"/venus.mbn "$subpkgdir/$_fwdir"/venus-1.8/venus.mdt } -sha512sums="4b5d0250552ff3b0a55af9395e62064299a1240f22a5f50383de95723db964351412fa2b38f24fe73fdeb613366e0eb6b3c335600c238546db783ca84647e2d2 linux-board-support-package-r1034.2.1.zip" +sha512sums=" +99316352669c488b26d93353e0408c0b761809f41b9e13630fdf4de393e36f72477847bd2f8e893e8c98bb94c82a615d3fc4a615db1055df7314269c514bae0e linux-board-support-package-r1036.1.zip +"