From ecb08a4388d18511c74ed2ecc73f539f7dac0f2e Mon Sep 17 00:00:00 2001 From: uclydde Date: Sat, 19 Nov 2022 16:33:45 -0500 Subject: [PATCH] motorola-ali: use mainline kernel and add firmware (MR 3569) [ci:skip-build]: already built successfully in CI --- .ci/testcases/test_firmware.py | 1 + device/testing/device-motorola-ali/APKBUILD | 27 ++++++----- device/testing/device-motorola-ali/deviceinfo | 7 ++- device/testing/device-motorola-ali/directfbrc | 1 - device/testing/device-motorola-ali/fb.modes | 7 --- .../device-motorola-ali/initfs-hook.sh | 7 --- device/testing/firmware-motorola-ali/APKBUILD | 47 +++++++++++++++++++ 7 files changed, 69 insertions(+), 28 deletions(-) delete mode 100644 device/testing/device-motorola-ali/directfbrc delete mode 100644 device/testing/device-motorola-ali/fb.modes delete mode 100644 device/testing/device-motorola-ali/initfs-hook.sh create mode 100644 device/testing/firmware-motorola-ali/APKBUILD diff --git a/.ci/testcases/test_firmware.py b/.ci/testcases/test_firmware.py index 2d56350a0..61edea5e5 100644 --- a/.ci/testcases/test_firmware.py +++ b/.ci/testcases/test_firmware.py @@ -15,6 +15,7 @@ def test_aports_firmware(args): """ excluded = [ + "firmware-motorola-ali", # Depends on firmware-qcom-adreno-a530 "firmware-motorola-potter", # Depends on soc-qcom-msm8916-ucm "firmware-oneplus-msm8998", # Depends on soc-qcom-sdm845-nonfree-firmware "firmware-xiaomi-sagit", # Depends on soc-qcom-sdm845-nonfree-firmware diff --git a/device/testing/device-motorola-ali/APKBUILD b/device/testing/device-motorola-ali/APKBUILD index c63d76e17..2452b3f02 100644 --- a/device/testing/device-motorola-ali/APKBUILD +++ b/device/testing/device-motorola-ali/APKBUILD @@ -1,15 +1,19 @@ # Reference: pkgname=device-motorola-ali pkgdesc="Motorola Moto G6" -pkgver=0.1 -pkgrel=7 +pkgver=0.2 +pkgrel=0 url="https://postmarketos.org" license="MIT" -arch="armv7" +arch="aarch64" options="!check !archcheck" -depends="postmarketos-base linux-motorola-ali mkbootimg msm-fb-refresher mdss-fb-init-hack" +depends="postmarketos-base linux-postmarketos-qcom-msm8953 mkbootimg" makedepends="devicepkg-dev" -source="deviceinfo initfs-hook.sh directfbrc fb.modes" +source="deviceinfo" + +subpackages=" + $pkgname-nonfree-firmware:nonfree_firmware +" build() { devicepkg_build $startdir $pkgname @@ -17,14 +21,15 @@ build() { package() { devicepkg_package $startdir $pkgname - install -Dm644 "$srcdir"/fb.modes "$pkgdir"/etc/fb.modes - install -Dm644 "$srcdir"/directfbrc "$pkgdir"/etc/directfbrc +} + +nonfree_firmware() { + pkgdesc="GPU/Wi-Fi/Bluetooth/Audio/Video/Modem firmware" + depends="firmware-motorola-ali msm-firmware-loader" + mkdir "$subpkgdir" } sha512sums=" -a31245b3f4fdc6356765628e8b0d4ea87f167235eb31f9ef333c8c576b92a1908985ab60ffa39d73a9d64beb83b1a3032cc6e3d56d99e609889139a7898916a0 deviceinfo -977537b59e0f89d0db475108baae1d93a6678569ec4d7ab7c909562ebea7d645efb6a73b509b3e37369c1c556a8760cd9f46ba4e9bbb86e400cabcc0c2960230 initfs-hook.sh -3db3ec596e159be926ea2b5b2496c18e9bc7be24a64a232a56c89a0c9ee710aa2efb2b6fa9fc08efa34759e8242e6c629d08a4ce688ec8aa125830717c191515 directfbrc -e8ee37f49b360e06f7b5d54a93fcd2a7b3261436b2a228e8457a5c44fb52510f6173332155701a9d8ed435466732921ea5836aed73f1e7bc4049635f5a71fb31 fb.modes +c37874a3f9a0ba08a213a8186275f7719f5b4f39bcb542424523860492646bc4d1d48a1c10f8d03950a1ee4fa655ee397c7b89ab62c085ed851b139767852e34 deviceinfo " diff --git a/device/testing/device-motorola-ali/deviceinfo b/device/testing/device-motorola-ali/deviceinfo index 830952491..555acdb67 100644 --- a/device/testing/device-motorola-ali/deviceinfo +++ b/device/testing/device-motorola-ali/deviceinfo @@ -6,9 +6,13 @@ deviceinfo_name="Motorola Moto G6" deviceinfo_manufacturer="Motorola" deviceinfo_codename="motorola-ali" deviceinfo_year="2018" -deviceinfo_arch="armv7" +deviceinfo_arch="aarch64" +deviceinfo_dtb="qcom/sdm450-motorola-ali" +deviceinfo_append_dtb="true" +deviceinfo_modules_initfs="msm edt_ft5x06" # Device related +deviceinfo_gpu_accelerated="true" deviceinfo_chassis="handset" deviceinfo_keyboard="false" deviceinfo_external_storage="false" @@ -17,7 +21,6 @@ deviceinfo_screen_height="2160" # Bootloader related deviceinfo_flash_method="fastboot" -deviceinfo_kernel_cmdline="console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom user_debug=30 msm_rtb.filter=0x237 ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 firmware_class.path=/vendor/firmware_mnt/image loop.max_part=7 vmalloc=400M buildvariant=user" deviceinfo_generate_bootimg="true" deviceinfo_bootimg_qcdt="false" deviceinfo_bootimg_dtb_second="false" diff --git a/device/testing/device-motorola-ali/directfbrc b/device/testing/device-motorola-ali/directfbrc deleted file mode 100644 index 2f95682a6..000000000 --- a/device/testing/device-motorola-ali/directfbrc +++ /dev/null @@ -1 +0,0 @@ -pixelformat=ARGB diff --git a/device/testing/device-motorola-ali/fb.modes b/device/testing/device-motorola-ali/fb.modes deleted file mode 100644 index 3b52e3c23..000000000 --- a/device/testing/device-motorola-ali/fb.modes +++ /dev/null @@ -1,7 +0,0 @@ -mode "1080x2160-60" - # D: 156.104 MHz, H: 131.180 kHz, V: 60.009 Hz - geometry 1080 2160 1080 2160 16 - timings 6406 53 53 24 1 4 1 - accel false - rgba 8/0,8/8,8/16,8/24 -endmode diff --git a/device/testing/device-motorola-ali/initfs-hook.sh b/device/testing/device-motorola-ali/initfs-hook.sh deleted file mode 100644 index 0befe7533..000000000 --- a/device/testing/device-motorola-ali/initfs-hook.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# enable touchscreen -echo 1 > /sys/devices/soc/78b7000.i2c/i2c-3/3-0020/drv_irq - -# fixes the "boot to black screen" issue -echo 0 0 > /sys/class/graphics/fb0/pan diff --git a/device/testing/firmware-motorola-ali/APKBUILD b/device/testing/firmware-motorola-ali/APKBUILD new file mode 100644 index 000000000..e760ebe4c --- /dev/null +++ b/device/testing/firmware-motorola-ali/APKBUILD @@ -0,0 +1,47 @@ +pkgname=firmware-motorola-ali +pkgver=1 +pkgrel=0 +pkgdesc="Firmware for Motorola Moto G6" +url="https://github.com/julianbraha/firmware-motorola-ali" +arch="aarch64" +depends="firmware-qcom-adreno-a530" +license="proprietary" +_repository="firmware-blobs" +_commit="153ba76124497fb7ce22d87a90149a15bcf67942" +source="$pkgname-$_commit.tar.gz::https://github.com/moto-g6-mainlining/firmware-blobs/archive/$_commit.tar.gz" +options="!strip !check !archcheck !spdx !tracedeps" +builddir="$srcdir/$_repository-$_commit" + +_fwdir="/lib/firmware/postmarketos" + +package() { + # Modem firmware + install -Dm644 mba.mbn -t "$pkgdir/$_fwdir" + install -Dm644 modem.* -t "$pkgdir/$_fwdir" + + # ADSP firmware + install -Dm644 adsp.* -t "$pkgdir/$_fwdir" + + # GPU and video acceleration firmwares + install -Dm644 a5* -t "$pkgdir/$_fwdir" + install -Dm644 venus.* -t "$pkgdir/$_fwdir" + + # /lib/firmware/postmarketos + _files="wcnss.b00 wcnss.b01 wcnss.b02 wcnss.b04 wcnss.b06 + wcnss.b09 wcnss.b10 wcnss.b11 wcnss.b12 wcnss.mdt" + for _i in $_files; do + install -Dm644 "$_i" "$pkgdir"$_fwdir/"$_i" + done + + # /lib/firmware/postmarketos/wlan/prima + _files="WCNSS_qcom_cfg.ini + WCNSS_qcom_wlan_nv.bin WCNSS_wlan_dictionary.dat" + for _i in $_files; do + install -Dm644 wlan/prima/"$_i" \ + "$pkgdir"$_fwdir/wlan/prima/"$_i" + done +} + +sha512sums=" +269ac182806e9128557ac614142bfd6a2feab2cc3d2555268064df7ad1880de0d5e85b781a34ca57693d9c32ffe7d31da7fd34f9fd6364bc2b7cc2fdb90edc80 firmware-motorola-ali-153ba76124497fb7ce22d87a90149a15bcf67942.tar.gz +"