Kernel 7.3 names the FP6 sound card "MILOS-Fairphone-Gen6" (upstream's DTS; 7.2 said "Fairphone (Gen. 6)"). The q6apm topology loader requests qcom/milos/<model>-tplg.bin and alsa-ucm resolves conf.d/milos/<model>.conf, so the two files are installed under the new name, with the old name as a symlink to each; the file contents are unchanged. The files either kernel asks for are present, the one still running between an upgrade and the reboot included, so the package carries no version bound to the kernel. A new pkgver rather than a pkgrel, so the kernel can name the floor: pmbootstrap resolves a versioned dependency on an aport by pkgver alone. Dev phone with these files: on 7.3 the card MILOS-Fairphone-Gen6 is up with UCM verb HiFi, its playback PCM runs under pw-play and capture passes; booted into 7.2 the card Fairphone (Gen. 6) finds its UCM through the link and capture passes as well.
63 lines
3.3 KiB
Text
63 lines
3.3 KiB
Text
# Audio userspace files for the Fairphone 6 that no upstream package ships
|
|
# yet: the AudioReach topology (built from Catcrafts/audioreach-topology
|
|
# branch fp6), the UCM profile, and pipewire config. Files are
|
|
# byte-identical to the ones deployed and tested on the development FP6.
|
|
# The tplg/UCM target filenames carry the sound card model string from the
|
|
# board DTS: the q6apm topology loader requests qcom/milos/<model>-tplg.bin
|
|
# and alsa-ucm resolves conf.d/milos/<model>.conf. Kernel 7.3 names the card
|
|
# "MILOS-Fairphone-Gen6", 7.2 named it "Fairphone (Gen. 6)"; both files are
|
|
# installed under the new name with the old name as a symlink, so the package
|
|
# serves either kernel - the one still running after an upgrade included.
|
|
#
|
|
# The proprietary AW88261 amp config blob (aw88261_acf.bin) is NOT shipped
|
|
# since pkgver 4: fp6-vendor-blobs extracts it from the stock vendor
|
|
# partition on-device (manifest fragment below), so nothing proprietary is
|
|
# distributed. Provenance/design: fp6 repo journal/blobs/.
|
|
maintainer="Jorijn van der Graaf <jorijnvdgraaf@catcrafts.net>"
|
|
pkgname=soc-fairphone-fp6-audio
|
|
pkgver=5
|
|
pkgrel=0
|
|
pkgdesc="Fairphone 6 audio topology and UCM profile"
|
|
url="https://forgejo.catcrafts.net/Catcrafts/audioreach-topology"
|
|
arch="noarch"
|
|
license="BSD-3-Clause"
|
|
depends="fp6-vendor-blobs"
|
|
install="$pkgname.post-install $pkgname.post-upgrade"
|
|
options="!check"
|
|
source="
|
|
fp6-tplg.bin
|
|
aw88261-acf.manifest
|
|
ucm-milos-fp6.conf
|
|
HiFi.conf
|
|
50-echo-cancel.conf
|
|
"
|
|
|
|
package() {
|
|
install -Dm644 "$srcdir"/fp6-tplg.bin \
|
|
"$pkgdir"/usr/lib/firmware/qcom/milos/MILOS-Fairphone-Gen6-tplg.bin
|
|
ln -s MILOS-Fairphone-Gen6-tplg.bin \
|
|
"$pkgdir/usr/lib/firmware/qcom/milos/Fairphone (Gen. 6)-tplg.bin"
|
|
install -Dm644 "$srcdir"/aw88261-acf.manifest \
|
|
"$pkgdir"/usr/share/fp6-vendor-blobs/manifest.d/10-aw88261-acf.manifest
|
|
install -Dm644 "$srcdir"/ucm-milos-fp6.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/conf.d/milos/MILOS-Fairphone-Gen6.conf
|
|
ln -s MILOS-Fairphone-Gen6.conf \
|
|
"$pkgdir/usr/share/alsa/ucm2/conf.d/milos/Fairphone (Gen. 6).conf"
|
|
install -Dm644 "$srcdir"/HiFi.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/Fairphone/fp6/HiFi.conf
|
|
# NOTE deliberately NO wireplumber fragment: the old dev-phone's
|
|
# 51-fp6-ucm.conf (api.alsa.use-acp=false) kills node creation outright
|
|
# on a virgin wireplumber state - ACP reads the UCM verbs natively and
|
|
# produces correct ports (verified 2026-08-09 on a from-scratch install).
|
|
# AEC pair (ec_sink/ec_source) for VoLTE speakerphone calls
|
|
install -Dm644 "$srcdir"/50-echo-cancel.conf \
|
|
"$pkgdir"/etc/pipewire/pipewire.conf.d/50-echo-cancel.conf
|
|
}
|
|
|
|
sha512sums="
|
|
51071c574b9f5899c78ba9fe1b6f3bbda2195e6d274014a05869ae56ed0ff18e15678bd7d78cd68846900d3c579556328e229842152cffd943186d43344ed33c fp6-tplg.bin
|
|
0240a36e6fae76f6df576c5ffc93241f6d59e03db429811d61c746561743ddb4690cb925028546a6c3d69dcc867aead5ddf1c85b12a0065195ea9c6621fa847f aw88261-acf.manifest
|
|
3bb268f9fcb8d1c0b42741b67da42b6361bab259e7211d9930919995ebe7dcf67826e6d4f00ff5e4fe5b52067fe90d00212158c3b4879d1bee481e87f0623206 ucm-milos-fp6.conf
|
|
2a189c3141fedc43f8eb19f4df1e43487223d524e27da3f948556d224cca1f493f6815ada191953fb79a19d5c5abadb21de7b3ece7b74b0929338c216e21e84a HiFi.conf
|
|
ec63fa5363738a43c9eee4b1be70201e2d2076ec817031fda087e61d781e81dc67351be44faf8b056a2939875a139cd909f7c311115bb1150e17ad4493846606 50-echo-cancel.conf
|
|
"
|