Devicetree
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
@ 2026-07-14  8:31 Vishnu Santhosh
  2026-07-30 21:19 ` Bjorn Andersson
  0 siblings, 1 reply; 5+ messages in thread
From: Vishnu Santhosh @ 2026-07-14  8:31 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, chris.lew,
	Deepak Kumar Singh, Vishnu Santhosh

On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
the AXI master for BAM descriptor FIFO accesses. The XPU enforces
per-region access control; without an SCM assignment granting NAV
access, the first DMA transfer triggers an XPU violation.

Add qcom,vmid = <QCOM_SCM_VMID_NAV> to the bam_dmux_dma controller
node so bam_dma SCM-assigns each channel descriptor FIFO at
allocation. BAM-DMUX itself is a singleton and no longer needs a DT
property for its destination VMID: the driver now selects
QCOM_SCM_VMID_NAV internally via the qcom,shikra-bam-dmux compatible's
match data.

Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
---
This depends on three separate series:

- "arm64: dts: qcom: shikra: Add BAM-DMUX support" [1], which adds
  the bam_dmux and bam_dmux_dma nodes this series modifies.
- "arm64: dts: qcom: Extend Shikra device tree with CDSP, LPAICP,
  MPSS remoteproc PAS and peripherals" [2], which is still under
  review and adds the "remoteproc_mpss" node that [1] attaches
  bam_dmux to.
- "dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid property" [3]
  and "dt-bindings: net: qcom,bam-dmux: Add qcom,shikra-bam-dmux
  compatible" [4], which introduce the qcom,shikra-bam-dma and
  qcom,shikra-bam-dmux compatibles this series relies on for the
  qcom,vmid property to validate under dt-schema.

[1] https://lore.kernel.org/all/20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com/
[2] https://lore.kernel.org/all/20260714-shikra-dt-m1-v6-0-bee265d3499b@oss.qualcomm.com/
[3] https://lore.kernel.org/all/20260714-qcom-bam-dma-vmid-ext-v1-0-cef87c57b7dc@oss.qualcomm.com/
[4] https://lore.kernel.org/all/20260714-qcom-bam-dmux-vmid-ext-v1-0-3f29da7cca76@oss.qualcomm.com/
---
 arch/arm64/boot/dts/qcom/shikra.dtsi | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
index 246ea74d1fb1e293f0428d342301886dc52cb179..cb824da1757921edf0befe5480bf489ee1d8c727 100644
--- a/arch/arm64/boot/dts/qcom/shikra.dtsi
+++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
@@ -5,6 +5,7 @@
 
 #include <dt-bindings/clock/qcom,rpmcc.h>
 #include <dt-bindings/clock/qcom,shikra-gcc.h>
+#include <dt-bindings/firmware/qcom,scm.h>
 #include <dt-bindings/interconnect/qcom,icc.h>
 #include <dt-bindings/interconnect/qcom,osm-l3.h>
 #include <dt-bindings/dma/qcom-gpi.h>
@@ -1888,7 +1889,7 @@ glink-edge {
 			};
 
 			bam_dmux: bam-dmux {
-				compatible = "qcom,bam-dmux";
+				compatible = "qcom,shikra-bam-dmux", "qcom,bam-dmux";
 
 				interrupts-extended = <&modem_smsm 1 IRQ_TYPE_EDGE_BOTH>,
 						      <&modem_smsm 11 IRQ_TYPE_EDGE_BOTH>;
@@ -2030,7 +2031,7 @@ glink-edge {
 		};
 
 		bam_dmux_dma: dma-controller@6044000 {
-			compatible = "qcom,bam-v1.7.0";
+			compatible = "qcom,shikra-bam-dma", "qcom,bam-v1.7.0";
 			reg = <0x0 0x06044000 0x0 0x19000>;
 			interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING 0>;
 			#dma-cells = <1>;
@@ -2039,6 +2040,7 @@ bam_dmux_dma: dma-controller@6044000 {
 			num-channels = <6>;
 			qcom,num-ees = <1>;
 			qcom,powered-remotely;
+			qcom,vmid = <QCOM_SCM_VMID_NAV>;
 		};
 
 		sram@c11e000 {

---
base-commit: 3b029c035b34bbc693405ddf759f0e9b920c27f1
change-id: 20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-1b4f793e035c
prerequisite-change-id: 20260525-shikra-dt-m1-082dec382e7f:v6
prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
prerequisite-patch-id: e13435365cba0b6ecfcea6d9e5ab72838fba23a7
prerequisite-patch-id: 90f78668eb969c16ed8c2485d75a60a183fc4b8e
prerequisite-change-id: 20260603-qcom-shikra-dts-bam-dmux-7fdcbb6fb662:v2
prerequisite-patch-id: 59bb0a7828e41f546f734f127d81da83c0adcda9
prerequisite-patch-id: 197da6bcb15cadc47869dba88c8020987b25c335
prerequisite-patch-id: 8ec9c1eb03f052ae232ed54117abed38672c23f6
prerequisite-patch-id: 350db4f4bcdfc0fad9ed57cd5b1723f85ad44f5d
prerequisite-patch-id: b5d7f75df02fde56181f576a936baf09d0a72276
prerequisite-patch-id: 3ce52e07ae57139c2e2b71a29ed7d7250f6fcc87
prerequisite-patch-id: 3a689e8dda5fd2755b689d94d095806b3f2e6eed
prerequisite-patch-id: ac83151a889855498d36288ddd36216d451340c8
prerequisite-patch-id: 2357cac636e019eaf14d6a493a1c72bca56fe405
prerequisite-patch-id: 2885f299e711582da312ca9d13983d296a3dd5dc
prerequisite-patch-id: 91af5f3c01e766a53ce8de69aa21847a2d6bbbf8
prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
prerequisite-patch-id: 968bffc36646412f8289b917f37e762a4297bcc8
prerequisite-patch-id: 35944403bd4480caad12657342da15ea71c6afbd
prerequisite-patch-id: 65b485474126f4a2ab3f69a0b8e146b3b04c2c1a
prerequisite-change-id: 20260714-qcom-bam-dma-vmid-ext-8a3bd3c5c00e:v1
prerequisite-patch-id: b61d337d6c8fc4b20bff5a057b3f3335d89c57c3
prerequisite-patch-id: 91d3d344ec3e35ef7a3cec0a2ef90fefaf10a039
prerequisite-change-id: 20260714-qcom-bam-dmux-vmid-ext-d9289db310c1:v1
prerequisite-patch-id: 9e23abde2db60a3ad3a00d060bfb91f68c0aa798
prerequisite-patch-id: 4fa3350725e5b9d442247756d2b51d03f99b86bc

Best regards,
-- 
Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
  2026-07-14  8:31 [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node Vishnu Santhosh
@ 2026-07-30 21:19 ` Bjorn Andersson
  2026-08-04 16:19   ` Vishnu Santhosh
  0 siblings, 1 reply; 5+ messages in thread
From: Bjorn Andersson @ 2026-07-30 21:19 UTC (permalink / raw)
  To: Vishnu Santhosh
  Cc: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	linux-arm-msm, devicetree, linux-kernel, chris.lew,
	Deepak Kumar Singh

On Tue, Jul 14, 2026 at 02:01:53PM +0530, Vishnu Santhosh wrote:
> On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
> the AXI master for BAM descriptor FIFO accesses. The XPU enforces
> per-region access control; without an SCM assignment granting NAV
> access, the first DMA transfer triggers an XPU violation.
> 

I'm a bit puzzled about your plan here.

You posted this on July 14th, that's 3 days after I asked you to rebase
patch [1]. This patch literally says that [1] is broken and untested.

> Add qcom,vmid = <QCOM_SCM_VMID_NAV> to the bam_dmux_dma controller
> node so bam_dma SCM-assigns each channel descriptor FIFO at
> allocation. BAM-DMUX itself is a singleton and no longer needs a DT
> property for its destination VMID: the driver now selects
> QCOM_SCM_VMID_NAV internally via the qcom,shikra-bam-dmux compatible's
> match data.
> 
> Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
> Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
> Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
> ---
> This depends on three separate series:
> 
> - "arm64: dts: qcom: shikra: Add BAM-DMUX support" [1], which adds
>   the bam_dmux and bam_dmux_dma nodes this series modifies.
> - "arm64: dts: qcom: Extend Shikra device tree with CDSP, LPAICP,
>   MPSS remoteproc PAS and peripherals" [2], which is still under
>   review and adds the "remoteproc_mpss" node that [1] attaches
>   bam_dmux to.
> - "dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid property" [3]
>   and "dt-bindings: net: qcom,bam-dmux: Add qcom,shikra-bam-dmux
>   compatible" [4], which introduce the qcom,shikra-bam-dma and
>   qcom,shikra-bam-dmux compatibles this series relies on for the
>   qcom,vmid property to validate under dt-schema.
> 
> [1] https://lore.kernel.org/all/20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com/

Changes was requested on July 11th

> [2] https://lore.kernel.org/all/20260714-shikra-dt-m1-v6-0-bee265d3499b@oss.qualcomm.com/

Changes was requested on July 13th

> [3] https://lore.kernel.org/all/20260714-qcom-bam-dma-vmid-ext-v1-0-cef87c57b7dc@oss.qualcomm.com/
> [4] https://lore.kernel.org/all/20260714-qcom-bam-dmux-vmid-ext-v1-0-3f29da7cca76@oss.qualcomm.com/

Might be wrong on the timezones, but I think you had change requests in
your inbox by the time you posted this series.


What do you want me to do with this patch?

> ---
>  arch/arm64/boot/dts/qcom/shikra.dtsi | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
> index 246ea74d1fb1e293f0428d342301886dc52cb179..cb824da1757921edf0befe5480bf489ee1d8c727 100644
> --- a/arch/arm64/boot/dts/qcom/shikra.dtsi
> +++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
> @@ -5,6 +5,7 @@
>  
>  #include <dt-bindings/clock/qcom,rpmcc.h>
>  #include <dt-bindings/clock/qcom,shikra-gcc.h>
> +#include <dt-bindings/firmware/qcom,scm.h>
>  #include <dt-bindings/interconnect/qcom,icc.h>
>  #include <dt-bindings/interconnect/qcom,osm-l3.h>
>  #include <dt-bindings/dma/qcom-gpi.h>
> @@ -1888,7 +1889,7 @@ glink-edge {
>  			};
>  
>  			bam_dmux: bam-dmux {
> -				compatible = "qcom,bam-dmux";
> +				compatible = "qcom,shikra-bam-dmux", "qcom,bam-dmux";
>  
>  				interrupts-extended = <&modem_smsm 1 IRQ_TYPE_EDGE_BOTH>,
>  						      <&modem_smsm 11 IRQ_TYPE_EDGE_BOTH>;
> @@ -2030,7 +2031,7 @@ glink-edge {
>  		};
>  
>  		bam_dmux_dma: dma-controller@6044000 {
> -			compatible = "qcom,bam-v1.7.0";
> +			compatible = "qcom,shikra-bam-dma", "qcom,bam-v1.7.0";
>  			reg = <0x0 0x06044000 0x0 0x19000>;
>  			interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING 0>;
>  			#dma-cells = <1>;
> @@ -2039,6 +2040,7 @@ bam_dmux_dma: dma-controller@6044000 {
>  			num-channels = <6>;
>  			qcom,num-ees = <1>;
>  			qcom,powered-remotely;
> +			qcom,vmid = <QCOM_SCM_VMID_NAV>;
>  		};
>  
>  		sram@c11e000 {
> 
> ---
> base-commit: 3b029c035b34bbc693405ddf759f0e9b920c27f1
> change-id: 20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-1b4f793e035c
> prerequisite-change-id: 20260525-shikra-dt-m1-082dec382e7f:v6
> prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
> prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
> prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
> prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
> prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
> prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
> prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
> prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
> prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
> prerequisite-patch-id: e13435365cba0b6ecfcea6d9e5ab72838fba23a7
> prerequisite-patch-id: 90f78668eb969c16ed8c2485d75a60a183fc4b8e
> prerequisite-change-id: 20260603-qcom-shikra-dts-bam-dmux-7fdcbb6fb662:v2
> prerequisite-patch-id: 59bb0a7828e41f546f734f127d81da83c0adcda9
> prerequisite-patch-id: 197da6bcb15cadc47869dba88c8020987b25c335
> prerequisite-patch-id: 8ec9c1eb03f052ae232ed54117abed38672c23f6
> prerequisite-patch-id: 350db4f4bcdfc0fad9ed57cd5b1723f85ad44f5d
> prerequisite-patch-id: b5d7f75df02fde56181f576a936baf09d0a72276
> prerequisite-patch-id: 3ce52e07ae57139c2e2b71a29ed7d7250f6fcc87
> prerequisite-patch-id: 3a689e8dda5fd2755b689d94d095806b3f2e6eed
> prerequisite-patch-id: ac83151a889855498d36288ddd36216d451340c8
> prerequisite-patch-id: 2357cac636e019eaf14d6a493a1c72bca56fe405
> prerequisite-patch-id: 2885f299e711582da312ca9d13983d296a3dd5dc
> prerequisite-patch-id: 91af5f3c01e766a53ce8de69aa21847a2d6bbbf8
> prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
> prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
> prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
> prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
> prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
> prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
> prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
> prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
> prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
> prerequisite-patch-id: 968bffc36646412f8289b917f37e762a4297bcc8
> prerequisite-patch-id: 35944403bd4480caad12657342da15ea71c6afbd
> prerequisite-patch-id: 65b485474126f4a2ab3f69a0b8e146b3b04c2c1a
> prerequisite-change-id: 20260714-qcom-bam-dma-vmid-ext-8a3bd3c5c00e:v1
> prerequisite-patch-id: b61d337d6c8fc4b20bff5a057b3f3335d89c57c3
> prerequisite-patch-id: 91d3d344ec3e35ef7a3cec0a2ef90fefaf10a039
> prerequisite-patch-id: 9e23abde2db60a3ad3a00d060bfb91f68c0aa798
> prerequisite-patch-id: 4fa3350725e5b9d442247756d2b51d03f99b86bc

So this patch has almost been tested upstream, only 38 patches delta?

Regards,
Bjorn

> 
> Best regards,
> -- 
> Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
  2026-07-30 21:19 ` Bjorn Andersson
