diff --git a/projects/ROCKNIX/bootloader/dtb.xml b/projects/ROCKNIX/bootloader/dtb.xml
index d56ce3fd4f..128e0dac74 100644
--- a/projects/ROCKNIX/bootloader/dtb.xml
+++ b/projects/ROCKNIX/bootloader/dtb.xml
@@ -89,6 +89,7 @@
qcs8550-ayn-odin2mini
qcs8550-ayaneo-pocketace
qcs8550-ayaneo-pocketdmg
+ qcs8550-ayaneo-pocketds
qcs8550-ayaneo-pocketevo
diff --git a/projects/ROCKNIX/devices/SM8550/bootloader/LinuxLoader.cfg b/projects/ROCKNIX/devices/SM8550/bootloader/LinuxLoader.cfg
index f5e8238411..7d2f8f8994 100644
--- a/projects/ROCKNIX/devices/SM8550/bootloader/LinuxLoader.cfg
+++ b/projects/ROCKNIX/devices/SM8550/bootloader/LinuxLoader.cfg
@@ -14,4 +14,5 @@ devicetree = "/boot/u-boot-odin2.dtb"
#devicetree = "/boot/u-boot-pocket-ace.dtb"
#devicetree = "/boot/u-boot-pocket-dmg.dtb"
#devicetree = "/boot/u-boot-pocket-evo.dtb"
+#devicetree = "/boot/u-boot-pocket-ds.dtb"
cmdline = "nodtbo"
diff --git a/projects/ROCKNIX/devices/SM8550/packages/u-boot/package.mk b/projects/ROCKNIX/devices/SM8550/packages/u-boot/package.mk
index ae4038766f..0316376ee7 100644
--- a/projects/ROCKNIX/devices/SM8550/packages/u-boot/package.mk
+++ b/projects/ROCKNIX/devices/SM8550/packages/u-boot/package.mk
@@ -28,6 +28,7 @@ make_target() {
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/qcs8550-ayaneo-pocket-ace HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/qcs8550-ayaneo-pocket-dmg HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/qcs8550-ayaneo-pocket-evo HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
+ DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/qcs8550-ayaneo-pocket-ds HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
}
makeinstall_target() {
@@ -41,4 +42,5 @@ makeinstall_target() {
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ace.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-ace.dtb
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-dmg.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-dmg.dtb
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-evo.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-evo.dtb
+ cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-ds.dtb
}
diff --git a/projects/ROCKNIX/devices/SM8550/packages/u-boot/patches/0014-Add-AYANEO-Pocket-DS-Device-Tree.patch b/projects/ROCKNIX/devices/SM8550/packages/u-boot/patches/0014-Add-AYANEO-Pocket-DS-Device-Tree.patch
new file mode 100644
index 0000000000..e47f5ff017
--- /dev/null
+++ b/projects/ROCKNIX/devices/SM8550/packages/u-boot/patches/0014-Add-AYANEO-Pocket-DS-Device-Tree.patch
@@ -0,0 +1,660 @@
+diff -rupbN u-boot.orig/dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dts u-boot/dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dts
+--- u-boot.orig/dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dts 1970-01-01 00:00:00.000000000 +0000
++++ u-boot/dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dts 2025-08-28 21:12:17.047424292 +0000
+@@ -0,0 +1,656 @@
++// SPDX-License-Identifier: BSD-3-Clause
++/*
++ * Copyright (c) 2025, Teguh Sobirin.
++ */
++/dts-v1/;
++
++#include
++#include
++#include "qcs8550.dtsi"
++#include "pm8550.dtsi"
++#include "pm8550b.dtsi"
++#define PMK8550VE_SID 5
++#include "pm8550ve.dtsi"
++#include "pm8550vs.dtsi"
++#include "pmk8550.dtsi"
++
++/delete-node/ &aop_image_mem;
++/delete-node/ &aop_config_mem;
++/delete-node/ &camera_mem;
++/delete-node/ &ipa_fw_mem;
++/delete-node/ &ipa_gsi_mem;
++/delete-node/ &mpss_dsm_mem;
++/delete-node/ &mpss_mem;
++/delete-node/ &q6_mpss_dtb_mem;
++
++/delete-node/ &cci0;
++/delete-node/ &cci1;
++/delete-node/ &cci2;
++/delete-node/ &camcc;
++/delete-node/ &remoteproc_mpss;
++
++/ {
++ model = "AYANEO Pocket DS";
++ compatible = "ayaneo,pocketds", "qcom,qcs8550", "qcom,sm8550";
++
++ chassis-type = "handset";
++
++ aliases {
++ serial0 = &uart7;
++ };
++
++ chosen {
++ stdout-path = "serial0:115200n8";
++
++ #address-cells = <2>;
++ #size-cells = <2>;
++ ranges;
++
++ framebuffer: framebuffer@b8000000 {
++ compatible = "simple-framebuffer";
++ reg = <0x0 0xb8000000 0x0 0x2b00000>;
++ width = <1080>;
++ height = <1920>;
++ stride = <(1080 * 4)>;
++ format = "a8r8g8b8";
++ rot = <1>;
++ };
++ };
++
++ gpio-keys {
++ compatible = "gpio-keys";
++
++ pinctrl-0 = <&volume_up_n>;
++ pinctrl-names = "default";
++
++ key-volume-up {
++ label = "Volume Up";
++ debounce-interval = <15>;
++ gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
++ linux,code = ;
++ linux,can-disable;
++ wakeup-source;
++ };
++ };
++
++ pmic-glink {
++ compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ orientation-gpios = <&tlmm 11 GPIO_ACTIVE_HIGH>;
++
++ connector@0 {
++ compatible = "usb-c-connector";
++ reg = <0>;
++ power-role = "dual";
++ data-role = "dual";
++
++ ports {
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ port@0 {
++ reg = <0>;
++
++ pmic_glink_hs_in: endpoint {
++ remote-endpoint = <&usb_1_dwc3_hs>;
++ };
++ };
++
++ port@1 {
++ reg = <1>;
++
++ pmic_glink_ss_in: endpoint {
++ remote-endpoint = <&redriver_ss_out>;
++ };
++ };
++ };
++ };
++ };
++
++ vph_pwr: regulator-vph-pwr {
++ compatible = "regulator-fixed";
++ regulator-name = "vph_pwr";
++ regulator-min-microvolt = <3700000>;
++ regulator-max-microvolt = <3700000>;
++
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ reserved-memory {
++ splash_region@b8000000 {
++ reg = <0x0 0xb8000000 0x0 0x2b00000>;
++ no-map;
++ };
++ };
++};
++
++&apps_rsc {
++ regulators-0 {
++ compatible = "qcom,pm8550-rpmh-regulators";
++ qcom,pmic-id = "b";
++
++ vdd-bob1-supply = <&vph_pwr>;
++ vdd-bob2-supply = <&vph_pwr>;
++ vdd-l1-l4-l10-supply = <&vreg_s6g_1p86>;
++ vdd-l2-l13-l14-supply = <&vreg_bob1>;
++ vdd-l3-supply = <&vreg_s4g_1p25>;
++ vdd-l5-l16-supply = <&vreg_bob1>;
++ vdd-l6-l7-supply = <&vreg_bob1>;
++ vdd-l8-l9-supply = <&vreg_bob1>;
++ vdd-l11-supply = <&vreg_s4g_1p25>;
++ vdd-l12-supply = <&vreg_s6g_1p86>;
++ vdd-l15-supply = <&vreg_s6g_1p86>;
++ vdd-l17-supply = <&vreg_bob2>;
++
++ vreg_bob1: bob1 {
++ regulator-name = "vreg_bob1";
++ regulator-min-microvolt = <3296000>;
++ regulator-max-microvolt = <3960000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_bob2: bob2 {
++ regulator-name = "vreg_bob2";
++ regulator-min-microvolt = <2720000>;
++ regulator-max-microvolt = <3960000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l1b_1p8: ldo1 {
++ regulator-name = "vreg_l1b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l2b_3p0: ldo2 {
++ regulator-name = "vreg_l2b_3p0";
++ regulator-min-microvolt = <3008000>;
++ regulator-max-microvolt = <3008000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l5b_3p1: ldo5 {
++ regulator-name = "vreg_l5b_3p1";
++ regulator-min-microvolt = <3104000>;
++ regulator-max-microvolt = <3104000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l6b_1p8: ldo6 {
++ regulator-name = "vreg_l6b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3008000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l7b_1p8: ldo7 {
++ regulator-name = "vreg_l7b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3008000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l8b_1p8: ldo8 {
++ regulator-name = "vreg_l8b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3008000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l9b_2p9: ldo9 {
++ regulator-name = "vreg_l9b_2p9";
++ regulator-min-microvolt = <2960000>;
++ regulator-max-microvolt = <3008000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l11b_1p2: ldo11 {
++ regulator-name = "vreg_l11b_1p2";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1504000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l12b_1p8: ldo12 {
++ regulator-name = "vreg_l12b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l13b_3p0: ldo13 {
++ regulator-name = "vreg_l13b_3p0";
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l14b_3p2: ldo14 {
++ regulator-name = "vreg_l14b_3p2";
++ regulator-min-microvolt = <3200000>;
++ regulator-max-microvolt = <3200000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l15b_1p8: ldo15 {
++ regulator-name = "vreg_l15b_1p8";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l16b_2p8: ldo16 {
++ regulator-name = "vreg_l16b_2p8";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l17b_2p5: ldo17 {
++ regulator-name = "vreg_l17b_2p5";
++ regulator-min-microvolt = <2504000>;
++ regulator-max-microvolt = <2504000>;
++ regulator-initial-mode = ;
++ };
++ };
++
++ regulators-1 {
++ compatible = "qcom,pm8550vs-rpmh-regulators";
++ qcom,pmic-id = "c";
++
++ vdd-l1-supply = <&vreg_s4g_1p25>;
++ vdd-l2-supply = <&vreg_s4e_0p95>;
++ vdd-l3-supply = <&vreg_s4e_0p95>;
++
++ vreg_l3c_0p9: ldo3 {
++ regulator-name = "vreg_l3c_0p9";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <912000>;
++ regulator-initial-mode = ;
++ };
++ };
++
++ regulators-2 {
++ compatible = "qcom,pm8550vs-rpmh-regulators";
++ qcom,pmic-id = "d";
++
++ vdd-l1-supply = <&vreg_s4e_0p95>;
++ vdd-l2-supply = <&vreg_s4e_0p95>;
++ vdd-l3-supply = <&vreg_s4e_0p95>;
++
++ vreg_l1d_0p88: ldo1 {
++ regulator-name = "vreg_l1d_0p88";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <920000>;
++ regulator-initial-mode = ;
++ };
++ };
++
++ regulators-3 {
++ compatible = "qcom,pm8550vs-rpmh-regulators";
++ qcom,pmic-id = "e";
++
++ vdd-l1-supply = <&vreg_s4e_0p95>;
++ vdd-l2-supply = <&vreg_s4e_0p95>;
++ vdd-l3-supply = <&vreg_s4g_1p25>;
++ vdd-s4-supply = <&vph_pwr>;
++ vdd-s5-supply = <&vph_pwr>;
++
++ vreg_s4e_0p95: smps4 {
++ regulator-name = "vreg_s4e_0p95";
++ regulator-min-microvolt = <904000>;
++ regulator-max-microvolt = <984000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s5e_1p08: smps5 {
++ regulator-name = "vreg_s5e_1p08";
++ regulator-min-microvolt = <1010000>;
++ regulator-max-microvolt = <1120000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l1e_0p88: ldo1 {
++ regulator-name = "vreg_l1e_0p88";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <912000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l2e_0p9: ldo2 {
++ regulator-name = "vreg_l2e_0p9";
++ regulator-min-microvolt = <870000>;
++ regulator-max-microvolt = <970000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l3e_1p2: ldo3 {
++ regulator-name = "vreg_l3e_1p2";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-initial-mode = ;
++ };
++ };
++
++ regulators-4 {
++ compatible = "qcom,pm8550ve-rpmh-regulators";
++ qcom,pmic-id = "f";
++
++ vdd-l1-supply = <&vreg_s4e_0p95>;
++ vdd-l2-supply = <&vreg_s4e_0p95>;
++ vdd-l3-supply = <&vreg_s4e_0p95>;
++ vdd-s4-supply = <&vph_pwr>;
++
++ vreg_s4f_0p5: smps4 {
++ regulator-name = "vreg_s4f_0p5";
++ regulator-min-microvolt = <300000>;
++ regulator-max-microvolt = <700000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l1f_0p9: ldo1 {
++ regulator-name = "vreg_l1f_0p9";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <912000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l2f_0p88: ldo2 {
++ regulator-name = "vreg_l2f_0p88";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <912000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l3f_0p88: ldo3 {
++ regulator-name = "vreg_l3f_0p88";
++ regulator-min-microvolt = <880000>;
++ regulator-max-microvolt = <912000>;
++ regulator-initial-mode = ;
++ };
++ };
++
++ regulators-5 {
++ compatible = "qcom,pm8550vs-rpmh-regulators";
++ qcom,pmic-id = "g";
++ vdd-l1-supply = <&vreg_s4g_1p25>;
++ vdd-l2-supply = <&vreg_s4g_1p25>;
++ vdd-l3-supply = <&vreg_s4g_1p25>;
++ vdd-s1-supply = <&vph_pwr>;
++ vdd-s2-supply = <&vph_pwr>;
++ vdd-s3-supply = <&vph_pwr>;
++ vdd-s4-supply = <&vph_pwr>;
++ vdd-s5-supply = <&vph_pwr>;
++ vdd-s6-supply = <&vph_pwr>;
++
++ vreg_s1g_1p25: smps1 {
++ regulator-name = "vreg_s1g_1p25";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1300000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s2g_0p85: smps2 {
++ regulator-name = "vreg_s2g_0p85";
++ regulator-min-microvolt = <500000>;
++ regulator-max-microvolt = <1036000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s3g_0p8: smps3 {
++ regulator-name = "vreg_s3g_0p8";
++ regulator-min-microvolt = <300000>;
++ regulator-max-microvolt = <1004000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s4g_1p25: smps4 {
++ regulator-name = "vreg_s4g_1p25";
++ regulator-min-microvolt = <1256000>;
++ regulator-max-microvolt = <1408000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s5g_0p85: smps5 {
++ regulator-name = "vreg_s5g_0p85";
++ regulator-min-microvolt = <500000>;
++ regulator-max-microvolt = <1004000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_s6g_1p86: smps6 {
++ regulator-name = "vreg_s6g_1p86";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <2000000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l1g_1p2: ldo1 {
++ regulator-name = "vreg_l1g_1p2";
++ regulator-min-microvolt = <1128000>;
++ regulator-max-microvolt = <1272000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l2g_1p2: ldo2 {
++ regulator-name = "vreg_l2g_1p2";
++ regulator-min-microvolt = <1100000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-initial-mode = ;
++ };
++
++ vreg_l3g_1p2: ldo3 {
++ regulator-name = "vreg_l3g_1p2";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-initial-mode = ;
++ };
++ };
++};
++
++&i2c_master_hub_0 {
++ status = "okay";
++};
++
++&i2c_hub_2 {
++ status = "okay";
++
++ typec-retimer@1c {
++ compatible = "onnn,nb7vpq904m";
++ reg = <0x1c>;
++ vcc-supply = <&vreg_l15b_1p8>;
++
++ retimer-switch;
++ orientation-switch;
++
++ ports {
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ port@0 {
++ reg = <0>;
++
++ redriver_ss_out: endpoint {
++ remote-endpoint = <&pmic_glink_ss_in>;
++ };
++ };
++
++ port@1 {
++ reg = <1>;
++
++ redriver_ss_in: endpoint {
++ data-lanes = <3 2 1 0>;
++ remote-endpoint = <&usb_dp_qmpphy_out>;
++ };
++ };
++ };
++ };
++};
++
++&gpi_dma1 {
++ status = "okay";
++};
++
++&gpi_dma2 {
++ status = "okay";
++};
++
++&pcie0 {
++ perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
++ wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
++ max-link-speed = <2>;
++
++ pinctrl-0 = <&pcie0_default_state>;
++ pinctrl-names = "default";
++
++ status = "okay";
++};
++
++&pcie0_phy {
++ vdda-phy-supply = <&vreg_l1e_0p88>;
++ vdda-pll-supply = <&vreg_l3e_1p2>;
++
++ status = "okay";
++};
++
++&pm8550_gpios {
++ sdc2_card_det_n: sdc2-card-det-n-state {
++ pins = "gpio12";
++ function = "normal";
++ input-enable;
++ output-disable;
++ bias-pull-up;
++ power-source = <1>; /* 1.8 V */
++ };
++
++ volume_up_n: volume-up-n-state {
++ pins = "gpio6";
++ function = "normal";
++ power-source = <1>;
++ bias-pull-up;
++ input-enable;
++ };
++};
++
++&pm8550b_eusb2_repeater {
++ vdd18-supply = <&vreg_l15b_1p8>;
++ vdd3-supply = <&vreg_l5b_3p1>;
++};
++
++&pon_pwrkey {
++ status = "okay";
++};
++
++&pon_resin {
++ linux,code = ;
++
++ status = "okay";
++};
++
++&qupv3_id_0 {
++ status = "okay";
++};
++
++&qupv3_id_1 {
++ status = "okay";
++};
++
++&sdhc_2 {
++ cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_LOW>;
++
++ pinctrl-0 = <&sdc2_default>, <&sdc2_card_det_n>;
++ pinctrl-1 = <&sdc2_sleep>, <&sdc2_card_det_n>;
++ pinctrl-names = "default", "sleep";
++
++ vmmc-supply = <&vreg_l9b_2p9>;
++ vqmmc-supply = <&vreg_l8b_1p8>;
++
++ bus-width = <4>;
++ no-sdio;
++ no-mmc;
++
++ status = "okay";
++};
++
++&sleep_clk {
++ clock-frequency = <32764>;
++};
++
++&tlmm {
++ gpio-reserved-ranges = <32 8>;
++
++ usb0_sbu_default: usb0-sbu-state {
++ oe-n-pins {
++ pins = "gpio140";
++ function = "gpio";
++ bias-disable;
++ drive-strength = <16>;
++ output-high;
++ };
++
++ sel-pins {
++ pins = "gpio141";
++ function = "gpio";
++ bias-disable;
++ drive-strength = <16>;
++ };
++ };
++};
++
++&uart7 {
++ status = "okay";
++};
++
++&ufs_mem_hc {
++ reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
++
++ vcc-supply = <&vreg_l17b_2p5>;
++ vcc-max-microamp = <1300000>;
++ vccq-supply = <&vreg_l1g_1p2>;
++ vccq-max-microamp = <1200000>;
++ vdd-hba-supply = <&vreg_l3g_1p2>;
++
++ status = "okay";
++};
++
++&ufs_mem_phy {
++ vdda-phy-supply = <&vreg_l1d_0p88>;
++ vdda-pll-supply = <&vreg_l3e_1p2>;
++
++ status = "okay";
++};
++
++&usb_1 {
++ status = "okay";
++};
++
++&usb_1_dwc3_hs {
++ remote-endpoint = <&pmic_glink_hs_in>;
++};
++
++&usb_1_hsphy {
++ phys = <&pm8550b_eusb2_repeater>;
++
++ vdd-supply = <&vreg_l1e_0p88>;
++ vdda12-supply = <&vreg_l3e_1p2>;
++
++ status = "okay";
++};
++
++&usb_dp_qmpphy {
++ vdda-phy-supply = <&vreg_l3e_1p2>;
++ vdda-pll-supply = <&vreg_l3f_0p88>;
++
++ status = "okay";
++};
++
++&usb_dp_qmpphy_out {
++ remote-endpoint = <&redriver_ss_in>;
++};
++
++&xo_board {
++ clock-frequency = <76800000>;
++};
diff --git a/projects/ROCKNIX/devices/SM8550/patches/linux/0214_arm64--dts--qcom--Add-AYANEO-Pocket-DS.patch b/projects/ROCKNIX/devices/SM8550/patches/linux/0214_arm64--dts--qcom--Add-AYANEO-Pocket-DS.patch
new file mode 100644
index 0000000000..0c805b86ec
--- /dev/null
+++ b/projects/ROCKNIX/devices/SM8550/patches/linux/0214_arm64--dts--qcom--Add-AYANEO-Pocket-DS.patch
@@ -0,0 +1,37 @@
+diff -rupbN linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts
+--- linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts 1970-01-01 00:00:00.000000000 +0000
++++ linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts 2025-08-29 01:15:03.063872627 +0000
+@@ -0,0 +1,33 @@
++// SPDX-License-Identifier: BSD-3-Clause
++/*
++ * Copyright (c) 2025, Teguh Sobirin.
++ * Copyright (c) 2025, ROCKNIX (https://github.com/ROCKNIX)
++ */
++
++/dts-v1/;
++
++#include "qcs8550-ayaneo-pocket-common.dtsi"
++
++/ {
++ model = "AYANEO Pocket DS";
++ qcom,board-id = <0x1000b 0x01>;
++ qcom,msm-id = <0x258 0x20000>, <0x259 0x20000>;
++ compatible = "ayaneo,ds", "qcom,qcs8550", "qcom,sm8550";
++};
++
++&i2c0 {
++ clock-frequency = <400000>;
++ status = "okay";
++
++};
++
++&display_panel {
++ compatible = "chipone,icna3512";
++
++ vci-supply = <&vreg_l13b_3p0>;
++ vddio-supply = <&vreg_l12b_1p8>;
++
++ reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
++
++ rotation = <270>;
++};