diff --git a/device/testing/device-xiaomi-natrium/30-gpu-firmware.files b/device/testing/device-xiaomi-natrium/30-gpu-firmware.files new file mode 100644 index 0000000000000000000000000000000000000000..edc09e4b15db23ed03901e376fcb6729686bdd91 --- /dev/null +++ b/device/testing/device-xiaomi-natrium/30-gpu-firmware.files @@ -0,0 +1,4 @@ +./lib/firmware/qcom/a530_pfp.fw +./lib/firmware/qcom/a530_pm4.fw +./lib/firmware/qcom/a530v3_gpmu.fw2 +./lib/firmware/qcom/msm8996/natrium/a530_zap.mbn diff --git a/device/testing/device-xiaomi-natrium/APKBUILD b/device/testing/device-xiaomi-natrium/APKBUILD new file mode 100644 index 0000000000000000000000000000000000000000..fb3766c52a36427e833f42aaae476ecb2b68cdd8 --- /dev/null +++ b/device/testing/device-xiaomi-natrium/APKBUILD @@ -0,0 +1,69 @@ +# Maintainer: Alec Su (AlecJY) <ae40515@yahoo.com.tw> +# Reference: <https://postmarketos.org/devicepkg> + +pkgname=device-xiaomi-natrium +pkgdesc="Xiaomi Mi 5s Plus" +pkgver=1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends=" + linux-postmarketos-qcom-msm8996 + mesa-egl + mkbootimg + postmarketos-base + postmarketos-update-kernel + soc-qcom-msm8996 + soc-qcom-msm8996-ucm +" +makedepends="devicepkg-dev" +subpackages="$pkgname-nonfree-firmware:nonfree_firmware $pkgname-phosh" + +source=" + deviceinfo + pointercal + phoc.ini + 30-gpu-firmware.files +" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname + + install -D -m644 "$srcdir"/pointercal \ + "$pkgdir"/etc/pointercal +} + +nonfree_firmware() { + pkgdesc="GPU/Modem/Venus/ADSP/SLPI/WiFi/Bluetooth Firmware" + depends=" + firmware-xiaomi-natrium + linux-firmware-ath10k + linux-firmware-qca + soc-qcom-msm8996-nonfree-firmware + " + install="$subpkgname.post-install" + mkdir "$subpkgdir" + + install -Dm644 "$srcdir/30-gpu-firmware.files" -t \ + "$subpkgdir/etc/postmarketos-mkinitfs/files" +} + +phosh() { + install_if="$pkgname=$pkgver-r$pkgrel phosh" + install -Dm644 "$srcdir"/phoc.ini \ + "$subpkgdir"/etc/phosh/phoc.ini +} + + +sha512sums=" +b1e93eb146f3fd9adc4197d2b39a89ac1cfb2dc06587692262654444d4ba2642103cc7895bedfc02b2243a38645beceb91d1f66cdd654ff1d298c4eb3120b13a deviceinfo +e9ee9c1404b41ba15eafff3f728ff6e0e78dc17e9a88483fca92db1aa3efe0e4d5bf26142e533c4ff12b1bf8ce04ccabb7ca0f93aaea586d5b30910282aad237 pointercal +38409d4ce48db4624539dbfd695d3c6e1596a29fd7c3004a41368b28cba646495d05360420ad728f82c63d6ddeeca71d09944df06ebaca120aedd9cc2b436eb3 phoc.ini +4babc3e499cbc3fab555d3d939b34e763d31ee8e36f3766f3b0bc8c6d1e2ec67f119b87e4a5bc898ad6881b9da98c06f184a567dc9f96b08857ee185ff05f6ae 30-gpu-firmware.files +" diff --git a/device/testing/device-xiaomi-natrium/device-xiaomi-natrium-nonfree-firmware.post-install b/device/testing/device-xiaomi-natrium/device-xiaomi-natrium-nonfree-firmware.post-install new file mode 100644 index 0000000000000000000000000000000000000000..d4b463fbebf331ac975b332e0088a7c79237fb24 --- /dev/null +++ b/device/testing/device-xiaomi-natrium/device-xiaomi-natrium-nonfree-firmware.post-install @@ -0,0 +1,5 @@ +#!/bin/sh + +# Delay modem powerup to avoid crashing +rc-update del rmtfs boot +rc-update add rmtfs default diff --git a/device/testing/device-xiaomi-natrium/deviceinfo b/device/testing/device-xiaomi-natrium/deviceinfo new file mode 100644 index 0000000000000000000000000000000000000000..4485de9a22faab729ed0a869e11d41489baadd32 --- /dev/null +++ b/device/testing/device-xiaomi-natrium/deviceinfo @@ -0,0 +1,40 @@ +# Reference: <https://postmarketos.org/deviceinfo> +# Please use double quotes only. You can source this file in shell +# scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Xiaomi Mi 5s Plus" +deviceinfo_manufacturer="Xiaomi" +deviceinfo_codename="xiaomi-natrium" +deviceinfo_year="2016" +deviceinfo_dtb="qcom/msm8996pro-xiaomi-natrium" +deviceinfo_append_dtb="true" +deviceinfo_modules_initfs="qcom_fg drm msm panel_jdi_fhd_r63452" +deviceinfo_arch="aarch64" +deviceinfo_mesa_driver="msm" +deviceinfo_flash_kernel_on_update="true" + +# Device related +deviceinfo_chassis="handset" +deviceinfo_keyboard="false" +deviceinfo_external_storage="false" +deviceinfo_screen_width="1080" +deviceinfo_screen_height="1920" +deviceinfo_rootfs_image_sector_size="4096" +deviceinfo_gpu_accelerated="true" + +# Bootloader related +deviceinfo_flash_method="fastboot" +deviceinfo_kernel_cmdline="PMOS_NO_OUTPUT_REDIRECT" +deviceinfo_generate_bootimg="true" +deviceinfo_bootimg_qcdt="false" +deviceinfo_bootimg_mtk_mkimage="false" +deviceinfo_bootimg_dtb_second="false" +deviceinfo_flash_pagesize="4096" +deviceinfo_flash_offset_base="0x80000000" +deviceinfo_flash_offset_kernel="0x00008000" +deviceinfo_flash_offset_ramdisk="0x01000000" +deviceinfo_flash_offset_second="0x00f00000" +deviceinfo_flash_offset_tags="0x00000100" +deviceinfo_flash_pagesize="4096" +deviceinfo_flash_sparse="true" diff --git a/device/testing/device-xiaomi-natrium/phoc.ini b/device/testing/device-xiaomi-natrium/phoc.ini new file mode 100644 index 0000000000000000000000000000000000000000..2ea1924aa7d6375e6c63095402b9b284fc379bff --- /dev/null +++ b/device/testing/device-xiaomi-natrium/phoc.ini @@ -0,0 +1,5 @@ +# /etc/phosh/phoc.ini +# Overwrites values set in /usr/share/phosh/phoc.ini + +[output:DSI-1] +scale = 2.5 diff --git a/device/testing/device-xiaomi-natrium/pointercal b/device/testing/device-xiaomi-natrium/pointercal new file mode 100644 index 0000000000000000000000000000000000000000..478bad446accbaf275a9186ffaa2561934dc14d0 --- /dev/null +++ b/device/testing/device-xiaomi-natrium/pointercal @@ -0,0 +1 @@ +38332 -97 -1987162 -902 117510 2078835 65536 1080 1920 0 \ No newline at end of file diff --git a/device/testing/firmware-xiaomi-natrium/APKBUILD b/device/testing/firmware-xiaomi-natrium/APKBUILD new file mode 100644 index 0000000000000000000000000000000000000000..967ce2e67e570a530ca9d03dbc70fb1f81a01725 --- /dev/null +++ b/device/testing/firmware-xiaomi-natrium/APKBUILD @@ -0,0 +1,28 @@ +# Maintainer: Alec Su (AlecJY) <ae40515@yahoo.com.tw> +pkgname=firmware-xiaomi-natrium +pkgver=1 +pkgrel=0 +pkgdesc="Firmware for Xiaomi Mi 5s Plus" +url="https://gitlab.com/AlecJY/firmware-xiaomi-natrium" +arch="aarch64" +license="proprietary" +options="!strip !check !archcheck !tracedeps pmb:cross-native" + +_commit="ec5784e0abed3ce08a45543144f19fd32450b297" + +source=" + $pkgname.tar.gz::$url/-/archive/$_commit/$pkgname-$_commit.tar.gz + firmware.files + " + +package() { + cd "$srcdir/$pkgname-$_commit/" + while IFS="" read -r _i || [ -n "$_i" ]; do + echo $_i + install -Dm644 $_i "$pkgdir/$_i" + done < "$srcdir/firmware.files" +} +sha512sums=" +6c83241b34961514e1add96c2585f9880db45e96f655e7799dcfffd282447601319bc9697bfed9a9dece353f5ad74f9296049cf1655aa60f7d083c4f8e1392ad firmware-xiaomi-natrium.tar.gz +306e48947c9bf35a6cc9d2fbca995e5e6e930e6efc43d4dc0a93358330e0949fe099ec735515bb033ab1cf0d55d450ff154a070789a9878f782cc6084a4063f7 firmware.files +" diff --git a/device/testing/firmware-xiaomi-natrium/firmware.files b/device/testing/firmware-xiaomi-natrium/firmware.files new file mode 100644 index 0000000000000000000000000000000000000000..27ad412bc9fe15328cd3711f03127a5f8c7291f3 --- /dev/null +++ b/device/testing/firmware-xiaomi-natrium/firmware.files @@ -0,0 +1,6 @@ +./lib/firmware/qcom/msm8996/natrium/a530_zap.mbn +./lib/firmware/qcom/msm8996/natrium/adsp.mbn +./lib/firmware/qcom/msm8996/natrium/mba.mbn +./lib/firmware/qcom/msm8996/natrium/modem.mbn +./lib/firmware/qcom/msm8996/natrium/slpi.mbn +./lib/firmware/qcom/msm8996/natrium/venus.mbn