Thread (11 messages) 11 messages, 4 authors, 14h ago

Re: [PATCH net-next v2 1/2] dt-bindings: net: qcom,bam-dmux: Add memory-region and qcom,vmid properties

From: Vishnu Santhosh <hidden>
Date: 2026-09-21 11:04:59
Also in: linux-arm-msm, linux-devicetree, lkml

On 20-09-2026 04:06 pm, Krzysztof Kozlowski wrote:
On Sun, Sep 20, 2026 at 08:32:29AM +0530, Vishnu Santhosh wrote:
quoted
Some Qualcomm SoCs, such as Shikra, run the modem in a separate security
domain with restricted access to system memory. BAM-DMUX DMA mappings
Then this is specific to Shikra and should come with its compatible plus
constraints per variant.
In v1, qcom,shikra-bam-dmux was used to select a different RX-buffer
allocation strategy. You asked me to drop it because the generic
qcom,bam-dmux compatible should cover that use case.

I followed that feedback in v2 and used memory-region plus qcom,vmid to
describe the optional firmware/security configuration instead.

Could you please clarify whether you now want qcom,shikra-bam-dmux restored
specifically as a schema discriminator, so memory-region and qcom,vmid
can be constrained to and required for Shikra, while the driver
continues to match the generic qcom,bam-dmux fallback?
quoted
must therefore be constrained to a designated region that can be shared
with the modem.

Add an optional memory-region property to reference a restricted DMA
pool used for BAM-DMUX mappings, and a qcom,vmid property to identify the
remote execution environment that is granted access to the pool through
SCM.

Require memory-region whenever qcom,vmid is specified.

Co-developed-by: Deepak Kumar Singh <redacted>
Signed-off-by: Deepak Kumar Singh <redacted>
Signed-off-by: Vishnu Santhosh <redacted>
---
  .../devicetree/bindings/net/qcom,bam-dmux.yaml     | 38 ++++++++++++++++++++++
  1 file changed, 38 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml b/Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml
index 33746c238513d72366bc52359fb10f275475b331..5351269b0ab72ede808ae47b55d57580af209038 100644
--- a/Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml
+++ b/Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml
@@ -72,6 +72,24 @@ properties:
        - const: tx
        - const: rx
  
+  memory-region:
+    maxItems: 1
+    description:
+      Phandle to a reserved-memory node compatible with restricted-dma-pool.
+      The BAM-DMUX device uses the pool for DMA mappings.
+
+  qcom,vmid:
+    $ref: /schemas/types.yaml#/definitions/uint32-array
+    minItems: 1
Drop
Agreed, will drop minItems in next revision.
quoted
+    maxItems: 1
+    items:
+      minimum: 1
+      maximum: 63
+    description:
+      VMID of the remote execution environment that is granted access to the
+      restricted DMA pool through SCM. The local execution environment is
+      retained automatically and must not be specified.
+
  required:
    - compatible
    - interrupts
@@ -81,12 +99,29 @@ required:
    - dmas
    - dma-names
  
+dependencies:
+  qcom,vmid: [ memory-region ]
+
  additionalProperties: false
  
  examples:
    - |
+    #include <dt-bindings/firmware/qcom,scm.h>
      #include <dt-bindings/interrupt-controller/irq.h>
  
+    reserved-memory {
+        #address-cells = <1>;
+        #size-cells = <1>;
+        ranges;
+
+        bam_dmux_pool: restricted-dma-pool {
+            compatible = "restricted-dma-pool";
+            size = <0x40000>;
+            alignment = <0x40000>;
+            alloc-ranges = <0x80000000 0x80000000>;
+        };
+    };
This wasn't here before. Drop.

Best regards,
Krzysztof
Agreed, will drop changes to example in next revision.


Thanks,
Vishnu
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help