@ 2026-08-04 16:19   ` Vishnu Santhosh
  2026-08-05  3:38     ` Bjorn Andersson
  0 siblings, 1 reply; 5+ messages in thread
From: Vishnu Santhosh @ 2026-08-04 16:19 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	linux-arm-msm, devicetree, linux-kernel, chris.lew,
	Deepak Kumar Singh


On 31-07-2026 02:49 am, Bjorn Andersson wrote:
> On Tue, Jul 14, 2026 at 02:01:53PM +0530, Vishnu Santhosh wrote:
>> On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
>> the AXI master for BAM descriptor FIFO accesses. The XPU enforces
>> per-region access control; without an SCM assignment granting NAV
>> access, the first DMA transfer triggers an XPU violation.
>>
> I'm a bit puzzled about your plan here.
>
> You posted this on July 14th, that's 3 days after I asked you to rebase
> patch [1]. This patch literally says that [1] is broken and untested.

The XPU violation itself wasn't visible against the base bam-dmux
enablement alone. It only showed up once the access-control policy was
enabled, which happened to land close to when [1] was posted upstream.
That's why this series followed so soon after.

>> Add qcom,vmid = <QCOM_SCM_VMID_NAV> to the bam_dmux_dma controller
>> node so bam_dma SCM-assigns each channel descriptor FIFO at
>> allocation. BAM-DMUX itself is a singleton and no longer needs a DT
>> property for its destination VMID: the driver now selects
>> QCOM_SCM_VMID_NAV internally via the qcom,shikra-bam-dmux compatible's
>> match data.
>>
>> Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
>> Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
>> Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
>> ---
>> This depends on three separate series:
>>
>> - "arm64: dts: qcom: shikra: Add BAM-DMUX support" [1], which adds
>>    the bam_dmux and bam_dmux_dma nodes this series modifies.
>> - "arm64: dts: qcom: Extend Shikra device tree with CDSP, LPAICP,
>>    MPSS remoteproc PAS and peripherals" [2], which is still under
>>    review and adds the "remoteproc_mpss" node that [1] attaches
>>    bam_dmux to.
>> - "dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid property" [3]
>>    and "dt-bindings: net: qcom,bam-dmux: Add qcom,shikra-bam-dmux
>>    compatible" [4], which introduce the qcom,shikra-bam-dma and
>>    qcom,shikra-bam-dmux compatibles this series relies on for the
>>    qcom,vmid property to validate under dt-schema.
>>
>> [1] https://lore.kernel.org/all/20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com/
> Changes was requested on July 11th
>
>> [2] https://lore.kernel.org/all/20260714-shikra-dt-m1-v6-0-bee265d3499b@oss.qualcomm.com/
> Changes was requested on July 13th
>
>> [3] https://lore.kernel.org/all/20260714-qcom-bam-dma-vmid-ext-v1-0-cef87c57b7dc@oss.qualcomm.com/
>> [4] https://lore.kernel.org/all/20260714-qcom-bam-dmux-vmid-ext-v1-0-3f29da7cca76@oss.qualcomm.com/
> Might be wrong on the timezones, but I think you had change requests in
> your inbox by the time you posted this series.
>
>
> What do you want me to do with this patch?

