Skip to contentSkip to conversation

arm64: dts: fixes

PATCH Applied Alex Elder 3 participants 6 messages Nov 26, 2020

Subsystems (4)
lore
Share & tools
lore

Alex Elder

author
#0 lore raw

cover arm64: dts: fixes

The first patch in this series changes the IOMMU specification for the IPA node in "sc7180.dtsi" to identify two streams distinctly, rather than specifying them with a mask. This was inspired by something Bjorn did recently for IPA in "sdm845.dtsi".

The second and third just replace 0 with GIC_SPI in two IPA interrupt specifications.

(I'm sorry if I should have separated these.)

-Alex

Alex Elder (3):
arm64: dts: qcom: sc7180: limit IPA iommu streams
arm64: dts: qcom: sc7180: use GIC_SPI for IPA interrupts
arm64: dts: qcom: sdm845: use GIC_SPI for IPA interrupts

 arch/arm64/boot/dts/qcom/sc7180.dtsi | 7 ++++---
 arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++--
 2 files changed, 6 insertions(+), 5 deletions(-)
Signature · 1 line
2.20.1
author
#1 lore raw

PATCH 1/3 arm64: dts: qcom: sc7180: limit IPA iommu streams

Recently we learned that Android and Windows firmware don't seem to like using 3 as an iommu mask value for IPA. A simple fix was to specify exactly the streams needed explicitly, rather than implying a range with the mask. Make the same change for the SC7180 platform.

See also:
https://lore.kernel.org/linux-arm-msm/[email protected]/

Fixes d82fade846aa8 ("arm64: dts: qcom: sc7180: add IPA information")
---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
arch/arm64/boot/dts/qcom/sc7180.dtsi +2 -1
index c0efb101b0d61..eb66aadf360d7 100644
@@ -1396,7 +1396,8 @@
 		ipa: ipa@1e40000 {
 			compatible = "qcom,sc7180-ipa";
 
-			iommus = <&apps_smmu 0x440 0x3>;
+			iommus = <&apps_smmu 0x440 0x0>,
+				 <&apps_smmu 0x442 0x0>;
 			reg = <0 0x1e40000 0 0x7000>,
 			      <0 0x1e47000 0 0x2000>,
 			      <0 0x1e04000 0 0x2c000>;
Signature · 1 line
2.20.1
Reviewed-by on v1 1/3
#2 lore raw

Re: [PATCH 1/3] arm64: dts: qcom: sc7180: limit IPA iommu streams

Quoted 8 lines · Alex Elder

Recently we learned that Android and Windows firmware don't seem to like using 3 as an iommu mask value for IPA. A simple fix was to specify exactly the streams needed explicitly, rather than implying a range with the mask. Make the same change for the SC7180 platform.

See also:
https://lore.kernel.org/linux-arm-msm/[email protected]/

Quoted 23 lines
Fixes d82fade846aa8 ("arm64: dts: qcom: sc7180: add IPA information")
---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
arch/arm64/boot/dts/qcom/sc7180.dtsi +2 -1
index c0efb101b0d61..eb66aadf360d7 100644
@@ -1396,7 +1396,8 @@
 		ipa: ipa@1e40000 {
 			compatible = "qcom,sc7180-ipa";
 
-			iommus = <&apps_smmu 0x440 0x3>;
+			iommus = <&apps_smmu 0x440 0x0>,
+				 <&apps_smmu 0x442 0x0>;
 			reg = <0 0x1e40000 0 0x7000>,
 			      <0 0x1e47000 0 0x2000>,
 			      <0 0x1e04000 0 0x2c000>;
Signature · 1 line
2.20.1
author
#3 lore raw

PATCH 2/3 arm64: dts: qcom: sc7180: use GIC_SPI for IPA interrupts

In reply to Alex Elder

Use GIC_SPI rather than 0 in the specifiers for the two ARM GIC interrupts used by IPA.

---
 arch/arm64/boot/dts/qcom/sc7180.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/qcom/sc7180.dtsi +2 -2
index eb66aadf360d7..fa379bfaa443a 100644
@@ -1405,8 +1405,8 @@
 				    "ipa-shared",
 				    "gsi";
 
-			interrupts-extended = <&intc 0 311 IRQ_TYPE_EDGE_RISING>,
-					      <&intc 0 432 IRQ_TYPE_LEVEL_HIGH>,
+			interrupts-extended = <&intc GIC_SPI 311 IRQ_TYPE_EDGE_RISING>,
+					      <&intc GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>,
 					      <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
 					      <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>;
 			interrupt-names = "ipa",
Signature · 1 line
2.20.1
author
#4 lore raw

PATCH 3/3 arm64: dts: qcom: sdm845: use GIC_SPI for IPA interrupts

In reply to Alex Elder

Use GIC_SPI rather than 0 in the specifiers for the two ARM GIC interrupts used by IPA.

---
 arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/qcom/sdm845.dtsi +2 -2
index 957ee80704e74..256a698745ac2 100644
@@ -2152,8 +2152,8 @@
 				    "ipa-shared",
 				    "gsi";
 
-			interrupts-extended = <&intc 0 311 IRQ_TYPE_EDGE_RISING>,
-					      <&intc 0 432 IRQ_TYPE_LEVEL_HIGH>,
+			interrupts-extended = <&intc GIC_SPI 311 IRQ_TYPE_EDGE_RISING>,
+					      <&intc GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>,
 					      <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
 					      <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>;
 			interrupt-names = "ipa",
Signature · 1 line
2.20.1
#5 lore raw
In reply to Alex Elder
This series was applied to qcom/linux.git (refs/heads/for-next):

Hello:

This series was applied to qcom/linux.git (refs/heads/for-next):

Quoted 9 lines · On Wed, 25 Nov 2020 19:54:54 -0600 you wrote:

The first patch in this series changes the IOMMU specification for the IPA node in "sc7180.dtsi" to identify two streams distinctly, rather than specifying them with a mask. This was inspired by something Bjorn did recently for IPA in "sdm845.dtsi".

The second and third just replace 0 with GIC_SPI in two IPA interrupt specifications.

[...]

Here is the summary with links:
- [1/3] arm64: dts: qcom: sc7180: limit IPA iommu streams

    https://git.kernel.org/qcom/c/8f34831d3659
  - [2/3] arm64: dts: qcom: sc7180: use GIC_SPI for IPA interrupts
    https://git.kernel.org/qcom/c/cfee3ea05cf2
  - [3/3] arm64: dts: qcom: sdm845: use GIC_SPI for IPA interrupts
    https://git.kernel.org/qcom/c/0fc0f4b6aded

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html