dt-bindings: soc: qcom: Add remote-pid binding for GLINK SMEM
Subsystems (4)
PATCH v3 1/8 dt-bindings: soc: qcom: Add remote-pid binding for GLINK SMEM
Add missing qcom,remote-pid dt binding required for GLINK SMEM which specifies the remote endpoint of the GLINK edge.
SMEM")
---
v3:
* Fixed typo
Documentation/devicetree/bindings/soc/qcom/qcom,glink.txt | 5 +++++ 1 file changed, 5 insertions(+)
Documentation/devicetree/bindings/soc/qcom/qcom,glink.txt +5 -0
@@ -21,6 +21,11 @@ edge. Definition: should specify the IRQ used by the remote processor to signal this processor about communication related events +- qcom,remote-pid: + Usage: required for glink-smem + Value type: <u32> + Definition: specifies the identifier of the remote endpoint of this edge + - qcom,rpm-msg-ram: Usage: required for glink-rpm Value type: <prop-encoded-array>
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 2/8 dt-bindings: remoteproc: qcom: Add missing clocks for SDM845
Add missing clock bindings for Q6V5 MSS on SDM845 SoCs.
binding for SDM845")
---
v3:
* Fixup dt-binding documentation as suggested by Doug
.../devicetree/bindings/remoteproc/qcom,q6v5.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-)
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +11 -3
@@ -39,13 +39,21 @@ on the Qualcomm Hexagon core. - clocks: Usage: required Value type: <phandle> - Definition: reference to the iface, bus and mem clocks to be held on - behalf of the booting of the Hexagon core + Definition: reference to the clocks that match clock-names - clock-names: Usage: required Value type: <stringlist> - Definition: must be "iface", "bus", "mem" + Definition: The clocks needed depend on the compatible string: + qcom,ipq8074-wcss-pil: + no clock names required + qcom,q6v5-pil: + qcom,msm8916-mss-pil: + qcom,msm8974-mss-pil: + must be "iface", "bus", "mem", "xo" + qcom,sdm845-mss-pil: + must be "xo", "prng", "iface", "bus", "mem", "gpll0_mss", + "snoc_axi", "mnoc_axi" - resets: Usage: required
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 3/8 dt-bindings: remoteproc: qcom: Add missing clocks for MSM8996
In reply to Sibi SankarAdd missing clock bindings for Q6V5 MSS on MSM8996 SoCs.
on msm8996")
---
v3:
* Fixup dt-binding documentation as suggested by Doug
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt | 3 +++ 1 file changed, 3 insertions(+)
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +3 -0
@@ -51,6 +51,9 @@ on the Qualcomm Hexagon core. qcom,msm8916-mss-pil: qcom,msm8974-mss-pil: must be "iface", "bus", "mem", "xo" + qcom,msm8996-mss-pil: + must be "xo", "pnoc", "qdss", "iface", "bus", "mem", + "gpll0_mss_clk", "snoc_axi", "mnoc_axi" qcom,sdm845-mss-pil: must be "xo", "prng", "iface", "bus", "mem", "gpll0_mss", "snoc_axi", "mnoc_axi"
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 4/8 remoteproc: qcom: q6v5-mss: Add missing clocks for MSM8996
In reply to Sibi SankarProxy vote for QDSS clock and remove vote on handover interrupt to provide MSS PBL with access to STM hardware registers during boot. Add "snoc_axi" and "mnoc_axi" to the active clock list.
on msm8996")
--- drivers/remoteproc/qcom_q6v5_mss.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/remoteproc/qcom_q6v5_mss.c +3 -0
@@ -1398,6 +1398,7 @@ static const struct rproc_hexagon_res msm8996_mss = { .proxy_clk_names = (char*[]){"xo" ,"pnoc" , +"qdss" ,NULL }, .active_clk_names = (char *[]){
@@ -1405,6 +1406,8 @@ static const struct rproc_hexagon_res msm8996_mss = {"bus" ,"mem" ,"gpll0_mss_clk" , +"snoc_axi" , +"mnoc_axi" ,NULL }, .need_mem_protection = true,
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 5/8 dt-bindings: remoteproc: qcom: Fixup regulator dependencies
In reply to Sibi SankarFixup regulator supply dependencies for Q6V5 MSS on MSM996 SoCs.
on msm8996")
---
v3:
* Fixup dt-binding documentation as suggested by Doug
.../bindings/remoteproc/qcom,q6v5.txt | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+)
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +21 -0
@@ -76,6 +76,19 @@ on the Qualcomm Hexagon core. must be "mss_restart", "pdc_reset" for the modem sub-system on SDM845 SoCs +For the compatible strings below the following supplies are required: + "qcom,q6v5-pil" + "qcom,msm8916-mss-pil", +- cx-supply: +- mx-supply: +- pll-supply: + Usage: required + Value type: <phandle> + Definition: reference to the regulators to be held on behalf of the + booting of the Hexagon core + +For the compatible string below the following supplies are required: + "qcom,msm8974-mss-pil" - cx-supply: - mss-supply: - mx-supply:
@@ -85,6 +98,14 @@ on the Qualcomm Hexagon core. Definition: reference to the regulators to be held on behalf of the booting of the Hexagon core +For the compatible string below the following supplies are required: + "qcom,msm8996-mss-pil" +- pll-supply: + Usage: required + Value type: <phandle> + Definition: reference to the regulators to be held on behalf of the + booting of the Hexagon core + - qcom,smem-states: Usage: required Value type: <phandle>
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 6/8 remoteproc: qcom: q6v5-mss: Add missing regulator for MSM8996
In reply to Sibi SankarAdd proxy vote for pll supply on MSM8996 SoC.
on msm8996")
--- drivers/remoteproc/qcom_q6v5_mss.c | 7 +++++++ 1 file changed, 7 insertions(+)
drivers/remoteproc/qcom_q6v5_mss.c +7 -0
@@ -1395,6 +1395,13 @@ static const struct rproc_hexagon_res sdm845_mss = {static const struct rproc_hexagon_res msm8996_mss = { .hexagon_mba_image ="mba.mbn" , + .proxy_supply = (struct qcom_mss_reg_res []) { + { + .supply ="pll" , + .uA =100000 , + }, + {} + }, .proxy_clk_names = (char *[]){"xo" ,"pnoc" ,
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 7/8 dt-bindings: remoteproc: qcom: Add power-domain bindings for Q6V5
In reply to Sibi SankarAdd power-domain bindings for Q6V5 MSS on MSM8996 and SDM845 SoCs.
---
v3:
* Fixup dt-binding documentation as suggested by Doug
* Dropping Rob's Reviewed-by due to documentation style change
v2:
* Add load_state power-domain
* List cx and mx power-domains for MSM8996
.../bindings/remoteproc/qcom,q6v5.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +19 -0
@@ -106,6 +106,25 @@ For the compatible string below the following supplies are required: Definition: reference to the regulators to be held on behalf of the booting of the Hexagon core +- power-domains: + Usage: required + Value type: <phandle> + Definition: reference to power-domains that match power-domain-names + +- power-domain-names: + Usage: required + Value type: <stringlist> + Definition: The power-domains needed depend on the compatible string: + qcom,q6v5-pil: + qcom,ipq8074-wcss-pil: + qcom,msm8916-mss-pil: + qcom,msm8974-mss-pil: + no power-domain names required + qcom,msm8996-mss-pil: + must be "cx", "mx" + qcom,sdm845-mss-pil: + must be "cx", "mx", "mss", "load_state" + - qcom,smem-states: Usage: required Value type: <phandle>
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
PATCH v3 8/8 arm64: dts: qcom: sdm845: Add Q6V5 MSS node
In reply to Sibi SankarThis patch adds Q6V5 MSS remoteproc node for SDM845 SoCs.
---
v3:
* with shutdown-ack irq redesign make it mandatory, merge multiple patches into a single one
v2:
* Fixed style changes
* Added missing clocks in the dt-bindings
* Split mss remoteproc node into a number of patches
This patch depends on the following bindings:
https://patchwork.kernel.org/patch/10662089/ - mba/mpss reserved regions
https://patchwork.kernel.org/patch/10657325/ - pdc reset node
https://patchwork.kernel.org/patch/10740127/ - rpmhpd dt bindings
https://patchwork.kernel.org/patch/10740109/ - rpmhpd dt node
https://patchwork.kernel.org/patch/10678301/ - AOP QMP dt bindings
https://patchwork.kernel.org/patch/10742083/ - shutdown-irq binding
arch/arm64/boot/dts/qcom/sdm845.dtsi | 60 ++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+)
arch/arm64/boot/dts/qcom/sdm845.dtsi +60 -0
@@ -1366,6 +1366,66 @@ }; }; + remoteproc@4080000 { + compatible = "qcom,sdm845-mss-pil"; + reg = <0x04080000 0x408>, <0x04180000 0x48>; + reg-names = "qdsp6", "rmb"; + + interrupts-extended = + <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>, + <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, + <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, + <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, + <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, + <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "wdog", "fatal", "ready", + "handover", "stop-ack", + "shutdown-ack"; + + clocks = <&gcc GCC_MSS_CFG_AHB_CLK>, + <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>, + <&gcc GCC_BOOT_ROM_AHB_CLK>, + <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>, + <&gcc GCC_MSS_SNOC_AXI_CLK>, + <&gcc GCC_MSS_MFAB_AXIS_CLK>, + <&gcc GCC_PRNG_AHB_CLK>, + <&rpmhcc RPMH_CXO_CLK>; + clock-names = "iface", "bus", "mem", "gpll0_mss", + "snoc_axi", "mnoc_axi", "prng", "xo"; + + qcom,smem-states = <&modem_smp2p_out 0>; + qcom,smem-state-names = "stop"; + + resets = <&aoss_reset AOSS_CC_MSS_RESTART>, + <&pdc_reset PDC_MODEM_SYNC_RESET>; + reset-names = "mss_restart", "pdc_reset"; + + qcom,halt-regs = <&tcsr_mutex_regs + 0x23000 0x25000 0x24000>; + + power-domains = <&aoss_qmp_pd AOSS_QMP_LS_MODEM>, + <&rpmhpd SDM845_CX>, + <&rpmhpd SDM845_MX>, + <&rpmhpd SDM845_MSS>; + power-domain-names = "load_state", "cx", "mx", "mss"; + + mba { + memory-region = <&mba_region>; + }; + + mpss { + memory-region = <&mpss_region>; + }; + + glink-edge { + interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>; + label = "modem"; + qcom,remote-pid = <1>; + mboxes = <&apss_shared 12>; + mbox-names = "mpss_smem"; + }; + }; + usb_1_hsphy: phy@88e2000 { compatible = "qcom,sdm845-qusb2-phy"; reg = <0x88e2000 0x400>;
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
Re: [PATCH v3 7/8] dt-bindings: remoteproc: qcom: Add power-domain bindings for Q6V5
In reply to Sibi SankarQuoted 10 lines · Sibi Sankar
Add power-domain bindings for Q6V5 MSS on MSM8996 and SDM845 SoCs.
Signed-off-by Sibi Sankar <[email protected]>---
v3:
* Fixup dt-binding documentation as suggested by Doug
* Dropping Rob's Reviewed-by due to documentation style change
Quoted 6 lines
v2:
* Addload_statepower-domain
* List cx and mx power-domains for MSM8996.../bindings/remoteproc/qcom,q6v5.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
Quoted 8 lines · Sibi Sankar
Add missing qcom,remote-pid dt binding required for GLINK SMEM which specifies the remote endpoint of the GLINK edge.
Fixes 2b41d6c8e696 ("dt-bindings: soc: qcom: Extend GLINK to coverSMEM")
Signed-off-by Sibi Sankar <[email protected]>Reviewed-by Doug Anderson <[email protected]>
Quoted 8 lines
---
v3:
* Fixed typoDocumentation/devicetree/bindings/soc/qcom/qcom,glink.txt | 5 +++++ 1 file changed, 5 insertions(+)
Rob Herring
maintainerRe: [PATCH v3 2/8] dt-bindings: remoteproc: qcom: Add missing clocks for SDM845
In reply to Sibi SankarQuoted 30 lines · Sibi Sankar
Add missing clock bindings for Q6V5 MSS on SDM845 SoCs.
Fixes fb22022ff63d ("dt-bindings: remoteproc: Add Q6v5 Modem PILbinding for SDM845")
Signed-off-by Sibi Sankar <[email protected]>---
v3:
* Fixup dt-binding documentation as suggested by Doug.../devicetree/bindings/remoteproc/qcom,q6v5.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-)Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +1
-3@@ -39,13 +39,21 @@ on the Qualcomm Hexagon core. - clocks: Usage: required Value type: <phandle> - Definition: reference to the iface, bus and mem clocks to be held on - behalf of the booting of the Hexagon core + Definition: reference to the clocks that match clock-names - clock-names: Usage: required Value type: <stringlist> - Definition: must be "iface", "bus", "mem"
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt on the Qualcomm Hexagon core. · line 56
Quoted 10 lines
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +10
-0+ Definition: The clocks needed depend on the compatible string: + qcom,ipq8074-wcss-pil: + no clock names required + qcom,q6v5-pil: + qcom,msm8916-mss-pil: + qcom,msm8974-mss-pil: + must be "iface", "bus", "mem", "xo" + qcom,sdm845-mss-pil: + must be "xo", "prng", "iface", "bus", "mem", "gpll0_mss", + "snoc_axi", "mnoc_axi"
Please keep the same order for the 4 clocks which are the same.
Rob
Re: [PATCH v3 5/8] dt-bindings: remoteproc: qcom: Fixup regulator dependencies
In reply to Sibi SankarQuoted 5 lines · Sibi Sankar
Fixup regulator supply dependencies for Q6V5 MSS on MSM996 SoCs.
Fixes 9f058fa2efb1 ("remoteproc: qcom: Add support for mss remoteprocon msm8996")
Quoted 9 lines
Signed-off-by Sibi Sankar <[email protected]>---
v3:
* Fixup dt-binding documentation as suggested by Doug.../bindings/remoteproc/qcom,q6v5.txt | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+)
Re: [PATCH v3 2/8] dt-bindings: remoteproc: qcom: Add missing clocks for SDM845
In reply to Rob HerringHi Rob,
Thanks for the review!
Quoted 28 lines · Rob Herring
Quoted 27 lines · Sibi Sankar
Add missing clock bindings for Q6V5 MSS on SDM845 SoCs.
Fixes fb22022ff63d ("dt-bindings: remoteproc: Add Q6v5 Modem PILbinding for SDM845")
Signed-off-by Sibi Sankar <[email protected]>---
v3:
* Fixup dt-binding documentation as suggested by Doug.../devicetree/bindings/remoteproc/qcom,q6v5.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-)Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +1
-2@@ -39,13 +39,21 @@ on the Qualcomm Hexagon core. - clocks: Usage: required Value type: <phandle> - Definition: reference to the iface, bus and mem clocks to be held on - behalf of the booting of the Hexagon core + Definition: reference to the clocks that match clock-names
Quoted 16 lines
Quoted 4 lines
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +0
-1- clock-names: Usage: required Value type: <stringlist> - Definition: must be "iface", "bus", "mem"Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt on the Qualcomm Hexagon core. · line 56
Quoted 10 lines
Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +10
-0+ Definition: The clocks needed depend on the compatible string: + qcom,ipq8074-wcss-pil: + no clock names required + qcom,q6v5-pil: + qcom,msm8916-mss-pil: + qcom,msm8974-mss-pil: + must be "iface", "bus", "mem", "xo" + qcom,sdm845-mss-pil: + must be "xo", "prng", "iface", "bus", "mem", "gpll0_mss", + "snoc_axi", "mnoc_axi"Please keep the same order for the 4 clocks which are the same.
Will re-order them in the next re-spin.
Quoted 2 lines
Rob
Signature · 3 lines
-- Sibi Sankar -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.