arm64: dts: sdm845: add/update IPA information
cover arm64: dts: sdm845: add/update IPA information
Bjorn, these patches implement the DTS changes required for the Qualcomm IPA driver to support the SDM845 SoC. The first adds the basic IPA information, which would be needed for kernel versions prior to v5.7. The second updates the interconnect providers as required because of this commit:
b303f9f0050b arm64: dts: sdm845: Redefine interconnect provider DT nodes
David Miller has reverted the first of these from net-next.
https://lore.kernel.org/netdev/[email protected]/
As agreed, please apply these to the Qualcomm tree if you find them acceptable after review. They are based on the qcom/arm64-for-5.7 branch.
Thanks.
-Alex
Alex Elder (2):
arm64: dts: sdm845: add IPA information
arm64: dts: sdm845: update IPA interconnect providers
arch/arm64/boot/dts/qcom/sdm845.dtsi | 52 ++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+)
Signature · 1 line
2.20.1
PATCH 1/2 arm64: dts: sdm845: add IPA information
Add IPA-related nodes and definitions to "sdm845.dtsi".
--- arch/arm64/boot/dts/qcom/sdm845.dtsi | 51 ++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+)
arch/arm64/boot/dts/qcom/sdm845.dtsi +51 -0
@@ -675,6 +675,17 @@ interrupt-controller; #interrupt-cells = <2>; }; + + ipa_smp2p_out: ipa-ap-to-modem { + qcom,entry-name = "ipa"; + #qcom,smem-state-cells = <1>; + }; + + ipa_smp2p_in: ipa-modem-to-ap { + qcom,entry-name = "ipa"; + interrupt-controller; + #interrupt-cells = <2>; + }; }; smp2p-slpi {
@@ -1696,6 +1707,46 @@ }; }; + ipa@1e40000 { + compatible = "qcom,sdm845-ipa"; + + modem-init; + modem-remoteproc = <&mss_pil>; + + reg = <0 0x1e40000 0 0x7000>, + <0 0x1e47000 0 0x2000>, + <0 0x1e04000 0 0x2c000>; + reg-names = "ipa-reg", + "ipa-shared", + "gsi"; + + interrupts-extended = + <&intc 0 311 IRQ_TYPE_EDGE_RISING>, + <&intc 0 432 IRQ_TYPE_LEVEL_HIGH>, + <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, + <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "ipa", + "gsi", + "ipa-clock-query", + "ipa-setup-ready"; + + clocks = <&rpmhcc RPMH_IPA_CLK>; + clock-names = "core"; + + interconnects = + <&rsc_hlos MASTER_IPA &rsc_hlos SLAVE_EBI1>, + <&rsc_hlos MASTER_IPA &rsc_hlos SLAVE_IMEM>, + <&rsc_hlos MASTER_APPSS_PROC &rsc_hlos SLAVE_IPA_CFG>; + interconnect-names = "memory", + "imem", + "config"; + + qcom,smem-states = <&ipa_smp2p_out 0>, + <&ipa_smp2p_out 1>; + qcom,smem-state-names = "ipa-clock-enabled-valid", + "ipa-clock-enabled"; + }; + tcsr_mutex_regs: syscon@1f40000 { compatible = "syscon"; reg = <0 0x01f40000 0 0x40000>;
Signature · 1 line
2.20.1
PATCH 2/2 arm64: dts: sdm845: update IPA interconnect providers
In reply to Alex ElderThis commit:
b303f9f0050b arm64: dts: sdm845: Redefine interconnect provider DT nodes
removed/redefined the interconnect provider node(s) used for IPA.
Update the IPA interconnect specifications accordingly.
--- arch/arm64/boot/dts/qcom/sdm845.dtsi | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
arch/arm64/boot/dts/qcom/sdm845.dtsi +4 -3
@@ -1734,9 +1734,10 @@ clock-names = "core"; interconnects = - <&rsc_hlos MASTER_IPA &rsc_hlos SLAVE_EBI1>, - <&rsc_hlos MASTER_IPA &rsc_hlos SLAVE_IMEM>, - <&rsc_hlos MASTER_APPSS_PROC &rsc_hlos SLAVE_IPA_CFG>; + <&aggre2_noc MASTER_IPA &mem_noc SLAVE_EBI1>, + <&aggre2_noc MASTER_IPA &system_noc SLAVE_IMEM>, + <&gladiator_noc MASTER_APPSS_PROC + &config_noc SLAVE_IPA_CFG>; interconnect-names = "memory", "imem", "config";
Signature · 1 line
2.20.1