2023-05-26 11:09:38

by Vignesh Viswanathan

[permalink] [raw]
Subject: [PATCH 0/3] Enable download mode support for IPQ SOCs

Enable download mode support for IPQ8074 and IPQ6018. Also add reserved
memory regions for uboot and SBL avoid losing the RAM contents which will
be used in postmorterm analysis.

Vignesh Viswanathan (3):
dt-bindings: mfd: qcom,tcsr: add the compatible for IPQ8074
arm64: dts: qcom: enable the download mode support
arm64: dts: qcom: add few more reserved memory region

.../devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 17 +++++++++++++---
arch/arm64/boot/dts/qcom/ipq8074.dtsi | 20 +++++++++++++++++--
3 files changed, 33 insertions(+), 5 deletions(-)

--
2.40.1



2023-05-26 11:09:46

by Vignesh Viswanathan

[permalink] [raw]
Subject: [PATCH 1/3] dt-bindings: mfd: qcom,tcsr: add the compatible for IPQ8074

Document the qcom,tcsr-ipq8074 compatible.

Signed-off-by: Vignesh Viswanathan <[email protected]>
---
Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
index fe790af7b4fb..5ad9d5deaaf8 100644
--- a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
+++ b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
@@ -34,6 +34,7 @@ properties:
- qcom,tcsr-ipq5332
- qcom,tcsr-ipq6018
- qcom,tcsr-ipq8064
+ - qcom,tcsr-ipq8074
- qcom,tcsr-ipq9574
- qcom,tcsr-mdm9615
- qcom,tcsr-msm8226
--
2.40.1


2023-05-26 11:10:30

by Vignesh Viswanathan

[permalink] [raw]
Subject: [PATCH 3/3] arm64: dts: qcom: add few more reserved memory region

In IPQ SoCs, bootloader will collect the system RAM contents upon crash
for the post morterm analysis. If we don't reserve the memory region used
by bootloader, obviously linux will consume it and upon next boot on
crash, bootloader will be loaded in the same region, which will lead to
loose some of the data, sometimes we may miss out critical information.
So lets reserve the region used by the bootloader.

Similarly SBL copies some data into the reserved region and it will be
used in the crash scenario. So reserve 1MB for SBL as well.

While at it, drop the size padding in the reserved memory region,
wherever applicable.

Signed-off-by: Vignesh Viswanathan <[email protected]>
---
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 16 +++++++++++++---
arch/arm64/boot/dts/qcom/ipq8074.dtsi | 14 ++++++++++++--
2 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/ipq6018.dtsi b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
index 2d77a8336111..fc64a5efbe2c 100644
--- a/arch/arm64/boot/dts/qcom/ipq6018.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
@@ -156,18 +156,28 @@ rpm_msg_ram: memory@60000 {
no-map;
};

+ bootloader@4a100000 {
+ reg = <0x0 0x4a100000 0x0 0x400000>;
+ no-map;
+ };
+
+ sbl@4a500000 {
+ reg = <0x0 0x4a500000 0x0 0x100000>;
+ no-map;
+ };
+
tz: memory@4a600000 {
- reg = <0x0 0x4a600000 0x0 0x00400000>;
+ reg = <0x0 0x4a600000 0x0 0x400000>;
no-map;
};

smem_region: memory@4aa00000 {
- reg = <0x0 0x4aa00000 0x0 0x00100000>;
+ reg = <0x0 0x4aa00000 0x0 0x100000>;
no-map;
};

q6_region: memory@4ab00000 {
- reg = <0x0 0x4ab00000 0x0 0x05500000>;
+ reg = <0x0 0x4ab00000 0x0 0x5500000>;
no-map;
};
};
diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qcom/ipq8074.dtsi
index 00e559de00fb..0793b691a095 100644
--- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi
@@ -86,17 +86,27 @@ reserved-memory {
#size-cells = <2>;
ranges;

+ bootloader@4a600000 {
+ reg = <0x0 0x4a600000 0x0 0x400000>;
+ no-map;
+ };
+
+ sbl@4aa00000 {
+ reg = <0x0 0x4aa00000 0x0 0x100000>;
+ no-map;
+ };
+
smem@4ab00000 {
compatible = "qcom,smem";
- reg = <0x0 0x4ab00000 0x0 0x00100000>;
+ reg = <0x0 0x4ab00000 0x0 0x100000>;
no-map;

hwlocks = <&tcsr_mutex 0>;
};

memory@4ac00000 {
+ reg = <0x0 0x4ac00000 0x0 0x400000>;
no-map;
- reg = <0x0 0x4ac00000 0x0 0x00400000>;
};
};

