purism-librem5: new device (Purism Librem 5) (!869)
This adds a device package for the Librem 5 phone [ci:skip-build]: already built successfully in CI
This commit is contained in:
parent
b7c3f95dc5
commit
83d79ea914
1
device/device-purism-librem5/00-kwin.sh
Normal file
1
device/device-purism-librem5/00-kwin.sh
Normal file
@ -0,0 +1 @@
|
|||||||
|
export KWIN_DRM_DEVICE_NODE=/dev/dri/card1
|
1
device/device-purism-librem5/00-mesa.sh
Normal file
1
device/device-purism-librem5/00-mesa.sh
Normal file
@ -0,0 +1 @@
|
|||||||
|
export ETNA_MESA_DEBUG=no_supertile
|
55
device/device-purism-librem5/APKBUILD
Normal file
55
device/device-purism-librem5/APKBUILD
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
# Reference: <https://postmarketos.org/devicepkg>
|
||||||
|
pkgname="device-purism-librem5"
|
||||||
|
pkgdesc="Purism Librem 5 Phone"
|
||||||
|
pkgver=0.9
|
||||||
|
pkgrel=0
|
||||||
|
url="https://postmarketos.org"
|
||||||
|
license="MIT"
|
||||||
|
arch="aarch64"
|
||||||
|
options="!check !archcheck"
|
||||||
|
depends="postmarketos-base
|
||||||
|
linux-purism-librem5
|
||||||
|
uboot-tools
|
||||||
|
u-boot-librem5
|
||||||
|
gpsd
|
||||||
|
mesa-git mesa-git-glapi mesa-git-gl mesa-git-gles mesa-git-egl mesa-git-gbm
|
||||||
|
mesa-git-dri-etnaviv mesa-git-dri-kmsro
|
||||||
|
ofono
|
||||||
|
"
|
||||||
|
makedepends="devicepkg-dev"
|
||||||
|
source="
|
||||||
|
deviceinfo
|
||||||
|
uboot-script.cmd
|
||||||
|
modprobe.d_rsi.conf
|
||||||
|
00-mesa.sh
|
||||||
|
00-kwin.sh
|
||||||
|
flash_script.lst
|
||||||
|
"
|
||||||
|
subpackages="$pkgname-plasma"
|
||||||
|
install="$pkgname.post-install"
|
||||||
|
|
||||||
|
build() {
|
||||||
|
mkimage -A arm64 -C none -O linux -T script -d "$srcdir/uboot-script.cmd" "$srcdir/boot.scr"
|
||||||
|
devicepkg_build $startdir $pkgname
|
||||||
|
}
|
||||||
|
|
||||||
|
plasma() {
|
||||||
|
install_if="$pkgname kwin"
|
||||||
|
install -D -m644 "$srcdir/00-kwin.sh" "$subpkgdir/etc/profile.d/00-kwin.sh"
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -D -m644 "$srcdir"/boot.scr \
|
||||||
|
"$pkgdir"/boot/boot.scr
|
||||||
|
install -D -m644 "$srcdir/modprobe.d_rsi.conf" "$pkgdir/etc/modprobe.d/rsi.conf"
|
||||||
|
install -D -m644 "$srcdir/00-mesa.sh" "$pkgdir/etc/profile.d/00-mesa.sh"
|
||||||
|
install -D -m644 "$srcdir/flash_script.lst" "$pkgdir/usr/share/uuu/flash_script.lst"
|
||||||
|
devicepkg_package $startdir $pkgname
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="79121c475a5a957625bfa72e1d1f0e262e0abece703e9efa8c26522725d025625d49c003375ae6af3422eb25540de46196c8f5aab130e76014b630560f4c080b deviceinfo
|
||||||
|
3bc45540000e438e525501b2e816282d778fca10d426e42c9a80c0e752618ce50deb12c3edd9f3edc52edd8eb229d16afae7d407fe2c4ba0dbfefbcb4214780c uboot-script.cmd
|
||||||
|
d10531ad6646ad6cfaf8ee1b0cc38f4e5e2eb39599251b75f25e954f1105761d5480d92cbe06ad52560207b883439071db89b19babf046a810360bd07c52c655 modprobe.d_rsi.conf
|
||||||
|
5fdf45859f2bb154bcfe7c7341de4d5b239ef43d3f865e30456af073a8ee9d6682515c7e1dd52ddbe3969669d60689ba93c08ead32aadcfb164ff72a02b2e1a4 00-mesa.sh
|
||||||
|
685ec71484a932c59f83f1039d4d18a010a5849342e96d9e15ae8ce64374aac15073f9c51d7d9f270c60e70d2ea15c685b8f528cdc40f991b093b9227cba6a48 00-kwin.sh
|
||||||
|
d033df2b9125622c946af67dad83070473c86937b5825f57ad272c9145b594071dd6913949127803c45af4ea3226526551718d40739f9f1ee4bfe6446e62c856 flash_script.lst"
|
8
device/device-purism-librem5/device-purism-librem5.post-install
Executable file
8
device/device-purism-librem5/device-purism-librem5.post-install
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Enable GPS support
|
||||||
|
rc-update add gpsd default
|
||||||
|
sed -i 's/DEVICE=\"\"/DEVICE=\"\/dev\/ttymxc2\"/' /etc/conf.d/gpsd
|
||||||
|
sed -i 's/BAUDRATE=\"4800\"/BAUDRATE=\"9600\"/' /etc/conf.d/gpsd
|
||||||
|
|
||||||
|
rc-update add ofono default
|
31
device/device-purism-librem5/deviceinfo
Normal file
31
device/device-purism-librem5/deviceinfo
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# Reference: <https://postmarketos.org/deviceinfo>
|
||||||
|
# Please use double quotes only. You can source this file in shell scripts.
|
||||||
|
|
||||||
|
deviceinfo_format_version="0"
|
||||||
|
deviceinfo_name="Purism Librem 5 Phone"
|
||||||
|
deviceinfo_manufacturer="Purism"
|
||||||
|
deviceinfo_codename="purism-librem5"
|
||||||
|
deviceinfo_date=""
|
||||||
|
deviceinfo_dtb="freescale/imx8mq-librem5"
|
||||||
|
deviceinfo_append_dtb="false"
|
||||||
|
deviceinfo_modules_initfs=""
|
||||||
|
deviceinfo_arch="aarch64"
|
||||||
|
|
||||||
|
# Device related
|
||||||
|
deviceinfo_keyboard="false"
|
||||||
|
deviceinfo_external_storage="true"
|
||||||
|
deviceinfo_screen_width="720"
|
||||||
|
deviceinfo_screen_height="1440"
|
||||||
|
deviceinfo_dev_touchscreen=""
|
||||||
|
deviceinfo_dev_touchscreen_calibration=""
|
||||||
|
deviceinfo_dev_keyboard=""
|
||||||
|
deviceinfo_no_framebuffer="true"
|
||||||
|
# The following is required since this device has builtin ethernet
|
||||||
|
deviceinfo_disable_dhcpd="true"
|
||||||
|
deviceinfo_getty="ttymxc0;115200"
|
||||||
|
|
||||||
|
# Bootloader related
|
||||||
|
deviceinfo_flash_method="uuu"
|
||||||
|
deviceinfo_generate_legacy_uboot_initfs="true"
|
||||||
|
deviceinfo_sd_embed_firmware="firmware/librem5/phone-boot.img:2"
|
||||||
|
deviceinfo_boot_part_start="4096"
|
23
device/device-purism-librem5/flash_script.lst
Executable file
23
device/device-purism-librem5/flash_script.lst
Executable file
@ -0,0 +1,23 @@
|
|||||||
|
uuu_version 1.0.1
|
||||||
|
|
||||||
|
# Note: This script is meant to be used by uuu running in the native chroot, so
|
||||||
|
# all paths are relative to the native chroot and not to the device rootfs
|
||||||
|
# chroot.
|
||||||
|
|
||||||
|
SDP: boot -f /mnt/rootfs_purism-librem5/usr/share/firmware/librem5/phone-boot.img
|
||||||
|
|
||||||
|
SDPU: delay 1000
|
||||||
|
SDPU: write -f /mnt/rootfs_purism-librem5/usr/share/firmware/librem5/phone-boot.img -offset 0x57c00
|
||||||
|
SDPU: jump
|
||||||
|
|
||||||
|
SDPV: delay 1000
|
||||||
|
SDPV: write -f /mnt/rootfs_purism-librem5/usr/share/firmware/librem5/phone-boot.img -skipspl
|
||||||
|
SDPV: jump
|
||||||
|
|
||||||
|
SDPS: boot -f /mnt/rootfs_purism-librem5/usr/share/firmware/librem5/phone-boot.img
|
||||||
|
|
||||||
|
FB: ucmd mmc dev 0
|
||||||
|
FB: ucmd setenv fastboot_dev mmc
|
||||||
|
FB: ucmd setenv mmcdev 0
|
||||||
|
FB: flash -raw2sparse all /home/pmos/rootfs/purism-librem5.img
|
||||||
|
FB: Done
|
2
device/device-purism-librem5/modprobe.d_rsi.conf
Normal file
2
device/device-purism-librem5/modprobe.d_rsi.conf
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# This disables bluetooth, but enables wifi.
|
||||||
|
options rsi_91x dev_oper_mode=13 rsi_zone_enabled=1
|
20
device/device-purism-librem5/uboot-script.cmd
Normal file
20
device/device-purism-librem5/uboot-script.cmd
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
setenv bootargs init=/init.sh rw console=ttymxc0,115200 cma=256M PMOS_NO_OUTPUT_REDIRECT PMOS_FORCE_PARTITION_RESIZE
|
||||||
|
setenv mmcdev 0
|
||||||
|
setenv mmcpart 1
|
||||||
|
|
||||||
|
printenv
|
||||||
|
echo Loading DTB
|
||||||
|
ext2load mmc ${mmcdev}:${mmcpart} ${fdt_addr_r} imx8mq-librem5.dtb
|
||||||
|
|
||||||
|
echo Loading Initramfs
|
||||||
|
ext2load mmc ${mmcdev}:${mmcpart} ${ramdisk_addr_r} uInitrd-purism-librem5
|
||||||
|
|
||||||
|
echo Loading Kernel
|
||||||
|
ext2load mmc ${mmcdev}:${mmcpart} ${kernel_addr_r} vmlinuz-purism-librem5
|
||||||
|
|
||||||
|
echo Resizing FDT
|
||||||
|
fdt addr ${fdt_addr_r}
|
||||||
|
fdt resize
|
||||||
|
|
||||||
|
echo Booting kernel
|
||||||
|
booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r}
|
Loading…
x
Reference in New Issue
Block a user