From 4b746b298c467f824d412d496aa1e53210e796b0 Mon Sep 17 00:00:00 2001 From: Frieder Hannenheim Date: Mon, 14 Apr 2025 14:03:16 +0200 Subject: [PATCH] device-oneplus-kebab: add mainline kernel Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6411 --- device/testing/device-oneplus-kebab/APKBUILD | 43 +++++++++++++------ .../testing/device-oneplus-kebab/deviceinfo | 14 ++++-- .../sm8250-oneplus-kebab-empty.dts | 10 +++++ 3 files changed, 51 insertions(+), 16 deletions(-) create mode 100644 device/testing/device-oneplus-kebab/sm8250-oneplus-kebab-empty.dts diff --git a/device/testing/device-oneplus-kebab/APKBUILD b/device/testing/device-oneplus-kebab/APKBUILD index de8a853d2..ef4be346b 100644 --- a/device/testing/device-oneplus-kebab/APKBUILD +++ b/device/testing/device-oneplus-kebab/APKBUILD @@ -2,21 +2,27 @@ pkgname=device-oneplus-kebab pkgdesc="OnePlus 8T" pkgver=2 -pkgrel=0 +pkgrel=1 url="https://postmarketos.org" license="MIT" arch="aarch64" options="!check !archcheck" depends=" - linux-oneplus-kebab mkbootimg postmarketos-base " -makedepends="devicepkg-dev" -subpackages="$pkgname-weston" +makedepends=" + devicepkg-dev + dtc +" +subpackages=" + $pkgname-kernel-downstream:kernel_downstream + $pkgname-kernel-mainline:kernel_mainline + device-oneplus-instantnoodlep-nonfree-firmware:nonfree_firmware +" source=" deviceinfo - weston.ini + sm8250-oneplus-kebab-empty.dts " build() { @@ -27,16 +33,29 @@ package() { devicepkg_package $startdir $pkgname } -weston() { - install_if="$pkgname weston" +kernel_downstream() { + pkgdesc="Downstream kernel (not recommended, for debugging purposes)" + depends="linux-oneplus-kebab" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} - # weston use drm backend, 2x dpi, don't use virtual output - install -Dm644 "$srcdir"/weston.ini \ - "$subpkgdir"/etc/xdg/weston/weston.ini +kernel_mainline() { + pkgdesc="Mainline kernel (recommended)" + depends="linux-postmarketos-qcom-sm8250" + + dtc -O dtb -o "$srcdir/dtbo.img" -I dts "$srcdir/sm8250-oneplus-kebab-empty.dts" + install -Dm644 "$srcdir/dtbo.img" "$subpkgdir/boot/dtbo.img" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} + +nonfree_firmware() { + pkgdesc="Firmware for OnePlus 8T" + depends="firmware-oneplus-instantnoodlep" + mkdir "$subpkgdir" } sha512sums=" -538e17ec6855924865cf1bb2650667232bf6c384e1e8918f40e660ad61c001bace4cc16b46609b067dad5bbf6e9d33339340c273d81aa0550dffe05fdb2f106c deviceinfo -4fdc188f9cd5c0316959322568916a6e36e67ff316e90fa7bd7c7b642cb137a9ff7002b0475728c6ba53abcbfe8c50d82112e4943460ee424aee4bbfd0efecfe weston.ini +128cbf4249fe67027c82929f021ef479990558024d418f5fc7fa2320e686ed9f2282493af41eb88b76b61627dab979b1f3f53d6be0d3bfb177e6a59f20033b9c deviceinfo +fa4866865dd9e6388b7ee2319954d2317245c5618a0ebd9250abae7d58e08aa4a248a6dd9a87a820b30615b8f9f6e5f66b6883a47f7f0d3d69bfffe3440f33b2 sm8250-oneplus-kebab-empty.dts " diff --git a/device/testing/device-oneplus-kebab/deviceinfo b/device/testing/device-oneplus-kebab/deviceinfo index 16d05e6bd..f863c0f3e 100644 --- a/device/testing/device-oneplus-kebab/deviceinfo +++ b/device/testing/device-oneplus-kebab/deviceinfo @@ -18,19 +18,25 @@ deviceinfo_screen_height="2400" # Bootloader related deviceinfo_flash_method="fastboot" -deviceinfo_kernel_cmdline="androidboot.hardware=qcom androidboot.console=ttyMSM0 androidboot.memcg=1 lpm_levels.sleep_disabled=1 msm_rtb.filter=0x237 service_locator.enable=1 androidboot.usbcontroller=a600000.dwc3 swiotlb=2048 loop.max_part=7 cgroup.memory=nokmem,nosocket reboot=panic_warm" +deviceinfo_kernel_cmdline_downstream="androidboot.console=ttyMSM0 androidboot.hardware=qcom androidboot.memcg=1 androidboot.usbcontroller=a600000.dwc3 cgroup.memory=nokmem,nosocket loop.max_part=7 lpm_levels.sleep_disabled=1 msm_rtb.filter=0x237 reboot=panic_warm service_locator.enable=1 swiotlb=2048 buildvariant=userdebug printk.devkmsg=on" +deviceinfo_kernel_cmdline_mainline="clk_ignore_unused pd_ignore_unused" +deviceinfo_header_version_downstream="0" +deviceinfo_header_version_mainline="2" +deviceinfo_append_dtb="false" +deviceinfo_dtb_mainline="qcom/sm8250-oneplus-kebab" deviceinfo_generate_bootimg="true" deviceinfo_bootimg_qcdt="false" deviceinfo_bootimg_dtb_second="false" deviceinfo_flash_pagesize="4096" deviceinfo_flash_offset_base="0x00000000" +deviceinfo_flash_offset_dtb="0x01f00000" deviceinfo_flash_offset_kernel="0x00008000" deviceinfo_flash_offset_ramdisk="0x01000000" deviceinfo_flash_offset_second="0x00000000" deviceinfo_flash_offset_tags="0x00000100" -deviceinfo_rootfs_image_sector_size="4096" deviceinfo_flash_fastboot_partition_rootfs="super" deviceinfo_flash_fastboot_partition_dtbo="dtbo" -# pmOS related -deviceinfo_no_framebuffer="true" +deviceinfo_super_partitions="/dev/sda14 /dev/sda14" +deviceinfo_rootfs_image_sector_size="4096" +deviceinfo_flash_sparse="true" diff --git a/device/testing/device-oneplus-kebab/sm8250-oneplus-kebab-empty.dts b/device/testing/device-oneplus-kebab/sm8250-oneplus-kebab-empty.dts new file mode 100644 index 000000000..a9bcdbb0e --- /dev/null +++ b/device/testing/device-oneplus-kebab/sm8250-oneplus-kebab-empty.dts @@ -0,0 +1,10 @@ +/dts-v1/; + +/ { + model = "Qualcomm Technologies, Inc. kona v2.1 SoC 19805"; + compatible = "oneplus,kebab", "qcom,kona"; + chassis-type = "handset"; + + qcom,msm-id = <356 0x10000>; + qcom,board-id = <8 0>; +};