Understood the mistake. I should have waited for [1]'s dependencies to land, then folded this vmid
change into [1] itself.  I will do that and post these changes as [1]'s next revision.

Please drop this patch.

>
>> ---
>>   arch/arm64/boot/dts/qcom/shikra.dtsi | 6 ++++--
>>   1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
>> index 246ea74d1fb1e293f0428d342301886dc52cb179..cb824da1757921edf0befe5480bf489ee1d8c727 100644
>> --- a/arch/arm64/boot/dts/qcom/shikra.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
>> @@ -5,6 +5,7 @@
>>   
>>   #include <dt-bindings/clock/qcom,rpmcc.h>
>>   #include <dt-bindings/clock/qcom,shikra-gcc.h>
>> +#include <dt-bindings/firmware/qcom,scm.h>
>>   #include <dt-bindings/interconnect/qcom,icc.h>
>>   #include <dt-bindings/interconnect/qcom,osm-l3.h>
>>   #include <dt-bindings/dma/qcom-gpi.h>
>> @@ -1888,7 +1889,7 @@ glink-edge {
>>   			};
>>   
>>   			bam_dmux: bam-dmux {
>> -				compatible = "qcom,bam-dmux";
>> +				compatible = "qcom,shikra-bam-dmux", "qcom,bam-dmux";
>>   
>>   				interrupts-extended = <&modem_smsm 1 IRQ_TYPE_EDGE_BOTH>,
>>   						      <&modem_smsm 11 IRQ_TYPE_EDGE_BOTH>;
>> @@ -2030,7 +2031,7 @@ glink-edge {
>>   		};
>>   
>>   		bam_dmux_dma: dma-controller@6044000 {
>> -			compatible = "qcom,bam-v1.7.0";
>> +			compatible = "qcom,shikra-bam-dma", "qcom,bam-v1.7.0";
>>   			reg = <0x0 0x06044000 0x0 0x19000>;
>>   			interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING 0>;
>>   			#dma-cells = <1>;
>> @@ -2039,6 +2040,7 @@ bam_dmux_dma: dma-controller@6044000 {
>>   			num-channels = <6>;
>>   			qcom,num-ees = <1>;
>>   			qcom,powered-remotely;
>> +			qcom,vmid = <QCOM_SCM_VMID_NAV>;
>>   		};
>>   
>>   		sram@c11e000 {
>>
>> ---
>> base-commit: 3b029c035b34bbc693405ddf759f0e9b920c27f1
>> change-id: 20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-1b4f793e035c
>> prerequisite-change-id: 20260525-shikra-dt-m1-082dec382e7f:v6
>> prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
>> prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
>> prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
>> prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
>> prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
>> prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
>> prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
>> prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
>> prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
>> prerequisite-patch-id: e13435365cba0b6ecfcea6d9e5ab72838fba23a7
>> prerequisite-patch-id: 90f78668eb969c16ed8c2485d75a60a183fc4b8e
>> prerequisite-change-id: 20260603-qcom-shikra-dts-bam-dmux-7fdcbb6fb662:v2
>> prerequisite-patch-id: 59bb0a7828e41f546f734f127d81da83c0adcda9
>> prerequisite-patch-id: 197da6bcb15cadc47869dba88c8020987b25c335
>> prerequisite-patch-id: 8ec9c1eb03f052ae232ed54117abed38672c23f6
>> prerequisite-patch-id: 350db4f4bcdfc0fad9ed57cd5b1723f85ad44f5d
>> prerequisite-patch-id: b5d7f75df02fde56181f576a936baf09d0a72276
>> prerequisite-patch-id: 3ce52e07ae57139c2e2b71a29ed7d7250f6fcc87
>> prerequisite-patch-id: 3a689e8dda5fd2755b689d94d095806b3f2e6eed
>> prerequisite-patch-id: ac83151a889855498d36288ddd36216d451340c8
>> prerequisite-patch-id: 2357cac636e019eaf14d6a493a1c72bca56fe405
>> prerequisite-patch-id: 2885f299e711582da312ca9d13983d296a3dd5dc
>> prerequisite-patch-id: 91af5f3c01e766a53ce8de69aa21847a2d6bbbf8
>> prerequisite-patch-id: 48ecd66c06c4fad81f91283c26ec57d95bbde29d
>> prerequisite-patch-id: 7d92e5a301d09616840e54dc9e4a81f30a64383c
>> prerequisite-patch-id: be1a16f53e23dd5ab90210a056c9da3559c6186d
>> prerequisite-patch-id: 3eff04500c55100c763aeac1f1f8c5768d500500
>> prerequisite-patch-id: ab22c5fdb2fa65b78ffef76bbe4459c8d5ffe7b2
>> prerequisite-patch-id: cb24efedb648271ef5c60ace96e2366d89254e8f
>> prerequisite-patch-id: 8be7df0395c5847a988c7e814c7db878b5932b11
>> prerequisite-patch-id: 0510992d022cef7317b6efee6765ac78c0225356
>> prerequisite-patch-id: de4327fcbe81f92a337f429b74e8220969a5b79f
>> prerequisite-patch-id: 968bffc36646412f8289b917f37e762a4297bcc8
>> prerequisite-patch-id: 35944403bd4480caad12657342da15ea71c6afbd
>> prerequisite-patch-id: 65b485474126f4a2ab3f69a0b8e146b3b04c2c1a
>> prerequisite-change-id: 20260714-qcom-bam-dma-vmid-ext-8a3bd3c5c00e:v1
>> prerequisite-patch-id: b61d337d6c8fc4b20bff5a057b3f3335d89c57c3
>> prerequisite-patch-id: 91d3d344ec3e35ef7a3cec0a2ef90fefaf10a039
>> prerequisite-patch-id: 9e23abde2db60a3ad3a00d060bfb91f68c0aa798
>> prerequisite-patch-id: 4fa3350725e5b9d442247756d2b51d03f99b86bc
> So this patch has almost been tested upstream, only 38 patches delta?
>
> Regards,
> Bjorn

Understood. That's a lot of unlanded prerequisites to stack a patch on.
I'll be mindful next time.


Thanks,
Vishnu

>
>> Best regards,
>> -- 
>> Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
>>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
  2026-08-04 16:19   ` Vishnu Santhosh
@ 2026-08-05  3:38     ` Bjorn Andersson
  2026-08-05  8:20       ` Vishnu Santhosh
  0 siblings, 1 reply; 5+ messages in thread
From: Bjorn Andersson @ 2026-08-05  3:38 UTC (permalink / raw)
  To: Vishnu Santhosh
  Cc: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	linux-arm-msm, devicetree, linux-kernel, chris.lew,
	Deepak Kumar Singh

On Tue, Aug 04, 2026 at 09:49:18PM +0530, Vishnu Santhosh wrote:
> 
> On 31-07-2026 02:49 am, Bjorn Andersson wrote:
> > On Tue, Jul 14, 2026 at 02:01:53PM +0530, Vishnu Santhosh wrote:
> > > On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
> > > the AXI master for BAM descriptor FIFO accesses. The XPU enforces
> > > per-region access control; without an SCM assignment granting NAV
> > > access, the first DMA transfer triggers an XPU violation.
> > > 
> > I'm a bit puzzled about your plan here.
> > 
> > You posted this on July 14th, that's 3 days after I asked you to rebase
> > patch [1]. This patch literally says that [1] is broken and untested.
> 
> The XPU violation itself wasn't visible against the base bam-dmux
> enablement alone. It only showed up once the access-control policy was
> enabled, which happened to land close to when [1] was posted upstream.
> That's why this series followed so soon after.
> 

Are you saying that none of the shikra patches were tested with
access-control enabled?!

Regards,
Bjorn

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
  2026-08-05  3:38     ` Bjorn Andersson
@ 2026-08-05  8:20       ` Vishnu Santhosh
  0 siblings, 0 replies; 5+ messages in thread
From: Vishnu Santhosh @ 2026-08-05  8:20 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	linux-arm-msm, devicetree, linux-kernel, chris.lew,
	Deepak Kumar Singh


On 05-08-2026 09:08 am, Bjorn Andersson wrote:
> On Tue, Aug 04, 2026 at 09:49:18PM +0530, Vishnu Santhosh wrote:
>> On 31-07-2026 02:49 am, Bjorn Andersson wrote:
>>> On Tue, Jul 14, 2026 at 02:01:53PM +0530, Vishnu Santhosh wrote:
>>>> On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
>>>> the AXI master for BAM descriptor FIFO accesses. The XPU enforces
>>>> per-region access control; without an SCM assignment granting NAV
>>>> access, the first DMA transfer triggers an XPU violation.
>>>>
>>> I'm a bit puzzled about your plan here.
>>>
>>> You posted this on July 14th, that's 3 days after I asked you to rebase
>>> patch [1]. This patch literally says that [1] is broken and untested.
>> The XPU violation itself wasn't visible against the base bam-dmux
>> enablement alone. It only showed up once the access-control policy was
>> enabled, which happened to land close to when [1] was posted upstream.
>> That's why this series followed so soon after.
>>
> Are you saying that none of the shikra patches were tested with
> access-control enabled?!
>
> Regards,
> Bjorn

Correct for [1] because access-control wasn't enabled in the Shikra build
used at that point. It was enabled afterward, which is when this XPU
violation was found.

Some context on why this issue is Shikra-specific: A2 BAM (used by
BAM-DMUX) sits in the secure domain on this SoC and doesn't support IOMMU
Stage-2 translation, so there's no IOMMU domain that can be attached
to it. The XPU is the only protection mechanism available. On past
targets like msm8916, the same A2 BAM configuration never surfaced
this class of issue, so it wasn't something we'd seen before.

We are currently discussing with Stephen on the SCM calls on bam driver side
to fix the violation. Once concluded, will verify and fold the dt changes
together with [1].


Thanks,
Vishnu


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-08-05  8:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-14  8:31 [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node Vishnu Santhosh
2026-07-30 21:19 ` Bjorn Andersson
2026-08-04 16:19   ` Vishnu Santhosh
2026-08-05  3:38     ` Bjorn Andersson
2026-08-05  8:20       ` Vishnu Santhosh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox