lkml.org 
[lkml]   [2023]   [May]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH V2 11/13] arm64: dtsi: qcom: ipq5018: enable nodes required for multipd
    Date
    Enable nodes required for multipd remoteproc bring up

    Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com>
    ---
    Changes in V2:
    - Corrected syntax like alignmnet and kept nodes in sorted order.
    - Covered entire TCSR region.
    - Added 'firmware-name' property.

    arch/arm64/boot/dts/qcom/ipq5018.dtsi | 140 ++++++++++++++++++++++++++
    1 file changed, 140 insertions(+)

    diff --git a/arch/arm64/boot/dts/qcom/ipq5018.dtsi b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
    index 9f13d2dcdfd5..3772d54d89e4 100644
    --- a/arch/arm64/boot/dts/qcom/ipq5018.dtsi
    +++ b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
    @@ -85,6 +85,18 @@
    reg = <0x0 0x4ac00000 0x0 0x200000>;
    no-map;
    };
    +
    + q6_region: wcnss@4b000000 {
    + reg = <0x0 0x4b000000 0x0 0x1700000>;
    + no-map;
    + };
    +
    + smem@4ab00000 {
    + compatible = "qcom,smem";
    + reg = <0x0 0x4ab00000 0x0 0x100000>;
    + hwlocks = <&tcsr_mutex 0>;
    + no-map;
    + };
    };

    soc: soc@0 {
    @@ -128,6 +140,12 @@
    #power-domain-cells = <1>;
    };

    + tcsr_mutex: hwlock@1905000 {
    + compatible = "qcom,tcsr-mutex";
    + reg = <0x01905000 0x20000>;
    + #hwlock-cells = <1>;
    + };
    +
    sdhc_1: mmc@7804000 {
    compatible = "qcom,ipq5018-sdhci", "qcom,sdhci-msm-v5";
    reg = <0x7804000 0x1000>;
    @@ -181,6 +199,14 @@
    };
    };

    + apcs_glb: mailbox@b111000 {
    + compatible = "qcom,ipq5018-apcs-apps-global",
    + "qcom,ipq6018-apcs-apps-global";
    + reg = <0x0b111000 0x1000>;
    + #clock-cells = <1>;
    + #mbox-cells = <1>;
    + };
    +
    timer@b120000 {
    compatible = "arm,armv7-timer-mem";
    reg = <0x0b120000 0x1000>;
    @@ -238,6 +264,96 @@
    status = "disabled";
    };
    };
    +
    + q6v5_wcss: remoteproc@cd00000 {
    + compatible = "qcom,ipq5018-q6-mpd";
    + reg = <0x0cd00000 0x4040>;
    + firmware-name = "IPQ5018/q6_fw.mdt",
    + "IPQ5018/m3_fw.mdt",
    + "qcn6122/m3_fw.mdt";
    + interrupts-extended = <&intc GIC_SPI 291 IRQ_TYPE_EDGE_RISING>,
    + <&wcss_smp2p_in 0 0>,
    + <&wcss_smp2p_in 1 0>,
    + <&wcss_smp2p_in 2 0>,
    + <&wcss_smp2p_in 3 0>;
    + interrupt-names = "wdog",
    + "fatal",
    + "ready",
    + "handover",
    + "stop-ack";
    +
    + qcom,smem-states = <&wcss_smp2p_out 0>,
    + <&wcss_smp2p_out 1>;
    + qcom,smem-state-names = "shutdown",
    + "stop";
    + memory-region = <&q6_region>;
    +
    + glink-edge {
    + interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
    + label = "rtr";
    + qcom,remote-pid = <1>;
    + mboxes = <&apcs_glb 8>;
    + };
    +
    + pd-1 {
    + compatible = "qcom,ipq5018-wcss-ahb-mpd";
    + firmware-name = "IPQ5018/q6_fw.mdt";
    + interrupts-extended = <&wcss_smp2p_in 8 0>,
    + <&wcss_smp2p_in 9 0>,
    + <&wcss_smp2p_in 12 0>,
    + <&wcss_smp2p_in 11 0>;
    + interrupt-names = "fatal",
    + "ready",
    + "spawn-ack",
    + "stop-ack";
    + qcom,smem-states = <&wcss_smp2p_out 8>,
    + <&wcss_smp2p_out 9>,
    + <&wcss_smp2p_out 10>;
    + qcom,smem-state-names = "shutdown",
    + "stop",
    + "spawn";
    + };
    +
    + pd-2 {
    + compatible = "qcom,ipq5018-wcss-pcie-mpd";
    + interrupts-extended = <&wcss_smp2p_in 16 0>,
    + <&wcss_smp2p_in 17 0>,
    + <&wcss_smp2p_in 20 0>,
    + <&wcss_smp2p_in 19 0>;
    + interrupt-names = "fatal",
    + "ready",
    + "spawn-ack",
    + "stop-ack";
    +
    + qcom,smem-states = <&wcss_smp2p_out 16>,
    + <&wcss_smp2p_out 17>,
    + <&wcss_smp2p_out 18>;
    + qcom,smem-state-names = "shutdown",
    + "stop",
    + "spawn";
    + status = "disabled";
    + };
    +
    + pd-3 {
    + compatible = "qcom,ipq5018-wcss-pcie-mpd";
    + interrupts-extended = <&wcss_smp2p_in 24 0>,
    + <&wcss_smp2p_in 25 0>,
    + <&wcss_smp2p_in 28 0>,
    + <&wcss_smp2p_in 27 0>;
    + interrupt-names = "fatal",
    + "ready",
    + "spawn-ack",
    + "stop-ack";
    +
    + qcom,smem-states = <&wcss_smp2p_out 24>,
    + <&wcss_smp2p_out 25>,
    + <&wcss_smp2p_out 26>;
    + qcom,smem-state-names = "shutdown",
    + "stop",
    + "spawn";
    + status = "disabled";
    + };
    + };
    };

    timer {
    @@ -247,4 +363,28 @@
    <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
    <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
    };
    +
    + wcss: wcss-smp2p {
    + compatible = "qcom,smp2p";
    + qcom,smem = <435>, <428>;
    +
    + interrupt-parent = <&intc>;
    + interrupts = <GIC_SPI 177 IRQ_TYPE_EDGE_RISING>;
    +
    + mboxes = <&apcs_glb 9>;
    +
    + qcom,local-pid = <0>;
    + qcom,remote-pid = <1>;
    +
    + wcss_smp2p_out: master-kernel {
    + qcom,entry-name = "master-kernel";
    + #qcom,smem-state-cells = <1>;
    + };
    +
    + wcss_smp2p_in: slave-kernel {
    + qcom,entry-name = "slave-kernel";
    + interrupt-controller;
    + #interrupt-cells = <2>;
    + };
    + };
    };
    --
    2.17.1
    \
     
     \ /
      Last update: 2023-05-22 00:32    [W:2.718 / U:0.220 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site