[PATCH v2 2/2] arm64: dts: qcom: Add base HAMOA-IOT-COME board
From: Yuanjie Yang
Date: Mon Jul 27 2026 - 03:11:21 EST
Add the initial device tree for the HAMOA-IOT-COME platform based on
the Qualcomm X1E80100 SoC.
The platform consists of a system-on-module (SoM) mounted on a carrier
board. The SoM integrates the core system functionality through a SiP
containing the X1E80100 SoC and its supporting components.
Hierarchy:
Carrier Board
-> SoM
-> SiP
-> SoC
The COME SiP hardware is effectively the same as the SoM used on the
Qualcomm HAMOA EVK, while the carrier board provides the platform-specific
peripherals and connectivity.
Compared to the HAMOA EVK, PCIe controllers 3, 5 and 6 are routed to
expansion slots, while PCIe controller 4 is connected to an ASM1164
SATA controller. The platform does not provide a USB Type-C connector.
The eUSB repeater (TUSB2E111YCGR) is configured through hardware strapping
pins and therefore requires no software control.
The initial device tree includes support for:
- UART
- Regulators
- USB
- PCIe
- Pinctrl
- ADSP, CDSP
- UFS
- Graphics
- Video
Regulators, pinctrl, graphics, video, ADSP and CDSP support are
inherited from the common hamoa-iot-som.dtsi description.
Co-developed-by: Gaurav Kohli <gaurav.kohli@xxxxxxxxxxxxxxxx>
Signed-off-by: Gaurav Kohli <gaurav.kohli@xxxxxxxxxxxxxxxx>
Co-developed-by: Ziyue zhang <ziyue.zhang@xxxxxxxxxxxxxxxx>
Signed-off-by: Ziyue zhang <ziyue.zhang@xxxxxxxxxxxxxxxx>
Signed-off-by: Yuanjie Yang <yuanjie.yang@xxxxxxxxxxxxxxxx>
---
arch/arm64/boot/dts/qcom/Makefile | 1 +
.../boot/dts/qcom/hamoa-iot-come-som.dtsi | 52 ++++++++
arch/arm64/boot/dts/qcom/hamoa-iot-come.dts | 116 ++++++++++++++++++
3 files changed, 169 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/hamoa-iot-come-som.dtsi
create mode 100644 arch/arm64/boot/dts/qcom/hamoa-iot-come.dts
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index e05414290d8e..09847b4ff337 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_QCOM) += apq8096-ifc6640.dtb
dtb-$(CONFIG_ARCH_QCOM) += eliza-cqs-evk.dtb
dtb-$(CONFIG_ARCH_QCOM) += eliza-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += glymur-crd.dtb
+dtb-$(CONFIG_ARCH_QCOM) += hamoa-iot-come.dtb
dtb-$(CONFIG_ARCH_QCOM) += hamoa-iot-evk.dtb
hamoa-iot-evk-el2-dtbs := hamoa-iot-evk.dtb x1-el2.dtbo
diff --git a/arch/arm64/boot/dts/qcom/hamoa-iot-come-som.dtsi b/arch/arm64/boot/dts/qcom/hamoa-iot-come-som.dtsi
new file mode 100644
index 000000000000..d8d9765be64b
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/hamoa-iot-come-som.dtsi
@@ -0,0 +1,52 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+#include "hamoa-iot-som.dtsi"
+
+/ {
+ vph_pwr: regulator-vph-pwr {
+ compatible = "regulator-fixed";
+
+ regulator-name = "vph_pwr";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+
+ regulator-always-on;
+ regulator-boot-on;
+ };
+};
+
+&ufs_mem_phy {
+ vdda-phy-supply = <&vreg_l3i_0p8>;
+ vdda-pll-supply = <&vreg_l3e_1p2>;
+
+ status = "okay";
+};
+
+&ufs_mem_hc {
+ reset-gpios = <&tlmm 238 GPIO_ACTIVE_LOW>;
+
+ vcc-supply = <&vreg_l17b_2p5>;
+ vcc-max-microamp = <1300000>;
+ vccq-supply = <&vreg_l2i_1p2>;
+ vccq-max-microamp = <1200000>;
+
+ status = "okay";
+};
+
+&usb_1_ss0 {
+ /delete-property/ usb-role-switch;
+ dr_mode = "peripheral";
+};
+
+&usb_1_ss1 {
+ /delete-property/ usb-role-switch;
+ dr_mode = "host";
+};
+
+&usb_1_ss2 {
+ /delete-property/ usb-role-switch;
+ dr_mode = "host";
+};
diff --git a/arch/arm64/boot/dts/qcom/hamoa-iot-come.dts b/arch/arm64/boot/dts/qcom/hamoa-iot-come.dts
new file mode 100644
index 000000000000..735a2b4efd97
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/hamoa-iot-come.dts
@@ -0,0 +1,116 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+/dts-v1/;
+
+#include "hamoa-iot-come-som.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Hamoa IoT ComE";
+ compatible = "qcom,hamoa-iot-come", "qcom,hamoa-iot-come-som",
+ "qcom,hamoa-iot-som", "qcom,x1e80100";
+ chassis-type = "embedded";
+
+ aliases {
+ serial0 = &uart21;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+};
+
+&pcie3_port0 {
+ reset-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
+ wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
+};
+
+&pcie4_port0 {
+ reset-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>;
+ wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
+};
+
+&pcie5_port0 {
+ reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>;
+ wake-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
+};
+
+&pcie6a_port0 {
+ reset-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
+ wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
+};
+
+&thermal_zones {
+ gpuss-0-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-1-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-2-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-3-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-4-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-5-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-6-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+
+ gpuss-7-thermal {
+ trips {
+ trip-point0 {
+ temperature = <105000>;
+ };
+ };
+ };
+};
+
+&uart21 {
+ compatible = "qcom,geni-debug-uart";
+
+ status = "okay";
+};
--
2.43.0