* [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals
@ 2026-10-27 8:07 ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port ShiTou Hong
` (5 more replies)
0 siblings, 6 replies; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt; +Cc: linux-arm-msm, devicetree, ShiTou Hong
This series enables additional peripherals on the Qualcomm SM8250 HDK.
It wires up the SDHC2 controller, the LT9611UXC HDMI bridge, the FSA4480
USB-C protocol chip, the PCIe ports, QCA6390 Wi-Fi/BT support, and the
PM8150B LEDs in the SM8250 HDK device tree.
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
Changes in v2:
- Add a cover letter to the patch series.
- Reordered nodes alphabetically
- Drop `output-low` and `output-high` properties of the LT9611UXC pinctrl node.
- Move the `status` properties to the end of the nodes.
Link to v1: https://lore.kernel.org/all/20261023072832.2642647-6-dc_redstone@outlook.com/
---
ShiTou Hong (6):
arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port
arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge
arm64: dts: qcom: sm8250-hdk: Add FSA4480 USB-C protocol chip
arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports
arm64: dts: qcom: sm8250-hdk: Add support of QCA6390
arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 456 +++++++++++++++++++++++-
1 file changed, 440 insertions(+), 16 deletions(-)
--
2.47.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:31 ` Konrad Dybcio
2026-10-27 8:07 ` [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge ShiTou Hong
` (4 subsequent siblings)
5 siblings, 1 reply; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
The sm8250-hdk has an on-board SD/UFS card slot,
but the SDHCI port hasn't been enabled in the dts,
so we can't use it after booting.
Enable the dts node of SDHCI for the on-board SD card slot.
Add the pinctrl node of the SD card pins.
Co-developed-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 39 +++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index c1c673086..ad60be5d5 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -396,8 +396,47 @@ &qupv3_id_1 {
status = "okay";
};
+&sdhc_2 {
+ cd-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>;
+
+ vmmc-supply = <&vreg_l9c_2p96>;
+ vqmmc-supply = <&vreg_l6c_2p96>;
+
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&sdc2_default>, <&sd_ufs_cd_pins>;
+ pinctrl-1 = <&sdc2_sleep_state>, <&sd_ufs_cd_pins>;
+
+ status = "okay";
+};
+
&tlmm {
gpio-reserved-ranges = <28 4>, <40 4>;
+
+ sd_ufs_cd_pins: sd-ufs-cd-default-state {
+ pins = "gpio77";
+ function = "gpio";
+ bias-pull-up;
+ };
+
+ sdc2_default: sdc2-default-state {
+ cmd-pins {
+ pins = "sdc2_cmd";
+ bias-pull-up;
+ drive-strength = <10>;
+ };
+
+ data-pins {
+ pins = "sdc2_data";
+ bias-pull-up;
+ drive-strength = <10>;
+ };
+
+ clk-pins {
+ pins = "sdc2_clk";
+ bias-disable;
+ drive-strength = <16>;
+ };
+ };
};
&uart12 {
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:34 ` Konrad Dybcio
2026-10-27 8:07 ` [PATCH v2 3/6] arm64: dts: qcom: sm8250-hdk: Add FSA4480 USB-C protocol chip ShiTou Hong
` (3 subsequent siblings)
5 siblings, 1 reply; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
The sm8250-hdk has a video bridge chip LT9611UXC
converting MIPI DSI to HDMI, which hasn't been added
in the dts, so we have no HDMI signal.
Add the 1V2 supply node for the chip and the HDMI connector node.
Enable the i2c port of the chip, the display controller and DSI port.
Add the pinctrl of LT9611UXC's RST and IRQ pins.
Co-developed-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 104 ++++++++++++++++++++++++
1 file changed, 104 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index ad60be5d5..c031f91a0 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -44,6 +44,18 @@ vreg_s4a_1p8: pm8150-s4 {
vin-supply = <&vph_pwr>;
};
+ lt9611_1v2: lt9611-vdd12-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "LT9611_1V2";
+
+ regulator-always-on;
+ regulator-boot-on;
+
+ vin-supply = <&vph_pwr>;
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
vreg_s6c_0p88: smpc6-regulator {
compatible = "regulator-fixed";
regulator-name = "vreg_s6c_0p88";
@@ -63,6 +75,17 @@ key-vol-up {
gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
};
};
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_con: endpoint {
+ remote-endpoint = <<9611_out>;
+ };
+ };
+ };
};
&apps_rsc {
@@ -377,6 +400,70 @@ &gpu_zap_shader {
firmware-name = "qcom/sm8250/a650_zap.mbn";
};
+&gpi_dma0 {
+ status = "okay";
+};
+
+&i2c1 {
+ clock-frequency = <400000>;
+
+ status = "okay";
+
+ lt9611_codec: hdmi-bridge@2b {
+ compatible = "lontium,lt9611uxc";
+ reg = <0x2b>;
+
+ vdd-supply = <<9611_1v2>;
+ vcc-supply = <&vreg_bob>;
+
+ #sound-dai-cells = <1>;
+ interrupts-extended = <&tlmm 1 IRQ_TYPE_EDGE_FALLING>;
+ reset-gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <<9611_pins>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ lt9611_a: endpoint {
+ remote-endpoint = <&mdss_dsi0_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ lt9611_out: endpoint {
+ remote-endpoint = <&hdmi_con>;
+ };
+ };
+ };
+ };
+};
+
+&mdss {
+ status = "okay";
+};
+
+&mdss_dsi0 {
+ status = "okay";
+ vdda-supply = <&vreg_l9a_1p2>;
+};
+
+&mdss_dsi0_out {
+ remote-endpoint = <<9611_a>;
+ data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+ status = "okay";
+ vdds-supply = <&vreg_l5a_0p88>;
+};
+
&pon {
mode-bootloader = <0x2>;
mode-recovery = <0x1>;
@@ -392,6 +479,10 @@ &pon_resin {
linux,code = <KEY_VOLUMEDOWN>;
};
+&qupv3_id_0 {
+ status = "okay";
+};
+
&qupv3_id_1 {
status = "okay";
};
@@ -437,6 +528,19 @@ clk-pins {
drive-strength = <16>;
};
};
+
+ lt9611_pins: lt9611-default-state {
+ irq-pins {
+ pins = "gpio1";
+ function = "gpio";
+ bias-disable;
+ };
+
+ rst-pins {
+ pins = "gpio2";
+ function = "gpio";
+ };
+ };
};
&uart12 {
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v2 3/6] arm64: dts: qcom: sm8250-hdk: Add FSA4480 USB-C protocol chip
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports ShiTou Hong
` (2 subsequent siblings)
5 siblings, 0 replies; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
The sm8250-hdk has a USB-C port supporting OTG and DP altmode.
This is implemented with the FSA4480 chip,
which hasn't been added in the dts file.
Change the USB controller mode to OTG.
Enable the i2c controller for the chip and the dp controller.
Configure the PM8150b type-c module and vbus regulator.
Co-developed-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 142 +++++++++++++++++++++---
1 file changed, 127 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index c031f91a0..96b4d6c95 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -6,6 +6,7 @@
/dts-v1/;
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
+#include <dt-bindings/usb/pd.h>
#include "sm8250.dtsi"
#include "pm8150.dtsi"
#include "pm8150b.dtsi"
@@ -445,10 +446,42 @@ lt9611_out: endpoint {
};
};
+&i2c15 {
+ clock-frequency = <400000>;
+
+ status = "okay";
+
+ fsa4480@43 {
+ compatible = "fcs,fsa4480";
+ reg = <0x43>;
+
+ interrupts-extended = <&tlmm 63 IRQ_TYPE_LEVEL_LOW>;
+
+ vcc-supply = <&vreg_bob>;
+ mode-switch;
+ orientation-switch;
+
+ port {
+ fsa4480_sbu_mux: endpoint {
+ remote-endpoint = <&pm8150b_typec_sbu_out>;
+ };
+ };
+ };
+};
+
&mdss {
status = "okay";
};
+&mdss_dp {
+ status = "okay";
+};
+
+&mdss_dp_out {
+ data-lanes = <0 1>;
+ remote-endpoint = <&usb_1_qmpphy_dp_in>;
+};
+
&mdss_dsi0 {
status = "okay";
vdda-supply = <&vreg_l9a_1p2>;
@@ -464,6 +497,68 @@ &mdss_dsi0_phy {
vdds-supply = <&vreg_l5a_0p88>;
};
+&pm8150b_typec {
+ status = "okay";
+
+ vdd-pdphy-supply = <&vreg_l2a_3p1>;
+
+ connector {
+ compatible = "usb-c-connector";
+
+ power-role = "source";
+ data-role = "dual";
+ self-powered;
+
+ vbus-supply = <&pm8150b_vbus>;
+
+ source-pdos = <PDO_FIXED(5000, 3000,PDO_FIXED_DUAL_ROLE |
+ PDO_FIXED_USB_COMM |
+ PDO_FIXED_DATA_SWAP)>;
+
+ altmodes {
+ displayport {
+ svid = /bits/ 16 <0xff01>;
+ vdo = <0x00001c46>;
+ };
+ };
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ pm8150b_hs_in: endpoint {
+ remote-endpoint = <&usb_1_dwc3_hs_out>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ pm8150b_typec_mux_in: endpoint {
+ remote-endpoint = <&usb_1_qmpphy_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ pm8150b_typec_sbu_out: endpoint {
+ remote-endpoint = <&fsa4480_sbu_mux>;
+ };
+ };
+ };
+ };
+};
+
+&pm8150b_vbus {
+ regulator-min-microamp = <500000>;
+ regulator-max-microamp = <3000000>;
+ status = "okay";
+};
+
&pon {
mode-bootloader = <0x2>;
mode-recovery = <0x1>;
@@ -487,6 +582,10 @@ &qupv3_id_1 {
status = "okay";
};
+&qupv3_id_2 {
+ status = "okay";
+};
+
&sdhc_2 {
cd-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>;
@@ -565,14 +664,20 @@ &ufs_mem_phy {
vdda-pll-supply = <&vreg_l9a_1p2>;
};
-&usb_1_hsphy {
+&usb_1 {
status = "okay";
- vdda-pll-supply = <&vreg_l5a_0p88>;
- vdda33-supply = <&vreg_l2a_3p1>;
- vdda18-supply = <&vreg_l12a_1p8>;
};
-&usb_2_hsphy {
+&usb_1_dwc3 {
+ dr_mode = "otg";
+ usb-role-switch;
+};
+
+&usb_1_dwc3_hs_out {
+ remote-endpoint = <&pm8150b_hs_in>;
+};
+
+&usb_1_hsphy {
status = "okay";
vdda-pll-supply = <&vreg_l5a_0p88>;
vdda33-supply = <&vreg_l2a_3p1>;
@@ -585,28 +690,35 @@ &usb_1_qmpphy {
vdda-pll-supply = <&vreg_l9a_1p2>;
};
-&usb_2_qmpphy {
- status = "okay";
- vdda-phy-supply = <&vreg_l18a_0p92>;
- vdda-pll-supply = <&vreg_l9a_1p2>;
+&usb_1_qmpphy_dp_in {
+ remote-endpoint = <&mdss_dp_out>;
};
-&usb_1 {
- status = "okay";
+&usb_1_qmpphy_out {
+ remote-endpoint = <&pm8150b_typec_mux_in>;
};
&usb_2 {
status = "okay";
};
-&usb_1_dwc3 {
- dr_mode = "peripheral";
-};
-
&usb_2_dwc3 {
dr_mode = "host";
};
+&usb_2_hsphy {
+ status = "okay";
+ vdda-pll-supply = <&vreg_l5a_0p88>;
+ vdda33-supply = <&vreg_l2a_3p1>;
+ vdda18-supply = <&vreg_l12a_1p8>;
+};
+
+&usb_2_qmpphy {
+ status = "okay";
+ vdda-phy-supply = <&vreg_l18a_0p92>;
+ vdda-pll-supply = <&vreg_l9a_1p2>;
+};
+
&venus {
status = "okay";
};
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
` (2 preceding siblings ...)
2026-10-27 8:07 ` [PATCH v2 3/6] arm64: dts: qcom: sm8250-hdk: Add FSA4480 USB-C protocol chip ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:33 ` Konrad Dybcio
2026-10-27 8:07 ` [PATCH v2 5/6] arm64: dts: qcom: sm8250-hdk: Add support of QCA6390 ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs ShiTou Hong
5 siblings, 1 reply; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
The sm8250-hdk has 2 PCIe ports which are not enabled in the dts.
The pcie0 is for the on-board ath11k WiFi/BT module;
while the pcie2 is for the M.2 connector.
Add the 3V3 regulator node for pcie2.
Enable the 2 pcie controllers and phys.
Co-developed-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 31 +++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index 96b4d6c95..6a7852080 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -57,6 +57,13 @@ lt9611_1v2: lt9611-vdd12-regulator {
regulator-max-microvolt = <1200000>;
};
+ vreg_3p3: vreg-3p3-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_3p3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
vreg_s6c_0p88: smpc6-regulator {
compatible = "regulator-fixed";
regulator-name = "vreg_s6c_0p88";
@@ -497,6 +504,30 @@ &mdss_dsi0_phy {
vdds-supply = <&vreg_l5a_0p88>;
};
+&pcie0 {
+ status = "okay";
+};
+
+&pcie0_phy {
+ vdda-phy-supply = <&vreg_l5a_0p88>;
+ vdda-pll-supply = <&vreg_l9a_1p2>;
+
+ status = "okay";
+};
+
+&pcie2 {
+ vddpe-3v3-supply = <&vreg_3p3>;
+
+ status = "okay";
+};
+
+&pcie2_phy {
+ vdda-phy-supply = <&vreg_l5a_0p88>;
+ vdda-pll-supply = <&vreg_l9a_1p2>;
+
+ status = "okay";
+};
+
&pm8150b_typec {
status = "okay";
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v2 5/6] arm64: dts: qcom: sm8250-hdk: Add support of QCA6390
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
` (3 preceding siblings ...)
2026-10-27 8:07 ` [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs ShiTou Hong
5 siblings, 0 replies; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
The sm8250-hdk has a QCA6390 WiFi/BT module which hasn't
been added in the dts file.
Enable the UART port of BT, add the bluetooth node.
Add the QCA6390 PMU node.
Add the wifi node of pcieport0.
Add the missing regulator node of PM8009 which is used by QCA6390.
Add the pinctrl of QCA6390 enable pins.
Co-developed-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: KancyJoe <kancy2333@outlook.com>
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 121 +++++++++++++++++++++++-
1 file changed, 120 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index 6a7852080..b32f254bf 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -94,6 +94,67 @@ hdmi_con: endpoint {
};
};
};
+
+ qca6390-pmu {
+ compatible = "qcom,qca6390-pmu";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&qca6390_pins>;
+
+ vddaon-supply = <&vreg_s6a_0p95>;
+ vddpmu-supply = <&vreg_s2f_0p95>;
+ vddrfa0p95-supply = <&vreg_s2f_0p95>;
+ vddrfa1p3-supply = <&vreg_s8c_1p3>;
+ vddrfa1p9-supply = <&vreg_s5a_1p9>;
+ vddpcie1p3-supply = <&vreg_s8c_1p3>;
+ vddpcie1p9-supply = <&vreg_s5a_1p9>;
+ vddio-supply = <&vreg_s4a_1p8>;
+
+ wlan-enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
+ bt-enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
+
+ regulators {
+ vreg_pmu_rfa_cmn: ldo0 {
+ regulator-name = "vreg_pmu_rfa_cmn";
+ };
+
+ vreg_pmu_aon_0p59: ldo1 {
+ regulator-name = "vreg_pmu_aon_0p59";
+ };
+
+ vreg_pmu_wlcx_0p8: ldo2 {
+ regulator-name = "vreg_pmu_wlcx_0p8";
+ };
+
+ vreg_pmu_wlmx_0p85: ldo3 {
+ regulator-name = "vreg_pmu_wlmx_0p85";
+ };
+
+ vreg_pmu_btcmx_0p85: ldo4 {
+ regulator-name = "vreg_pmu_btcmx_0p85";
+ };
+
+ vreg_pmu_rfa_0p8: ldo5 {
+ regulator-name = "vreg_pmu_rfa_0p8";
+ };
+
+ vreg_pmu_rfa_1p2: ldo6 {
+ regulator-name = "vreg_pmu_rfa_1p2";
+ };
+
+ vreg_pmu_rfa_1p7: ldo7 {
+ regulator-name = "vreg_pmu_rfa_1p7";
+ };
+
+ vreg_pmu_pcie_0p9: ldo8 {
+ regulator-name = "vreg_pmu_pcie_0p9";
+ };
+
+ vreg_pmu_pcie_1p8: ldo9 {
+ regulator-name = "vreg_pmu_pcie_1p8";
+ };
+ };
+ };
};
&apps_rsc {
@@ -344,7 +405,6 @@ vreg_l11c_3p3: ldo11 {
regulators-2 {
compatible = "qcom,pm8009-rpmh-regulators";
- qcom,pmic-id = "f";
vdd-s1-supply = <&vph_pwr>;
vdd-s2-supply = <&vreg_bob>;
@@ -352,6 +412,15 @@ regulators-2 {
vdd-l5-l6-supply = <&vreg_bob>;
vdd-l7-supply = <&vreg_s4a_1p8>;
+ qcom,pmic-id = "f";
+
+ vreg_s2f_0p95: smps2 {
+ regulator-name = "vreg_s2f_0p95";
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <952000>;
+ regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
+ };
+
vreg_l1f_cam_dvdd1_1p1: ldo1 {
regulator-name = "vreg_l1f_cam_dvdd1_1p1";
regulator-min-microvolt = <1104000>;
@@ -515,6 +584,23 @@ &pcie0_phy {
status = "okay";
};
+&pcieport0 {
+ wifi@0 {
+ compatible = "pci17cb,1101";
+ reg = <0x10000 0x0 0x0 0x0 0x0>;
+
+ vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+ vddaon-supply = <&vreg_pmu_aon_0p59>;
+ vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
+ vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
+ vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+ vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+ vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
+ vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
+ vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
+ };
+};
+
&pcie2 {
vddpe-3v3-supply = <&vreg_3p3>;
@@ -671,6 +757,39 @@ rst-pins {
function = "gpio";
};
};
+
+ qca6390_pins: qca6390-default-state {
+ wlan-enable-pins {
+ pins = "gpio20";
+ function = "gpio";
+ drive-strength = <16>;
+ bias-pull-up;
+ output-low;
+ };
+
+ bt-enable-pins {
+ pins = "gpio21";
+ function = "gpio";
+ drive-strength = <16>;
+ bias-pull-up;
+ output-low;
+ };
+ };
+};
+
+&uart6 {
+ status = "okay";
+
+ bluetooth {
+ compatible = "qcom,qca6390-bt";
+
+ vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+ vddaon-supply = <&vreg_pmu_aon_0p59>;
+ vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
+ vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+ vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+ vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
+ };
};
&uart12 {
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
` (4 preceding siblings ...)
2026-10-27 8:07 ` [PATCH v2 5/6] arm64: dts: qcom: sm8250-hdk: Add support of QCA6390 ShiTou Hong
@ 2026-10-27 8:07 ` ShiTou Hong
2026-10-27 8:33 ` Konrad Dybcio
5 siblings, 1 reply; 13+ messages in thread
From: ShiTou Hong @ 2026-10-27 8:07 UTC (permalink / raw)
To: andersson, konradybcio, conor+dt; +Cc: linux-arm-msm, devicetree, ShiTou Hong
There are 2 LEDs controlled by PM8150b on sm8250-hdk
which are not added in the dts file.
The LED1 is for heartbeat indicator,
the LED2 is for wifi activity.
Enable the LED controller of PM8150b,
add the LED nodes with proper triggers into it.
Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
---
arch/arm64/boot/dts/qcom/sm8250-hdk.dts | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
index b32f254bf..11865abd1 100644
--- a/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8250-hdk.dts
@@ -7,6 +7,7 @@
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include <dt-bindings/usb/pd.h>
+#include <dt-bindings/leds/common.h>
#include "sm8250.dtsi"
#include "pm8150.dtsi"
#include "pm8150b.dtsi"
@@ -614,6 +615,24 @@ &pcie2_phy {
status = "okay";
};
+&pm8150b_lpg {
+ status = "okay";
+
+ led@1 {
+ reg = <1>;
+ function = LED_FUNCTION_HEARTBEAT;
+ color = <LED_COLOR_ID_GREEN>;
+ linux,default-trigger = "heartbeat";
+ };
+
+ led@2 {
+ reg = <2>;
+ function = LED_FUNCTION_WLAN;
+ color = <LED_COLOR_ID_RED>;
+ linux,default-trigger = "phy0tx";
+ };
+};
+
&pm8150b_typec {
status = "okay";
--
2.47.3
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port
2026-10-27 8:07 ` [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port ShiTou Hong
@ 2026-10-27 8:31 ` Konrad Dybcio
0 siblings, 0 replies; 13+ messages in thread
From: Konrad Dybcio @ 2026-10-27 8:31 UTC (permalink / raw)
To: ShiTou Hong, andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
On 10/27/26 9:07 AM, ShiTou Hong wrote:
> The sm8250-hdk has an on-board SD/UFS card slot,
> but the SDHCI port hasn't been enabled in the dts,
> so we can't use it after booting.
>
> Enable the dts node of SDHCI for the on-board SD card slot.
> Add the pinctrl node of the SD card pins.
>
> Co-developed-by: KancyJoe <kancy2333@outlook.com>
> Signed-off-by: KancyJoe <kancy2333@outlook.com>
> Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports
2026-10-27 8:07 ` [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports ShiTou Hong
@ 2026-10-27 8:33 ` Konrad Dybcio
0 siblings, 0 replies; 13+ messages in thread
From: Konrad Dybcio @ 2026-10-27 8:33 UTC (permalink / raw)
To: ShiTou Hong, andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
On 10/27/26 9:07 AM, ShiTou Hong wrote:
> The sm8250-hdk has 2 PCIe ports which are not enabled in the dts.
> The pcie0 is for the on-board ath11k WiFi/BT module;
> while the pcie2 is for the M.2 connector.
>
> Add the 3V3 regulator node for pcie2.
It's a dummy regulator so it does nothing - did you miss the
enable GPIO?
Also, nowadays there's
Documentation/devicetree/bindings/connector/pcie-m2-m-connector.yaml
Documentation/devicetree/bindings/connector/pcie-m2-e-connector.yaml
to let us not hardcode things like the wifi node
Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs
2026-10-27 8:07 ` [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs ShiTou Hong
@ 2026-10-27 8:33 ` Konrad Dybcio
0 siblings, 0 replies; 13+ messages in thread
From: Konrad Dybcio @ 2026-10-27 8:33 UTC (permalink / raw)
To: ShiTou Hong, andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong
On 10/27/26 9:07 AM, ShiTou Hong wrote:
> There are 2 LEDs controlled by PM8150b on sm8250-hdk
> which are not added in the dts file.
> The LED1 is for heartbeat indicator,
> the LED2 is for wifi activity.
>
> Enable the LED controller of PM8150b,
> add the LED nodes with proper triggers into it.
>
> Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge
2026-10-27 8:07 ` [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge ShiTou Hong
@ 2026-10-27 8:34 ` Konrad Dybcio
[not found] ` <CALkEBsyQCJwoDiR_dnqfVynEUGBi-qNenE+1oAFADPC-6OOBZQ@mail.gmail.com>
0 siblings, 1 reply; 13+ messages in thread
From: Konrad Dybcio @ 2026-10-27 8:34 UTC (permalink / raw)
To: ShiTou Hong, andersson, konradybcio, conor+dt
Cc: linux-arm-msm, devicetree, ShiTou Hong, KancyJoe
On 10/27/26 9:07 AM, ShiTou Hong wrote:
> The sm8250-hdk has a video bridge chip LT9611UXC
> converting MIPI DSI to HDMI, which hasn't been added
> in the dts, so we have no HDMI signal.
>
> Add the 1V2 supply node for the chip and the HDMI connector node.
> Enable the i2c port of the chip, the display controller and DSI port.
> Add the pinctrl of LT9611UXC's RST and IRQ pins.
>
> Co-developed-by: KancyJoe <kancy2333@outlook.com>
> Signed-off-by: KancyJoe <kancy2333@outlook.com>
> Signed-off-by: ShiTou Hong <dc_redstone@outlook.com>
> ---
[...]
> vreg_s6c_0p88: smpc6-regulator {
> compatible = "regulator-fixed";
> regulator-name = "vreg_s6c_0p88";
> @@ -63,6 +75,17 @@ key-vol-up {
> gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
> };
> };
> +
> + hdmi-connector {
This one is still very out of order
[...]
> +&mdss {
> + status = "okay";
> +};
> +
> +&mdss_dsi0 {
> + status = "okay";
> + vdda-supply = <&vreg_l9a_1p2>;
> +};
> +
> +&mdss_dsi0_out {
> + remote-endpoint = <<9611_a>;
> + data-lanes = <0 1 2 3>;
> +};
> +
> +&mdss_dsi0_phy {
> + status = "okay";
> + vdds-supply = <&vreg_l5a_0p88>;
> +};
+ the status properties
[...]
> +
> + lt9611_pins: lt9611-default-state {
> + irq-pins {
> + pins = "gpio1";
> + function = "gpio";
> + bias-disable;
> + };
> +
> + rst-pins {
> + pins = "gpio2";
> + function = "gpio";
> + };
> + };
These are best sorted by pin idx
https://docs.kernel.org/devicetree/bindings/dts-coding-style.html
Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge
[not found] ` <CALkEBsyQCJwoDiR_dnqfVynEUGBi-qNenE+1oAFADPC-6OOBZQ@mail.gmail.com>
@ 2026-10-27 10:52 ` Konrad Dybcio
2026-10-27 11:33 ` Stone Red
0 siblings, 1 reply; 13+ messages in thread
From: Konrad Dybcio @ 2026-10-27 10:52 UTC (permalink / raw)
To: Stone Red
Cc: andersson, konradybcio, conor+dt, linux-arm-msm, devicetree,
ShiTou Hong, KancyJoe
On 10/27/26 9:56 AM, Stone Red wrote:
> Btw, there are some misplaced `status` properties in the original dts file,
> am I supposed to fix them together?
I think it's good to keep the new style for new nodes. If you wish to
do it manually (or maybe ask an LLM), updating the file itself would
be a good improvement too
Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge
2026-10-27 10:52 ` Konrad Dybcio
@ 2026-10-27 11:33 ` Stone Red
0 siblings, 0 replies; 13+ messages in thread
From: Stone Red @ 2026-10-27 11:33 UTC (permalink / raw)
To: Konrad Dybcio
Cc: andersson, konradybcio, conor+dt, linux-arm-msm, devicetree,
ShiTou Hong, KancyJoe
Thanks! I may probably update it in a following patch.
Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> 于2026年10月27日周二 18:52写道:
>
> On 10/27/26 9:56 AM, Stone Red wrote:
> > Btw, there are some misplaced `status` properties in the original dts file,
> > am I supposed to fix them together?
>
> I think it's good to keep the new style for new nodes. If you wish to
> do it manually (or maybe ask an LLM), updating the file itself would
> be a good improvement too
>
> Konrad
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2026-10-27 11:33 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-27 8:07 [PATCH v2 0/6] arm64: dts: qcom: sm8250-hdk: Enable additional peripherals ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 1/6] arm64: dts: qcom: sm8250-hdk: Enable the sdhc_2 port ShiTou Hong
2026-10-27 8:31 ` Konrad Dybcio
2026-10-27 8:07 ` [PATCH v2 2/6] arm64: dts: qcom: sm8250-hdk: Add LT9611UXC HDMI bridge ShiTou Hong
2026-10-27 8:34 ` Konrad Dybcio
[not found] ` <CALkEBsyQCJwoDiR_dnqfVynEUGBi-qNenE+1oAFADPC-6OOBZQ@mail.gmail.com>
2026-10-27 10:52 ` Konrad Dybcio
2026-10-27 11:33 ` Stone Red
2026-10-27 8:07 ` [PATCH v2 3/6] arm64: dts: qcom: sm8250-hdk: Add FSA4480 USB-C protocol chip ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 4/6] arm64: dts: qcom: sm8250-hdk: Enable the PCIe ports ShiTou Hong
2026-10-27 8:33 ` Konrad Dybcio
2026-10-27 8:07 ` [PATCH v2 5/6] arm64: dts: qcom: sm8250-hdk: Add support of QCA6390 ShiTou Hong
2026-10-27 8:07 ` [PATCH v2 6/6] arm64: dts: qcom: sm8250-hdk: Add PM8150b LEDs ShiTou Hong
2026-10-27 8:33 ` Konrad Dybcio
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox