On Thu, Sep 17, 2026 at 02:19:42PM -0400, [email protected] wrote:
>From: Laurentiu Mihalcea <[email protected]>
>
>Document the optional memory-region-names property.
> 
>The driver currently derives the memory region type from the referenced
>memory node name, creating a hidden DT ABI. Since memory node names are
>not constrained by the binding, incorrect names can silently pass DT
>validation, as seen in examples using "vdevbuffer" instead of
>"vdev0buffer" ([1] and [2]).
>
>Add memory-region-names to explicitly identify the expected memory regions
>and avoid relying on memory node names as ABI.
>
>Link: 
>https://lore.kernel.org/imx/[email protected]/ 
>[1]
>Link: 
>https://lore.kernel.org/imx/alexXTYQHUs76J7v@SMW015318/T/#mb9dc709ff3adc24d9db6d30c973f37b580f6f1f9
> [2]
>Signed-off-by: Laurentiu Mihalcea <[email protected]>
>Signed-off-by: Frank Li <[email protected]>
>---
>Use optional property to keep back compatible with old platform.
>New platform should use memory-region-names.
>---
> .../devicetree/bindings/remoteproc/fsl,imx-rproc.yaml         | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
>diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml 
>b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
>index c18f71b648890..5d98d21035f8c 100644
>--- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
>+++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
>@@ -62,6 +62,15 @@ properties:
>     minItems: 1
>     maxItems: 32
> 
>+  memory-region-names:
>+    minItems: 1
>+    maxItems: 32
>+    items:
>+      anyOf:
>+        - const: rsc-table
>+        - pattern: "^vdev[0-9]+(buffer|vring[0-9])+$"

Should be "^vdev[0-9]+(buffer|vring[0-9]+)$"?

Regards
Peng

>+        - pattern: "^m(4|7|33)-reserved(-[a-z0-9-]+)+$"
>+
>   power-domains:
>     minItems: 2
>     maxItems: 8
>@@ -134,6 +143,7 @@ examples:
>     imx7d-cm4 {
>       compatible = "fsl,imx7d-cm4";
>       memory-region = <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;
>+      memory-region-names = "m4-reserved-sysmem1", "m4-reserved-sysmem2";
>       syscon = <&src>;
>       clocks = <&clks IMX7D_ARM_M4_ROOT_CLK>;
>     };
>@@ -149,6 +159,7 @@ examples:
>                 &mu 1 1
>                 &mu 3 1>;
>       memory-region = <&vdev0buffer>, <&vdev0vring0>, <&vdev0vring1>, 
> <&rsc_table>;
>+      memory-region-names = "vdev0buffer", "vdev0vring0", "vdev0vring1", 
>"rsc-table";
>       syscon = <&src>;
>     };
> ...
>
>-- 
>2.43.0
>
>

Reply via email to