Re: [PATCH net-next v2 1/2] dt-bindings: net: qcom,bam-dmux: Add memory-region and qcom,vmid properties
From: Loic Poulain <loic.poulain@oss.qualcomm.com>
Date: 2026-09-21 08:16:48
Also in:
linux-arm-msm, linux-devicetree, lkml
Hi Krzysztof, On Sun, Sep 20, 2026 at 12:36 PM Krzysztof Kozlowski [off-list ref] 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 mappingsThen this is specific to Shikra and should come with its compatible plus constraints per variant.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:
I can see several existing drivers, along with a few ongoing series, using this same property. Instead of redefining it in every binding, should we consider defining the prop/type once in a common soc/qcom schema and reusing it across bindings?
quoted
+ $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 1Dropquoted
+ 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