Add rockchip-isp1 to modules-initfs as a workaround for display initialization issues on kernel 6.11.11. Without the ISP driver built into initramfs, the unl0kr screen fails to display during early boot when disk encryption is enabled, though the input still works. Building rockchip-isp1 into initramfs ensures proper display initialization. This is a temporary workaround until the underlying power domain or clock synchronization issue between the display and camera subsystems which I suspect can be properly investigated and fixed. Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/5955>
157 lines
5.0 KiB
Bash
157 lines
5.0 KiB
Bash
# Reference: <https://postmarketos.org/devicepkg>
|
|
# Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
|
|
pkgname=device-pine64-pinephonepro
|
|
pkgdesc="PINE64 PinePhone Pro"
|
|
pkgver=5
|
|
pkgrel=0
|
|
url="https://postmarketos.org"
|
|
license="MIT"
|
|
arch="aarch64"
|
|
# pmb:strict is required for grub
|
|
options="!check !archcheck pmb:strict"
|
|
depends="
|
|
alsa-ucm-conf>=1.2.6.2
|
|
eg25-manager>=0.4.2
|
|
linux-pine64-pinephonepro
|
|
postmarketos-base>=25-r1
|
|
fwupd>=1.8.6
|
|
soc-rockchip-rk3399
|
|
"
|
|
makedepends="
|
|
devicepkg-dev
|
|
grub
|
|
grub-efi
|
|
"
|
|
subpackages="
|
|
$pkgname-nonfree-firmware:nonfree_firmware
|
|
$pkgname-gnome
|
|
$pkgname-openrc
|
|
$pkgname-sway
|
|
$pkgname-x11
|
|
"
|
|
source="
|
|
51_keyboard.gschema.override
|
|
90-modem-eg25.rules
|
|
deviceinfo
|
|
modules-initfs
|
|
modemmanager.conf
|
|
ppkb.sh
|
|
setup-modem.sh
|
|
ucm/HiFi.conf
|
|
ucm/PINE64-PinePhonePro-.conf
|
|
ucm/VoiceCall.conf
|
|
sway-pinephone-keyboard.conf
|
|
x11-pinephone-keyboard.conf
|
|
"
|
|
|
|
build() {
|
|
devicepkg_build $startdir $pkgname
|
|
|
|
grub-mkimage \
|
|
--prefix="/grub" \
|
|
--output="bootaa64.efi" \
|
|
--format="arm64-efi" \
|
|
--compression="xz" \
|
|
\
|
|
all_video \
|
|
cat \
|
|
configfile \
|
|
disk \
|
|
echo \
|
|
efi_gop \
|
|
fat \
|
|
gzio \
|
|
help \
|
|
iso9660 \
|
|
linux \
|
|
ls \
|
|
normal \
|
|
part_gpt \
|
|
part_msdos \
|
|
search \
|
|
search_label \
|
|
test \
|
|
true
|
|
}
|
|
|
|
package() {
|
|
devicepkg_package $startdir $pkgname
|
|
|
|
# Grub / bootloader
|
|
install -Dm644 -t "$pkgdir"/boot/EFI/Boot \
|
|
"$srcdir"/bootaa64.efi
|
|
|
|
# Alsa usecase manager config
|
|
install -Dm644 -t "$pkgdir"/usr/share/alsa/ucm2/PinePhonePro \
|
|
"$srcdir"/HiFi.conf \
|
|
"$srcdir"/PINE64-PinePhonePro-.conf \
|
|
"$srcdir"/VoiceCall.conf
|
|
mkdir -p "$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card
|
|
ln -s /usr/share/alsa/ucm2/PinePhonePro/PINE64-PinePhonePro-.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card/PINE64-PinePhonePro-.conf
|
|
# Below link is a temporary workaround until next Tow-Boot Release
|
|
# https://github.com/Tow-Boot/Tow-Boot/pull/171
|
|
ln -s /usr/share/alsa/ucm2/PinePhonePro/PINE64-PinePhonePro-.conf \
|
|
"$pkgdir"/usr/share/alsa/ucm2/conf.d/simple-card/simple-card.conf
|
|
# Modem
|
|
install -Dm755 "$srcdir"/setup-modem.sh \
|
|
"$pkgdir"/usr/bin/pinephone_setup-modem
|
|
install -Dm644 "$srcdir"/90-modem-eg25.rules -t \
|
|
"$pkgdir"/usr/lib/udev/rules.d/
|
|
install -Dm644 "$srcdir"/modemmanager.conf \
|
|
"$pkgdir"/etc/conf.d/modemmanager
|
|
|
|
# Keyboard config
|
|
install -Dm755 "$srcdir"/ppkb.sh "$pkgdir"/etc/profile.d/ppkb.sh
|
|
}
|
|
|
|
nonfree_firmware() {
|
|
pkgdesc="Wifi, Bluetooth and video-out firmware"
|
|
depends="
|
|
linux-firmware-brcm
|
|
linux-firmware-rockchip
|
|
"
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
gnome() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-base-ui-gnome"
|
|
install -Dm644 "$srcdir"/51_keyboard.gschema.override -t \
|
|
"$subpkgdir"/usr/share/glib-2.0/schemas
|
|
}
|
|
|
|
openrc() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
depends="eg25-manager-openrc openrc"
|
|
|
|
mkdir -p "$subpkgdir"
|
|
}
|
|
|
|
sway() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel sway-virtual"
|
|
install -Dm644 "$srcdir"/sway-pinephone-keyboard.conf \
|
|
"$subpkgdir"/etc/sway/config.d/pinephone_keyboard.conf
|
|
}
|
|
|
|
x11() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel xorg-server"
|
|
install -Dm644 "$srcdir"/x11-pinephone-keyboard.conf \
|
|
"$subpkgdir"/etc/X11/xorg.conf.d/pinephone-keyboard.conf
|
|
}
|
|
|
|
sha512sums="
|
|
2d68ffe143f633a86670f30e45dbad1cc313f219f22b7cd3319ab44bb7209c20cb29f2ff2c60c92390154af9c9a6815c4186be555364cf31552005eba024c0e7 51_keyboard.gschema.override
|
|
98e9dcfb36dd5843ff441b148e3bffb70757c59601c5f01f55a584e8f017c7ca73f2275c1bff46e4236dd8174df36a43d10abf9b8dadee988b962036846dc6ed 90-modem-eg25.rules
|
|
38e7111dd8ea40f52ba7f185ab58ff37d50619ae2df2f104cb3a84aba5ab082409fae3721ced5834f698f7f2766e98af86e9315ac31e2189c6936f92b7374450 deviceinfo
|
|
0555be124ef4add4d70b54f550e63b4ff15f099541dbe37c4f61bf64d38bfb8bb8c6b765a0cc6bf361419711b7d1124fd0cbbe8ff459f5e85e6f850d7d2cd88e modules-initfs
|
|
c5006c38828eb519917d57756f7831c4552feffef2d4922a384073f6a551535f615ad397d784e313818e0b943e1f6212bcca0aff9ce37da60b29547b1631f24b modemmanager.conf
|
|
43f67e94491791685cdbb4874bb3034b1d297bdf3d23e7405c45ba8c58de72b4fb6a9943b79f46ef7b8f4dbc4d9db254ebec8eb3453d720a5a8fad277c6a9d88 ppkb.sh
|
|
420ee1d7522d4d56c2909580fd6ba7580483ca5455b13eb6d22e700063ce0c1a5c6d2f5b161dfce0d777636fe9a712aa82f38a0585f2feabea3785b02bae7515 setup-modem.sh
|
|
1684514a6b814a83473e9da8855fd776cf3f31a2be1f8834c370f710428b4ee305559e275be52894d167ccd1e32f8f1c8586f8a072f19e44b46caec9f504d453 HiFi.conf
|
|
9c6edbe7ea387baf9bfa6c4a46b28c4fe274ab0994e0a1640012048407e6679c437de43cc50e6778c9a852132eaa680de3fd4e0256d36455d1dd57aa729ac8be PINE64-PinePhonePro-.conf
|
|
27214fcf94823c3a9deff01c4b7a1cfc6dc8c117d9b5643fea9a15835a04e59524d2a90f522aa3c7440b94cd1b9d9938413abcfdaa838efb008c87eeae7de2e8 VoiceCall.conf
|
|
bb11151e246d16e071761ebb35ca7f8b8cedbad8366e9bac6aed30554a795877cc9dccbe69ecca4b19b6f72bd87e613705f3ae4f2f40d2f9c2d09cc179999d59 sway-pinephone-keyboard.conf
|
|
a7b49a638f664f7682ce6b00eb4d1ae26a429e89354056de05fb49d25fc9555d7f80e6d8f4b0a250878a4e7823860fd156068ed6604ce6cf58badef45c545161 x11-pinephone-keyboard.conf
|
|
"
|