On 8/3/2026 2:03 AM, Peng Fan (OSS) wrote:
>> Subject: Re: [PATCH v3 1/4] dt-bindings: remoteproc: imx_rproc:
>> document optional "memory-region-names"
>>
>> On Thu, Jul 30, 2026 at 09:34:09AM -0700, Laurentiu Mihalcea wrote:
>>> From: Laurentiu Mihalcea <[email protected]>
>>>
>>> The carveout region names are derived based on the DT node names.
>>> Because of this, the DT node names are ABI, which is not supposed to
>> happen.
>>>
>>> Fix this by documenting an additional, optional property:
>>> "memory-region-names". This way, the software will have a way to
>> build
>>> the carveout region names without relying on the DT node names.
>>
>> "After update all existing DT tree, this will be required.
>>
>>>
>>> Signed-off-by: Laurentiu Mihalcea <[email protected]>
>>> ---
>>
>> Additional information to help understand why it is important.
>>
>> 1. at thread wrong use vdevbuffer insteand vdev0buffer as node name
>> https://lore.kernel.org/imx/[email protected]
>> ernel.org/
>> 2. similar case happen at
>> https://lore.kernel.org/imx/[email protected]
>> ernel.org/
>>
>> Suppose these problem should be detected by dt binding check instead
>> of sashkio ai.
>>
>>
>>>  .../devicetree/bindings/remoteproc/fsl,imx-rproc.yaml         | 4 ++++
>>>  1 file changed, 4 insertions(+)
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/remoteproc/fsl,imx-
>> rproc.yaml
>>> b/Documentation/devicetree/bindings/remoteproc/fsl,imx-
>> rproc.yaml
>>> index c18f71b64889..8e3e6676a95e 100644
>>> --- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-
>> rproc.yaml
>>> +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-
>> rproc.yaml
>>> @@ -62,6 +62,10 @@ properties:
>>>      minItems: 1
>>>      maxItems: 32
>>>
>>> +  memory-region-names:
>>> +    minItems: 1
>>> +    maxItems: 32
>>> +
>>
>> Need restrict names
>>
>>   memory-region-names:
>>     description:
>>       Names for the memory-region phandles. Each entry must be one of
>> the
>>       following recognized names. "vdev0buffer" is the shared buffer for
>>       virtio device 0, handled automatically by the rproc virtio framework.
>>       "vdev<n>ring<n>" (e.g. "vdev0vring0", "vdev0vring1") are the virtio
>>       vring buffers for device N, also managed by the virtio framework.
>>       "rsc-table" is the resource table region used to share the resource
>>       table between Linux and the remote processor when it is pre-
>> loaded in
>>       memory. All other entries are treated as generic carveout regions
>> that
>>       are mapped and made available to the remote processor.
>>     minItems: 1
>>     maxItems: 32
>>     items:
>>       anyOf:
>>         - const: rsc-table
>>         - pattern: "^vdev[0-9]+buffer$"
>>         - pattern: "^vdev[0-9]+vring[0-9]+$"
> 
> There might be other entries such as m4_reserved or m7_reserved

Then how about an additional pattern? Something like:

- pattern: "^remote-reserved[0-9]$"

I believe a board could, in theory, have more of these additional carveouts, 
depending on
the range of firmware provided by the vendor's BSP (or the community) for that 
particular board.

Still need to put this in code and test it, though.

Peng Fan, Frank Li, would this work for the NXP platforms?

Franceso, could you please let me know if this'll work for the Toradex 
platforms?

Reply via email to