From 25c8729aa06ea194fb3a773e03e21bcabc2be951 Mon Sep 17 00:00:00 2001 From: David Wronek Date: Sun, 9 Jan 2022 13:05:18 +0100 Subject: [PATCH] huawei-y635: new device (MR 2826) --- device/testing/device-huawei-y635/APKBUILD | 44 +++++++++++++++++++ device/testing/device-huawei-y635/deviceinfo | 33 ++++++++++++++ device/testing/device-huawei-y635/pointercal | 1 + .../testing/device-huawei-y635/rootston.ini | 5 +++ device/testing/firmware-huawei-y635/APKBUILD | 31 +++++++++++++ 5 files changed, 114 insertions(+) create mode 100644 device/testing/device-huawei-y635/APKBUILD create mode 100644 device/testing/device-huawei-y635/deviceinfo create mode 100644 device/testing/device-huawei-y635/pointercal create mode 100644 device/testing/device-huawei-y635/rootston.ini create mode 100644 device/testing/firmware-huawei-y635/APKBUILD diff --git a/device/testing/device-huawei-y635/APKBUILD b/device/testing/device-huawei-y635/APKBUILD new file mode 100644 index 000000000..18dc98b72 --- /dev/null +++ b/device/testing/device-huawei-y635/APKBUILD @@ -0,0 +1,44 @@ +# Reference: +pkgname=device-huawei-y635 +pkgdesc="Huawei Y635" +pkgver=1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends="postmarketos-base mkbootimg linux-postmarketos-qcom-msm8916 soc-qcom-msm8916" +makedepends="devicepkg-dev" +source="deviceinfo pointercal rootston.ini" +subpackages="$pkgname-nonfree-firmware:nonfree_firmware $pkgname-phosh" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname + install -D -m644 "$srcdir"/pointercal -t \ + "$pkgdir"/etc +} + +nonfree_firmware() { + pkgdesc="GPU/WiFi/BT/Video firmware" + # msm-firmware-loader not needed because modem is not supported yet + depends="firmware-qcom-adreno-a300 + firmware-qcom-msm8916-wcnss firmware-huawei-y635-wcnss-nv + firmware-qcom-msm8916-venus" + mkdir "$subpkgdir" +} + +phosh() { + install_if="$pkgname postmarketos-ui-phosh" + install -Dm644 "$srcdir"/rootston.ini -t \ + "$subpkgdir"/etc/phosh +} + +sha512sums=" +bce88abfe86ceb72f98f127d4827c281cc735301659e34ee56407cce25f222e90ad8b2709848d209e71e5ec7b820e9750bb8d34dd9d6fb8b28c65dbce37bf445 deviceinfo +4d43e2c8facedbf5ba98c072e8fc20197a15acb06918a02bb753b48df356be1d4cafc0383968aac2dda50d240dc8cb038370da1fd37d807a9cb832e873de2b85 pointercal +f3667b914bb955be9e97db31dc7ed4a7c5d0c369be9549d587bb7208e270590c0c3fa36a0dd997d6f8305c5c9afb3b906423af6ca8724e806f995e61226cfc83 rootston.ini +" diff --git a/device/testing/device-huawei-y635/deviceinfo b/device/testing/device-huawei-y635/deviceinfo new file mode 100644 index 000000000..2ccd619ec --- /dev/null +++ b/device/testing/device-huawei-y635/deviceinfo @@ -0,0 +1,33 @@ +# Reference: +# Please use double quotes only. You can source this file in shell scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Huawei Y635" +deviceinfo_manufacturer="Huawei" +deviceinfo_codename="huawei-y635" +deviceinfo_year="2015" +deviceinfo_dtb="qcom/msm8916-huawei-y635" +deviceinfo_append_dtb="true" +deviceinfo_modules_initfs="pm8916-bms-vm pm8916-lbc panel-huawei-boe-otm8019a msm msg2638" +deviceinfo_arch="aarch64" + +# Device related +deviceinfo_gpu_accelerated="true" +deviceinfo_chassis="handset" +deviceinfo_keyboard="false" +deviceinfo_external_storage="true" +deviceinfo_screen_width="480" +deviceinfo_screen_height="854" +deviceinfo_getty="ttyMSM0;115200" + +# 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/device-huawei-y635/pointercal b/device/testing/device-huawei-y635/pointercal new file mode 100644 index 000000000..dd4dd7308 --- /dev/null +++ b/device/testing/device-huawei-y635/pointercal @@ -0,0 +1 @@ +15367 0 0 0 27341 0 65535 480 854 0 diff --git a/device/testing/device-huawei-y635/rootston.ini b/device/testing/device-huawei-y635/rootston.ini new file mode 100644 index 000000000..8118a5e78 --- /dev/null +++ b/device/testing/device-huawei-y635/rootston.ini @@ -0,0 +1,5 @@ +[cursor:seat0] +map-to-output:DSI-1 + +[output:DSI-1] +scale = 1 diff --git a/device/testing/firmware-huawei-y635/APKBUILD b/device/testing/firmware-huawei-y635/APKBUILD new file mode 100644 index 000000000..1fce9e350 --- /dev/null +++ b/device/testing/firmware-huawei-y635/APKBUILD @@ -0,0 +1,31 @@ +pkgname=firmware-huawei-y635 +pkgver=1 +pkgrel=0 +pkgdesc="Firmware for Huawei Y635" +url="https://postmarketos.org" +subpackages="$pkgname-wcnss-nv:wcnss_nv" +arch="aarch64" +license="proprietary" +options="!check !strip !archcheck !tracedeps pmb:cross-native" +source="$pkgname-WCNSS_qcom_wlan_nv.bin.base64::https://pastebin.com/raw/yYNgH3PW" + +_fwdir="/lib/firmware/postmarketos" + +unpack() { + default_unpack + base64 -d $pkgname-WCNSS_qcom_wlan_nv.bin.base64 > WCNSS_qcom_wlan_nv.bin +} + +package() { + # parent package is empty + mkdir -p "$pkgdir" +} + +wcnss_nv() { + pkgdesc="Huawei Y635 WiFi/BT firmware configuration" + install -Dm644 "$srcdir"/WCNSS_qcom_wlan_nv.bin -t "$subpkgdir/$_fwdir"/wlan/prima +} + +sha512sums=" +c7c59dba8dcb527963a2710e4cf21937f0c8884f0befa1002df29bccc252d03deb79d097eb87441d73a2e889426eb3e98d96ab68fae525a317e71a4e938103eb firmware-huawei-y635-WCNSS_qcom_wlan_nv.bin.base64 +"