[PATCH 10/10] ARM: dts: qcom: apq8074-dragonboard: enable the HSIC host

From: Dmitry Baryshkov

Date: Mon Aug 10 2026 - 12:38:08 EST


The dragonboard carries an SMSC USB4604 HSIC hub, but with the HSIC
controller undescribed the whole HSIC-attached part of the board is
dead.

Enable the HSIC controller. The USB4604 hub isn't controllable through
the I2C because of the board design issues, so reference it as a simple
USB device, describing the reset line.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
---
.../arm/boot/dts/qcom/qcom-apq8074-dragonboard.dts | 27 ++++++++++++++++++++++
1 file changed, 27 insertions(+)

diff --git a/arch/arm/boot/dts/qcom/qcom-apq8074-dragonboard.dts b/arch/arm/boot/dts/qcom/qcom-apq8074-dragonboard.dts
index 083fd8fa0aea..02183b37ddbe 100644
--- a/arch/arm/boot/dts/qcom/qcom-apq8074-dragonboard.dts
+++ b/arch/arm/boot/dts/qcom/qcom-apq8074-dragonboard.dts
@@ -158,6 +158,14 @@ &mdss {
};

&pm8941_gpios {
+ hsic_hub_rst_default: hsic-hub-rst-state {
+ pins = "gpio8";
+ function = "normal";
+ drive-push-pull;
+ qcom,drive-strength = <PMIC_GPIO_STRENGTH_MED>;
+ power-source = <PM8941_GPIO_VPH>;
+ };
+
msm_keys_default: pm8941-gpio-keys-state {
pins = "gpio5", "gpio23";
function = "normal";
@@ -487,6 +495,25 @@ &usb_hs2_phy {
qcom,init-seq = /bits/ 8 <0x1 0x63>;
};

+&usb_hsic {
+ pinctrl-0 = <&hsic_hub_rst_default>;
+ pinctrl-names = "default";
+
+ status = "okay";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ /* SMSC USB4604 hub, standalone mode (SMBus config not usable) */
+ hub@1 {
+ compatible = "usb424,4604";
+ reg = <1>;
+ clocks = <&rpmcc RPM_SMD_CXO_D1>;
+ reset-gpios = <&pm8941_gpios 8 GPIO_ACTIVE_LOW>;
+ vdd-supply = <&pm8941_s3>;
+ };
+};
+
&usb3 {
dr_mode = "host";


--
2.47.3