[PATCH v2] arm64: dts: qcom: sm8150: describe download mode register

Robin Snyders via B4 Relay posted 1 patch 1 month, 2 weeks ago
arch/arm64/boot/dts/qcom/sm8150.dtsi | 6 ++++++
1 file changed, 6 insertions(+)
[PATCH v2] arm64: dts: qcom: sm8150: describe download mode register
Posted by Robin Snyders via B4 Relay 1 month, 2 weeks ago
From: Robin Snyders <robin@snyders.xyz>

The SM8150 SCM node does not describe the TCSR download-mode register.
Without it, the SCM driver falls back to a firmware call and the
mode cookie may remain set across a warm reset, causing the next boot to
enter the Qualcomm crashdump transport.

Describe the TCSR window and point qcom,dload-mode at offset 0x13000,
matching the layout used by SM8250 and other related Qualcomm platforms.

On a OnePlus 7T Pro this changes software reboot from a reproducible
05c6:900e transition to six consecutive successful boots.

Signed-off-by: Robin Snyders <robin@snyders.xyz>
---
Describe the SM8150 TCSR download-mode register so warm reboot clears the
download cookie through the SCM driver's MMIO path instead of falling back to
firmware. This was validated on a OnePlus 7T Pro with six consecutive software
reboots that returned to Linux rather than Qualcomm crashdump mode.
---
Changes in v2:
- Place the TCSR syscon node in unit-address order.
- Link to v1: https://lore.kernel.org/r/20260811-submit-sm8150-dload-v1-1-1a87eefe6c89@snyders.xyz
---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi
index 94a3b02cb289..46183687a5e3 100644
--- a/arch/arm64/boot/dts/qcom/sm8150.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi
@@ -610,6 +610,7 @@ cpu7_opp20: opp-2841600000 {
 	firmware {
 		scm: scm {
 			compatible = "qcom,scm-sm8150", "qcom,scm";
+			qcom,dload-mode = <&tcsr 0x13000>;
 			#reset-cells = <1>;
 		};
 	};
@@ -2181,6 +2182,11 @@ tcsr_regs_1: syscon@1f60000 {
 			reg = <0x0 0x01f60000 0x0 0x20000>;
 		};
 
+		tcsr: syscon@1fc0000 {
+			compatible = "qcom,sm8150-tcsr", "syscon";
+			reg = <0x0 0x01fc0000 0x0 0x30000>;
+		};
+
 		remoteproc_slpi: remoteproc@2400000 {
 			compatible = "qcom,sm8150-slpi-pas";
 			reg = <0x0 0x02400000 0x0 0x4040>;

---
base-commit: 3d08ff75a47a3e7e2ab45a3bcab6723b4d906422
change-id: 20260811-submit-sm8150-dload-38802bee77c9

Best regards,
-- 
Robin Snyders <robin@snyders.xyz>
Re: [PATCH v2] arm64: dts: qcom: sm8150: describe download mode register
Posted by Bjorn Andersson an hour ago
On Tue, 11 Aug 2026 23:39:12 +0200, Robin Snyders wrote:
> The SM8150 SCM node does not describe the TCSR download-mode register.
> Without it, the SCM driver falls back to a firmware call and the
> mode cookie may remain set across a warm reset, causing the next boot to
> enter the Qualcomm crashdump transport.
> 
> Describe the TCSR window and point qcom,dload-mode at offset 0x13000,
> matching the layout used by SM8250 and other related Qualcomm platforms.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: qcom: sm8150: describe download mode register
      commit: ab6a07a8de6f4df3eecb733d0620019734592f31

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>
Re: [PATCH v2] arm64: dts: qcom: sm8150: describe download mode register
Posted by Konrad Dybcio 1 month, 1 week ago
On 8/11/26 11:39 PM, Robin Snyders via B4 Relay wrote:
> From: Robin Snyders <robin@snyders.xyz>
> 
> The SM8150 SCM node does not describe the TCSR download-mode register.
> Without it, the SCM driver falls back to a firmware call and the
> mode cookie may remain set across a warm reset, causing the next boot to
> enter the Qualcomm crashdump transport.
> 
> Describe the TCSR window and point qcom,dload-mode at offset 0x13000,
> matching the layout used by SM8250 and other related Qualcomm platforms.
> 
> On a OnePlus 7T Pro this changes software reboot from a reproducible
> 05c6:900e transition to six consecutive successful boots.
> 
> Signed-off-by: Robin Snyders <robin@snyders.xyz>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad