From 129f07ee23b5e5a33ebc446c92485b8cf5c4011b Mon Sep 17 00:00:00 2001 From: cristian_ci Date: Thu, 14 Jan 2021 22:26:58 +0000 Subject: [PATCH] lg-m216: new device (LG K10) (MR 1873) --- device/testing/device-lg-m216/APKBUILD | 53 ++++++++++++++++++++++++ device/testing/device-lg-m216/deviceinfo | 37 +++++++++++++++++ device/testing/firmware-lg-m216/APKBUILD | 29 +++++++++++++ 3 files changed, 119 insertions(+) create mode 100644 device/testing/device-lg-m216/APKBUILD create mode 100644 device/testing/device-lg-m216/deviceinfo create mode 100644 device/testing/firmware-lg-m216/APKBUILD diff --git a/device/testing/device-lg-m216/APKBUILD b/device/testing/device-lg-m216/APKBUILD new file mode 100644 index 000000000..e2a10b690 --- /dev/null +++ b/device/testing/device-lg-m216/APKBUILD @@ -0,0 +1,53 @@ +# Reference: +pkgname=device-lg-m216 +pkgdesc="LG K10 (m216)" +pkgver=3 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends="postmarketos-base mkbootimg soc-qcom-msm8916" +makedepends="devicepkg-dev" +source="deviceinfo" +subpackages=" + $pkgname-kernel-mainline:kernel_mainline + $pkgname-kernel-mainline-modem:kernel_mainline_modem + $pkgname-nonfree-firmware:nonfree_firmware + $pkgname-nonfree-firmware-modem:nonfree_firmware_modem +" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname +} + +kernel_mainline() { + pkgdesc="Close to mainline kernel (no modem, audio routed directly)" + depends="linux-postmarketos-qcom-msm8916" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} + +kernel_mainline_modem() { + pkgdesc="Close to mainline kernel (non-free modem, audio routed through ADSP)" + depends="linux-postmarketos-qcom-msm8916 soc-qcom-msm8916-modem" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} + +nonfree_firmware() { + pkgdesc="GPU/WiFi/BT/Video(/Modem) firmware" + depends="linux-firmware-qcom firmware-qcom-msm8916-wcnss firmware-lg-m216-wcnss-nv" + mkdir "$subpkgdir" +} + +nonfree_firmware_modem() { + pkgdesc="Modem firmware" + depends="firmware-lg-m216-modem" + install_if="$pkgname-nonfree-firmware $pkgname-kernel-mainline-modem" + mkdir "$subpkgdir" +} + +sha512sums="352c476e4689b413c5eba8e77fa2e7af36bbdb478530fe6dad7305cde75c496562ba4adb6afa918219fa4bc5552c70f7c7244baeee6c608f6f1e8beb4d8cf180 deviceinfo" diff --git a/device/testing/device-lg-m216/deviceinfo b/device/testing/device-lg-m216/deviceinfo new file mode 100644 index 000000000..03e03ba14 --- /dev/null +++ b/device/testing/device-lg-m216/deviceinfo @@ -0,0 +1,37 @@ +# Reference: +# Please use double quotes only. You can source this file in shell scripts. + +deviceinfo_format_version="0" +deviceinfo_name="LG K10 (m216)" +deviceinfo_manufacturer="LG" +deviceinfo_codename="lg-m216" +deviceinfo_year="2016" +deviceinfo_dtb_mainline="qcom/msm8916-lg-m216" +deviceinfo_dtb_mainline_modem="qcom/msm8916-lg-m216-modem" +deviceinfo_append_dtb="true" +deviceinfo_modules_initfs="pm8916-lbc pm8916-bms-vm" +deviceinfo_arch="aarch64" + +# Device related +deviceinfo_chassis="handset" +deviceinfo_keyboard="false" +deviceinfo_external_storage="true" +deviceinfo_screen_width="720" +deviceinfo_screen_height="1280" +deviceinfo_getty="ttyMSM0;115200" + +# MSM DRM cannot take over the framebuffer from the bootloader at the moment +deviceinfo_no_framebuffer="true" + +# Bootloader related +deviceinfo_flash_method="fastboot" +deviceinfo_kernel_cmdline="earlycon console=ttyMSM0,115200 PMOS_NO_OUTPUT_REDIRECT" +deviceinfo_generate_bootimg="true" +deviceinfo_flash_offset_base="0x80000000" +deviceinfo_flash_offset_kernel="0x00080000" +deviceinfo_flash_offset_ramdisk="0x02000000" +deviceinfo_flash_offset_second="0x00f00000" +deviceinfo_flash_offset_tags="0x01e00000" +deviceinfo_flash_pagesize="2048" +deviceinfo_flash_sparse="true" + diff --git a/device/testing/firmware-lg-m216/APKBUILD b/device/testing/firmware-lg-m216/APKBUILD new file mode 100644 index 000000000..01d967641 --- /dev/null +++ b/device/testing/firmware-lg-m216/APKBUILD @@ -0,0 +1,29 @@ +pkgname=firmware-lg-m216 +pkgver=1 +pkgrel=0 +pkgdesc="Firmware for LG K10" +url="https://github.com/cristianc/firmware" +subpackages="$pkgname-modem $pkgname-wcnss-nv:wcnss_nv" +arch="aarch64" +license="proprietary" +options="!check !strip !archcheck" +source="https://github.com/cristianc/firmware/raw/main/m216.tar.xz" + +_fwdir="/lib/firmware/postmarketos" + +package() { + # parent package is empty + mkdir -p "$pkgdir" +} + +modem() { + pkgdesc="LG K10 modem firmware" + install -Dm644 "$srcdir"/mba.mbn -t "$subpkgdir/$_fwdir" + install -Dm644 "$srcdir"/modem.* -t "$subpkgdir/$_fwdir" +} + +wcnss_nv() { + pkgdesc="LG K10 WiFi/BT firmware" + install -Dm644 "$srcdir"/WCNSS_qcom_wlan_nv.bin -t "$subpkgdir/$_fwdir"/wlan/prima +} +sha512sums="8b236fc772bfa857d7dfb6ad2d815af554605e3f89bf66f2a2e0cbc2562146a7b5888298abc8f7010ed7e5b5e7f7555aacd7d9d73ec33f0474078705e61d3a38 m216.tar.xz"