| author | 2026-09-18 21:45:43 +0700 | |
|---|---|---|
| committer | 2026-09-18 21:45:43 +0700 | |
| commit | 1f2b96ab1a13be88c57c78be08168c0bb0080088 (patch) | |
| tree | cb830075f52e08698d63f0e5c4e1359a063a62b8 /patches/usb | |
| parent | ee8c44555b0c3d61bf1998ddf3a5823db04ae68f (diff) | |
| download | kernel-surface-1f2b96ab1a13be88c57c78be08168c0bb0080088.tar.gz kernel-surface-1f2b96ab1a13be88c57c78be08168c0bb0080088.zip | |
fix: adapt patches for some 7.2.6 kernel updates to remoteproc and usbfedora-45-kernel-7.2.6-patchset-1
Diffstat (limited to 'patches/usb')
3 files changed, 110 insertions, 0 deletions
diff --git a/patches/usb/0003-7.3-arm64-dts-qcom-hamoa-add-interconnects-to-primary-USB3-controller.patch b/patches/usb/0003-7.3-arm64-dts-qcom-hamoa-add-interconnects-to-primary-USB3-controller.patch new file mode 100644 index 0000000..423b9aa --- /dev/null +++ b/patches/usb/0003-7.3-arm64-dts-qcom-hamoa-add-interconnects-to-primary-USB3-controller.patch @@ -0,0 +1,30 @@ +Add the interconnect paths to enable drivers to vote on them, ensuring +the necessary NoC bandwidth is available. + +This hasn't been done before, as prior to commit 05566ebcc0cd +("clk: qcom: gcc-x1e80100: Keep GCC USB QTB clock always ON"), this +would cause an inexplicable crash upon resume from system suspend. + +Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> +--- + arch/arm64/boot/dts/qcom/hamoa.dtsi | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/arch/arm64/boot/dts/qcom/hamoa.dtsi b/arch/arm64/boot/dts/qcom/hamoa.dtsi +index 051dee076416..233c7ab4c52c 100644 +--- a/arch/arm64/boot/dts/qcom/hamoa.dtsi ++++ b/arch/arm64/boot/dts/qcom/hamoa.dtsi +@@ -5318,6 +5318,13 @@ usb_1_ss0: usb@a600000 { + + resets = <&gcc GCC_USB30_PRIM_BCR>; + ++ interconnects = <&usb_south_anoc MASTER_USB3_0 QCOM_ICC_TAG_ALWAYS ++ &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>, ++ <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY ++ &config_noc SLAVE_USB3_0 QCOM_ICC_TAG_ACTIVE_ONLY>; ++ interconnect-names = "usb-ddr", ++ "apps-usb"; ++ + wakeup-source; + + iommus = <&apps_smmu 0x1420 0x0>; diff --git a/patches/usb/0015-phy-qcom-qmp-combo-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch b/patches/usb/0015-phy-qcom-qmp-combo-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch new file mode 100644 index 0000000..03ed8e7 --- /dev/null +++ b/patches/usb/0015-phy-qcom-qmp-combo-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch @@ -0,0 +1,40 @@ +There is a small window where the device can suspend after +pm_runtime_enable() and before pm_runtime_forbid(), causing an +unnecessary suspend/resume cycle while the PHY is not yet registered. + +Move pm_runtime_forbid() before pm_runtime_enable() to eliminate +this race. + +Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> +Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com> +Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> +Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com> +--- + drivers/phy/qualcomm/phy-qcom-qmp-combo.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c +index 93f1aa10d400..c3661872bb7a 100644 +--- a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c ++++ b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c +@@ -4932,15 +4932,15 @@ static int qmp_combo_probe(struct platform_device *pdev) + if (ret) + goto err_node_put; + ++ /* ++ * Enable runtime PM support, but forbid it by default. ++ * Users can allow it again via the power/control attribute in sysfs. ++ */ + pm_runtime_set_active(dev); ++ pm_runtime_forbid(dev); + ret = devm_pm_runtime_enable(dev); + if (ret) + goto err_node_put; +- /* +- * Prevent runtime pm from being ON by default. Users can enable +- * it using power/control in sysfs. +- */ +- pm_runtime_forbid(dev); + + ret = qmp_combo_register_clocks(qmp, usb_np, dp_np); + if (ret) diff --git a/patches/usb/0016-phy-qcom-qmp-usbc-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch b/patches/usb/0016-phy-qcom-qmp-usbc-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch new file mode 100644 index 0000000..65fba1f --- /dev/null +++ b/patches/usb/0016-phy-qcom-qmp-usbc-Prevent-unnecessary-PM-runtime-suspend-at-boot.patch @@ -0,0 +1,40 @@ +There is a small window where the device can suspend after +pm_runtime_enable() and before pm_runtime_forbid(), causing an +unnecessary suspend/resume cycle while the PHY is not yet registered. + +Move pm_runtime_forbid() before pm_runtime_enable() to eliminate +this race. + +Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com> +Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> +Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com> +Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> +--- + drivers/phy/qualcomm/phy-qcom-qmp-usbc.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c b/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c +index 14feb77789b3..90ea6ca64026 100644 +--- a/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c ++++ b/drivers/phy/qualcomm/phy-qcom-qmp-usbc.c +@@ -1959,15 +1959,15 @@ static int qmp_usbc_probe(struct platform_device *pdev) + if (ret) + goto err_node_put; + ++ /* ++ * Enable runtime PM support, but forbid it by default. ++ * Users can allow it again via the power/control attribute in sysfs. ++ */ + pm_runtime_set_active(dev); ++ pm_runtime_forbid(dev); + ret = devm_pm_runtime_enable(dev); + if (ret) + goto err_node_put; +- /* +- * Prevent runtime pm from being ON by default. Users can enable +- * it using power/control in sysfs. +- */ +- pm_runtime_forbid(dev); + + ret = qmp_usbc_register_clocks(qmp, np); + if (ret) |