qcom-msm8916: new device (MR 4962)

With the new changes in lk2nd that allow us to support extlinux.conf and
with the U-Boot support with EFI, we can now generate image that would
be generic to these devices.

[ci:skip-build]: already built successfully in CI
This commit is contained in:
Nikita Travkin 2024-03-24 18:40:39 +05:00 committed by Stefan Hansson
parent 399e4da96f
commit f182040240
No known key found for this signature in database
GPG key ID: 8A700086A9FE41FD
3 changed files with 150 additions and 0 deletions

View file

@ -0,0 +1,63 @@
# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Nikita Travkin <nikita@trvn.ru>
pkgname=device-qcom-msm8916
pkgdesc="Generic device package for various Qualcomm MSM8916/MSM8939-based devices"
pkgver=1
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
postmarketos-base
soc-qcom-msm8916
"
makedepends="devicepkg-dev"
source="
deviceinfo
modules-initfs
"
subpackages="
$pkgname-nonfree-firmware:nonfree_firmware
$pkgname-kernel-extlinux:kernel_extlinux
$pkgname-kernel-efi:kernel_efi
"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
}
nonfree_firmware() {
pkgdesc="WiFi/BT/Modem/Video firmware"
depends="msm-firmware-loader firmware-qcom-adreno-a300 firmware-qcom-adreno-a420 firmware-qcom-db410c-wcnss-nv"
mkdir "$subpkgdir"
# HACK: For devices that don't have a nv file in persist we
# temporarily link the db410c file to the expected location.
# It will be overriden if the file is in persist or when user
# installs the device-specific firmware packages.
mkdir -p "$subpkgdir"/lib/firmware/wlan/prima/
ln -s /lib/firmware/qcom/apq8016/WCNSS_qcom_wlan_nv_sbc.bin \
"$subpkgdir"/lib/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin
}
kernel_extlinux() {
pkgdesc="Use lk2nd to boot via extlinux.conf"
depends="linux-postmarketos-qcom-msm8916"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_efi() {
pkgdesc="Use U-Boot to boot via EFI"
depends="linux-postmarketos-qcom-msm8916 systemd-boot"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
sha512sums="
965af8d7c00e4c88883669fa69bd44d340525fa6283cc92f15f2b8c554c432a3e66408b55419a913afe16e317075e0d16d6d19913bddde8394e52adf5e027ef7 deviceinfo
28aae94b3367677dad685901c71bad36d79635942b749a54628922210bbf8bcf962707e25115d3012d653c48106e5e77db2b54216fef05641ac4bc1c8496c6ae modules-initfs
"

View file

@ -0,0 +1,30 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell
# scripts.
deviceinfo_format_version="0"
deviceinfo_name="Qualcomm msm8916-based device"
deviceinfo_manufacturer="Qualcomm"
deviceinfo_codename="qcom-msm8916"
deviceinfo_year="2015"
deviceinfo_arch="aarch64"
# Device related
deviceinfo_gpu_accelerated="true"
deviceinfo_chassis="embedded"
deviceinfo_external_storage="true"
deviceinfo_keyboard="false"
deviceinfo_getty="ttyMSM0;115200"
# Bootloader related
deviceinfo_kernel_cmdline="earlycon console=ttyMSM0,115200 PMOS_NO_OUTPUT_REDIRECT"
deviceinfo_flash_method="fastboot"
# extlinux.conf
deviceinfo_dtb_extlinux="qcom/msm8*16-* qcom/msm8*39-* qcom/apq8016-* apq8039-*"
deviceinfo_generate_extlinux_config_extlinux="true"
deviceinfo_boot_filesystem_extlinux="ext2"
# EFI
deviceinfo_generate_systemd_boot_efi="true"
deviceinfo_boot_filesystem_efi="fat32"

View file

@ -0,0 +1,57 @@
adv7511
display-connector
panel-alcatel-auo-hx8394d
panel-alcatel-idol3-nt35596
panel-alcatel-idol3-r63315
panel-ark-peach-nt35521-dj
panel-asus-z00l-otm1284a
panel-huawei-boe-otm8019a
panel-huawei-kiwi-cmi-nt35532
panel-huawei-kiwi-tianma-nt35596
panel-huawei-tianma-nt35521
panel-longcheer-booyi-otm1287
panel-longcheer-truly-nt35695
panel-longcheer-truly-otm1288a
panel-longcheer-yushun-nt35520
panel-longcheer-yushun-nt35521s
panel-motorola-harpia-boe
panel-motorola-harpia-tianma
panel-motorola-osprey-inx
panel-motorola-surnia-boe
panel-motorola-surnia-inx
panel-samsung-ea8061v-ams497ee01
panel-samsung-hx8389c-gh9607501a
panel_samsung_nt51017_b4p096wx5vp09
panel-samsung-s6d78a0-gh9607501a
panel-samsung-s6d7aa0
panel-samsung-s6d7aa0x62-bv050hdm
panel-samsung-s6e3fa2-ams549eh01
panel-samsung-s6e88a0-ams452ef01
panel-samsung-s6e8aa5x01-ams497hy01
panel-samsung-s6e8aa5x01-ams520kt01
panel-samsung-sc7798a-bv045wvm
panel-simple
panel-wingtech-auo-r61308
panel-wingtech-boe-hx8394f
panel-wingtech-boe-nt35521s
panel-wingtech-ebbg-otm1285a
panel-wingtech-qimei-ili9881
panel-wingtech-sharp-r69431
panel-wingtech-tianma-hx8394d
panel-wingtech-yassy-ili9881
pm8916-bms-vm
pm8916-lbc
rmi-i2c
rt5033
rt5033-charger
smb1360
zinitix
atmel_mxt_ts
cyttsp5
edt-ft5x06
goodix
himax-hx852x
imagis
mms114
msg2638
msm