firmware-oneplus-bacon: squash firmware and add adsp & modem firmware

Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6671
This commit is contained in:
Luca Weiss 2025-06-15 21:52:37 +02:00 committed by Pablo Correa Gómez
parent eb7dabc8f7
commit 5d951b077d
No known key found for this signature in database
GPG key ID: 7A342565FF635F79

View file

@ -1,22 +1,67 @@
# Maintainer: Luca Weiss <luca@lucaweiss.eu>
pkgname=firmware-oneplus-bacon
pkgver=1
pkgver=2
_commit="a4b0ec447d9ae6d1025fc43b6d7f495298a71b61"
pkgrel=0
pkgdesc="Firmware for OnePlus One (bacon)"
url="https://gitlab.com/Kanedias/oneplus-firmware-files"
pkgdesc="Firmware for OnePlus One"
url="https://github.com/FairBlobs/bacon-firmware"
arch="armv7"
license="proprietary"
depends="mtools"
makedepends="pil-squasher"
subpackages="
$pkgname-adsp
$pkgname-modem
$pkgname-wcnss
"
options="!check !strip !archcheck !tracedeps pmb:cross-native"
_commit="421e8adbea3b690651ed1e7b9f0ae73047039e7a"
source="$url/-/archive/$_commit/oneplus-firmware-files-$_commit.tar.gz"
builddir="$srcdir/oneplus-firmware-files-$_commit"
source="https://github.com/FairBlobs/bacon-firmware/archive/$_commit/bacon-firmware-$_commit.tar.gz"
builddir="$srcdir/bacon-firmware-$_commit"
package() {
cd bacon/firmware
for _i in wcnss.* wlan/prima/WCNSS*; do
install -Dm644 $_i "$pkgdir/lib/firmware/postmarketos/$_i"
build() {
for i in *.mdt; do
pil-squasher "$(basename "$i" .mdt)".mbn "$i"
done
}
sha512sums="87432e8f8869e7b8c3397fa1c24a5b8ac29c710beddabe56a728012b68d5cfc90c9fc12f496aa6e23d395d52beb4ad2c395b9aebf8876c6c4315e0c75c8e7648 oneplus-firmware-files-$_commit.tar.gz"
package() {
mkdir -p "$pkgdir"
}
adsp() {
pkgdesc="OnePlus One adsp firmware"
install -Dm644 "$builddir"/adsp.mbn -t \
"$subpkgdir/lib/firmware/qcom/msm8974/oneplus/bacon"
mkdir -p "$subpkgdir/lib/firmware/postmarketos"
ln -s ../qcom/msm8974/oneplus/bacon/adsp.mbn \
"$subpkgdir/lib/firmware/postmarketos/adsp.mdt"
}
modem() {
pkgdesc="OnePlus One modem firmware"
install -Dm644 "$builddir"/mba.mbn -t \
"$subpkgdir/lib/firmware/qcom/msm8974/oneplus/bacon"
install -Dm644 "$builddir"/modem.mbn -t \
"$subpkgdir/lib/firmware/qcom/msm8974/oneplus/bacon"
}
wcnss() {
pkgdesc="OnePlus One wcnss firmware"
install -Dm644 "$builddir"/wcnss.mbn -t \
"$subpkgdir/lib/firmware/qcom/msm8974/oneplus/bacon"
install -Dm644 "$builddir"/WCNSS_qcom_wlan_nv.bin -t \
"$subpkgdir/lib/firmware/qcom/msm8974/oneplus/bacon"
mkdir -p "$subpkgdir/lib/firmware/postmarketos/wlan/prima"
ln -s ../qcom/msm8974/oneplus/bacon/wcnss.mbn \
"$subpkgdir/lib/firmware/postmarketos/wcnss.mdt"
ln -s ../../../qcom/msm8974/oneplus/bacon/WCNSS_qcom_wlan_nv.bin \
"$subpkgdir/lib/firmware/postmarketos/wlan/prima/WCNSS_qcom_wlan_nv.bin"
}
sha512sums="
f0236721ba435244dd7581f70b7b413888c3faeaaca7185c87a85ae2d82ea88c73231d753a59053ab53b3fa8529b7d9d52017334546f9ab26a1c0d38767a7b40 bacon-firmware-a4b0ec447d9ae6d1025fc43b6d7f495298a71b61.tar.gz
"