From 9588ec951a28302726cdc299240a331a3685801b Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Wed, 21 Jan 2026 09:53:00 +0100 Subject: [PATCH] device-ayaneo-pocket-s2: add the Ayaneo Pocket S2 device The Ayaneo Pocket S2 is a Snapdragon 8 Gen 3 based gaming device, it has a 2k 60fps LCD panel, internal UFS, complete keypad connected via a PCIe USB Controller, SDCard slot, WiFi and Bluetooth. Add the device package with the firmwares, alsa ucm conf and kernel packages. Signed-off-by: Neil Armstrong Part-of: --- .../testing/device-ayaneo-pocket-s2/APKBUILD | 50 ++++++++ .../device-ayaneo-pocket-s2/deviceinfo | 24 ++++ .../device-ayaneo-pocket-s2/firmware.files | 34 +++++ .../device-ayaneo-pocket-s2/modules-initfs | 117 ++++++++++++++++++ 4 files changed, 225 insertions(+) create mode 100644 device/testing/device-ayaneo-pocket-s2/APKBUILD create mode 100644 device/testing/device-ayaneo-pocket-s2/deviceinfo create mode 100644 device/testing/device-ayaneo-pocket-s2/firmware.files create mode 100644 device/testing/device-ayaneo-pocket-s2/modules-initfs diff --git a/device/testing/device-ayaneo-pocket-s2/APKBUILD b/device/testing/device-ayaneo-pocket-s2/APKBUILD new file mode 100644 index 000000000..1a5668ca1 --- /dev/null +++ b/device/testing/device-ayaneo-pocket-s2/APKBUILD @@ -0,0 +1,50 @@ +# Reference: +maintainer="Neil Armstrong " +pkgname=device-ayaneo-pocket-s2 +pkgdesc="Ayaneo Pocket S2" +pkgver=1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends=" + alsa-ucm-conf-ayaneo-pocket-s2 + firmware-ayaneo-pocket-renesas-usb + firmware-ayaneo-pocket-s2-adreno + firmware-ayaneo-pocket-s2-adsp + firmware-ayaneo-pocket-s2-ath12k + firmware-ayaneo-pocket-s2-cdsp + firmware-ayaneo-pocket-s2-iris + firmware-ayaneo-pocket-s2-tplg + linux-ayaneo-pocket-s2 + linux-firmware-ath12k + linux-firmware-qca + linux-firmware-qcom + postmarketos-base + soc-qcom + systemd-boot +" +makedepends="devicepkg-dev" +source=" + deviceinfo + firmware.files + modules-initfs +" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname + + install -Dm644 "$srcdir"/firmware.files \ + -t "$pkgdir"/usr/share/mkinitfs/files +} + +sha512sums=" +233c4e0a7ac71516b0332200716a1ac27a33e26b77fca8726b4fdfc2f8f16cd30653aeb28ff6befe597d5f781da83cff2f194ebe4287d992756676e3ae68ea91 deviceinfo +5c219e5532705402a2cff81ae792ee5d74751bccfe0038d5ea2d6701cc07df860808f7879ba93a80241bfbcb2a2527587b1c1d770602dd682c15f7d5800d03a3 firmware.files +bc2f6134fc2612344dacddfb4146d6c028f3d8916ba1e78598ed16307446f4266b76afadfdf18543813bbca2727eda8523b5f8467f89c65922e70221d004f899 modules-initfs +" diff --git a/device/testing/device-ayaneo-pocket-s2/deviceinfo b/device/testing/device-ayaneo-pocket-s2/deviceinfo new file mode 100644 index 000000000..c26f7168c --- /dev/null +++ b/device/testing/device-ayaneo-pocket-s2/deviceinfo @@ -0,0 +1,24 @@ +# Reference: +# Please use double quotes only. You can source this file in shell +# scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Ayaneo Pocket S2" +deviceinfo_manufacturer="Ayaneo" +deviceinfo_codename="ayaneo-pocket-s2" +deviceinfo_year="2025" +deviceinfo_dtb="qcom/sm8650-ayaneo-pocket-s2" +deviceinfo_arch="aarch64" + +# Device related +deviceinfo_chassis="tablet" +deviceinfo_external_storage="true" +deviceinfo_drm="true" + +# Bootloader related +deviceinfo_kernel_cmdline="clk_ignore_unused pd_ignore_unused fbcon=rotate:1" +deviceinfo_generate_systemd_boot="true" +deviceinfo_boot_filesystem="fat32" + +# Required for devices using UFS as storage (instead of e.g. eMMC) +deviceinfo_rootfs_image_sector_size="4096" diff --git a/device/testing/device-ayaneo-pocket-s2/firmware.files b/device/testing/device-ayaneo-pocket-s2/firmware.files new file mode 100644 index 000000000..f901dcc19 --- /dev/null +++ b/device/testing/device-ayaneo-pocket-s2/firmware.files @@ -0,0 +1,34 @@ +# Bluetooth +/lib/firmware/qca/hmtbtfw20.tlv +/lib/firmware/qca/hmtnv20.b10f +/lib/firmware/qca/hmtnv20.b112 +/lib/firmware/qca/hmtnv20.bin + +# GPU +/lib/firmware/qcom/gen70900_aqe.fw.zst +/lib/firmware/qcom/gen70900_sqe.fw.zst +/lib/firmware/qcom/gmu_gen70900.bin.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/gen70900_zap.mbn.zst + +# HW Video Decoding +/lib/firmware/qcom/vpu/vpu33_p4.mbn.zst + +# remoteproc +/lib/firmware/qcom/sm8650/ayaneo/ps2/adsp.mbn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/adsp_dtb.mbn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/adspr.jsn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/adsps.jsn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/adspua.jsn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/battmgr.jsn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/cdsp.mbn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/cdsp_dtb.mbn.zst +/lib/firmware/qcom/sm8650/ayaneo/ps2/cdspr.jsn.zst +/lib/firmware/qcom/sm8650/SM8650-APS2-tplg.bin.zst + +# Wi-Fi +/lib/firmware/ath12k/WCN7850/hw2.0/amss.bin.zst +/lib/firmware/ath12k/WCN7850/hw2.0/board-2.bin.zst +/lib/firmware/ath12k/WCN7850/hw2.0/m3.bin.zst + +# USB Controller +/lib/firmware/renesas_usb_fw.mem.zst diff --git a/device/testing/device-ayaneo-pocket-s2/modules-initfs b/device/testing/device-ayaneo-pocket-s2/modules-initfs new file mode 100644 index 000000000..ad8e00139 --- /dev/null +++ b/device/testing/device-ayaneo-pocket-s2/modules-initfs @@ -0,0 +1,117 @@ +apr +authenc +aux-bridge +aux-hpd-bridge +backlight +cec +coresight +coresight-funnel +coresight-tmc +dispcc-sm8550 +drm +drm_client_lib +drm_display_helper +drm_dp_aux_bus +drm_exec +drm_gpuvm +drm_kms_helper +fastrpc +goodix_ts +gpi +gpio-shared-proxy +gpu-sched +gpucc-sm8650 +i2c-qcom-geni +icc-bwmon +icc-osm-l3 +led-class-multicolor +leds-qcom-lpg +libarc4 +libcomposite +libdes +llcc-qcom +mdt_loader +mhi +msm +nb7vpq904m +nvmem_qcom-spmi-sdam +nvmem-reboot-mode +ocmem +panel-wt0600-2k +pdr_interface +phy-qcom-eusb2-repeater +phy-qcom-qmp-combo +phy-qcom-qmp-pcie +phy-qcom-qmp-ufs +phy-snps-eusb2 +pinctrl-lpass-lpi +pinctrl-sm8650-lpass-lpi +pmic_glink +pmic_glink_altmode +pwm-fan +q6apm-dai +q6apm-lpass-dais +q6prm +q6prm-clocks +qcom_battmgr +qcom_common +qcom_glink_smem +qcom-pbs +qcom_pd_mapper +qcom_pdr_msg +qcom_pil_info +qcom-pon +qcom_q6v5 +qcom_q6v5_pas +qcom-rng +qcom-spmi-temp-alarm +qcom_stats +qcom_sysmon +qcrypto +qmi_helpers +qrtr +qrtr-mhi +qrtr-smd +regmap-sdw +reset-gpio +rpmsg_char +rpmsg_ctrl +rtc-pm8xxx +sha1 +sha256 +slimbus +sm3-ce +snd +snd-compress +snd-pcm +snd-pcm-dmaengine +snd-q6apm +snd-q6dsp-common +snd-soc-core +snd-soc-hdmi-codec +snd-soc-lpass-macro-common +snd-soc-lpass-rx-macro +snd-soc-lpass-tx-macro +snd-soc-lpass-va-macro +snd-soc-lpass-wsa-macro +snd-soc-qcom-common +snd-soc-qcom-sdw +snd-soc-sc8280xp +snd-soc-wcd939x +snd-soc-wcd939x-sdw +snd-soc-wcd-classh +snd-soc-wcd-common +snd-soc-wcd-mbhc +snd-soc-wsa884x +snd-timer +socinfo +soundcore +soundwire-bus +soundwire-qcom +sy7758 +typec +typec_ucsi +ubwc_config +ucsi_glink +usb_f_fs +wcd939x-usbss