Re: [PATCH] arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
Vishnu Santhosh <[email protected]> Tue, 4 Aug 2026 21:49:18 +0530
| Newsgroups | org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
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 <[email protected]> >> Signed-off-by: Deepak Kumar Singh <[email protected]> >> Signed-off-by: Vishnu Santhosh <[email protected]> >> --- >> 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/[email protected]/ > 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 <[email protected]> >>