--
2.40.1


2023-05-26 11:30:33

by Vignesh Viswanathan

[permalink] [raw]
Subject: [PATCH 2/3] arm64: dts: qcom: enable the download mode support

Like any other Qualcomm SoCs, IPQ8074 and IPQ6018 also supports the
download mode to collect the RAM dumps if system crashes, to perform
the post mortem analysis. Add support for the same.

Signed-off-by: Vignesh Viswanathan <[email protected]>
---
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 1 +
arch/arm64/boot/dts/qcom/ipq8074.dtsi | 6 ++++++
2 files changed, 7 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/ipq6018.dtsi b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
index f531797f2619..2d77a8336111 100644
--- a/arch/arm64/boot/dts/qcom/ipq6018.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
@@ -91,6 +91,7 @@ L2_0: l2-cache {
firmware {
scm {
compatible = "qcom,scm-ipq6018", "qcom,scm";
+ qcom,dload-mode = <&tcsr 0x6100>;
};
};

diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qcom/ipq8074.dtsi
index 5b2c1986c8f4..00e559de00fb 100644
--- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi
@@ -103,6 +103,7 @@ memory@4ac00000 {
firmware {
scm {
compatible = "qcom,scm-ipq8074", "qcom,scm";
+ qcom,dload-mode = <&tcsr 0x6100>;
};
};

@@ -382,6 +383,11 @@ tcsr_mutex: hwlock@1905000 {
#hwlock-cells = <1>;
};

+ tcsr: syscon@1937000 {
+ compatible = "qcom,tcsr-ipq8074", "syscon";
+ reg = <0x01937000 0x21000>;
+ };
+
spmi_bus: spmi@200f000 {
compatible = "qcom,spmi-pmic-arb";
reg = <0x0200f000 0x001000>,
--
2.40.1


2023-05-26 19:07:31

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,tcsr: add the compatible for IPQ8074

On Fri, May 26, 2023 at 04:36:51PM +0530, Vignesh Viswanathan wrote:
> Document the qcom,tcsr-ipq8074 compatible.
>
> Signed-off-by: Vignesh Viswanathan <[email protected]>

Acked-by: Conor Dooley <[email protected]>

Thanks,
Conor.


Attachments:
(No filename) (260.00 B)
signature.asc (235.00 B)
Download all attachments

2023-05-27 01:06:02

by Bjorn Andersson

[permalink] [raw]
Subject: Re: (subset) [PATCH 0/3] Enable download mode support for IPQ SOCs

On Fri, 26 May 2023 16:36:50 +0530, Vignesh Viswanathan wrote:
> Enable download mode support for IPQ8074 and IPQ6018. Also add reserved
> memory regions for uboot and SBL avoid losing the RAM contents which will
> be used in postmorterm analysis.
>
> Vignesh Viswanathan (3):
> dt-bindings: mfd: qcom,tcsr: add the compatible for IPQ8074
> arm64: dts: qcom: enable the download mode support
> arm64: dts: qcom: add few more reserved memory region
>
> [...]

Applied, thanks!

[2/3] arm64: dts: qcom: enable the download mode support
commit: 9b2406aaba7841863ac041225316c1ec1c86ea36
[3/3] arm64: dts: qcom: add few more reserved memory region
commit: 0cd4e90cb2dec02ff859f5c98f744f43a23aea65

Best regards,
--
Bjorn Andersson <[email protected]>

2023-06-08 16:28:54

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,tcsr: add the compatible for IPQ8074

On Fri, 26 May 2023, Vignesh Viswanathan wrote:

> Document the qcom,tcsr-ipq8074 compatible.
>
> Signed-off-by: Vignesh Viswanathan <[email protected]>
> ---
> Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
> 1 file changed, 1 insertion(+)

Applied, thanks

--
Lee Jones [李琼斯]