Re: [PATCH v2 0/4] of: Common "memory-region" parsing

From: Tanmay Shah
Date: Thu May 01 2025 - 19:57:20 EST




On 5/1/25 10:44 AM, Tanmay Shah wrote:
Hi Mathieu,

I tested this patchset on top of recent for-next branch. I don't see issue on AMD-xlnx ZynqMP platform. With this:

Tested-by: Tanmay Shah <tanmay.shah@xxxxxxx>


Hi Mathieu,

Looks like I said it too soon. Firmware loading works with this series, but RPMsg doesn't work. I am debugging further and will provide inputs once I find bug on xlnx_r5_remoteproc driver.

Please ignore above TB for now.

Thanks,
Tanmay

On 4/24/25 9:14 AM, Mathieu Poirier wrote:
Arnaud, Daniel, Iuliana, Andrew and Tanmay - please test this patchset
on the platforms you are working on.

Thanks,
Mathieu

On Wed, 23 Apr 2025 at 13:42, Rob Herring (Arm) <robh@xxxxxxxxxx> wrote:

While there's a common function to parse "memory-region" properties for
DMA pool regions, there's not anything for driver private regions. As a
result, drivers have resorted to parsing "memory-region" properties
themselves repeating the same pattern over and over. To fix this, this
series adds 2 functions to handle those cases:
of_reserved_mem_region_to_resource() and of_reserved_mem_region_count().

I've converted the whole tree, but just including remoteproc here as
it has the most cases. I intend to apply the first 3 patches for 6.16
so the driver conversions can be applied for 6.17.

A git tree with all the drivers converted is here[1].

v2:
- Fix of_dma_set_restricted_buffer() to maintain behavior on warning msg
- Export devm_ioremap_resource_wc()
- Rework handling of resource name to drop unit-address from name as it
   was before.
- Link to v1:
   https://lore.kernel.org/all/20250317232426.952188-1-robh@xxxxxxxxxx

[1] git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git dt/ memory-region

Signed-off-by: Rob Herring (Arm) <robh@xxxxxxxxxx>
---
Rob Herring (Arm) (4):
       of: reserved_mem: Add functions to parse "memory-region"
       of: Simplify of_dma_set_restricted_buffer() to use of_for_each_phandle()
       devres: Export devm_ioremap_resource_wc()
       remoteproc: Use of_reserved_mem_region_* functions for "memory-region"

  drivers/of/device.c                       | 31 +++++-------
  drivers/of/of_reserved_mem.c              | 80 ++++++++++++++++++++ +++++++++++
  drivers/remoteproc/imx_dsp_rproc.c        | 45 +++++++----------
  drivers/remoteproc/imx_rproc.c            | 68 ++++++++++ +---------------
  drivers/remoteproc/qcom_q6v5_adsp.c       | 24 ++++------
  drivers/remoteproc/qcom_q6v5_mss.c        | 60 ++++++++---------------
  drivers/remoteproc/qcom_q6v5_pas.c        | 69 +++++++++ +----------------
  drivers/remoteproc/qcom_q6v5_wcss.c       | 25 ++++------
  drivers/remoteproc/qcom_wcnss.c           | 23 ++++-----
  drivers/remoteproc/rcar_rproc.c           | 36 ++++++--------
  drivers/remoteproc/st_remoteproc.c        | 41 ++++++++--------
  drivers/remoteproc/stm32_rproc.c          | 44 ++++++++---------
  drivers/remoteproc/ti_k3_dsp_remoteproc.c | 28 +++++------
  drivers/remoteproc/ti_k3_m4_remoteproc.c  | 28 +++++------
  drivers/remoteproc/ti_k3_r5_remoteproc.c  | 28 +++++------
  drivers/remoteproc/xlnx_r5_remoteproc.c   | 51 ++++++++------------
  include/linux/of_reserved_mem.h           | 26 ++++++++++
  lib/devres.c                              |  1 +
  18 files changed, 339 insertions(+), 369 deletions(-)
---
base-commit: 0af2f6be1b4281385b618cb86ad946eded089ac8
change-id: 20250423-dt-memory-region-v2-a2b15caacc63

Best regards,
--
Rob Herring (Arm) <robh@xxxxxxxxxx>