From: Mathieu Poirier <mathieu.poirier@linaro.org>
To: Ben Levinsky <ben.levinsky@amd.com>
Cc: Bjorn Andersson <andersson@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, Tanmay Shah <tanmay.shah@amd.com>,
Michal Simek <michal.simek@amd.com>
Subject: Re: [PATCH v6 0/2] remoteproc: add AMD MicroBlaze/V BRAM-based remote processor driver
Date: Mon, 20 Jul 2026 11:18:19 -0600 [thread overview]
Message-ID: <al5YW9bWep4NKeDl@p14s> (raw)
In-Reply-To: <20260714202441.554065-1-ben.levinsky@amd.com>
On Tue, Jul 14, 2026 at 01:24:39PM -0700, Ben Levinsky wrote:
> Add a MicroBlaze/V BRAM-based remoteproc driver and corresponding binding
> for AMD soft processors located in programmable logic.
>
> The series models a soft-core processor subsystem that executes firmware
> from dual-port BRAM. The BRAM window is described in the processor-local
> address space and translated to the Linux-visible system physical address
> through the parent bus ranges property.
>
> This series depends on the remoteproc cleanup series available here:
>
> https://lore.kernel.org/linux-remoteproc/ah2aVdlsLqy9aeHP@p14s/
>
> That series adds the common WC ioremap carveout callbacks and optional
> ELF resource-table helper used by patch 2.
>
> v6:
> Patch 1, dt-bindings: remoteproc: document AMD MicroBlaze/V BRAM-based
> rproc
>
> - Corrected Krzysztof Kozlowski's Reviewed-by trailer to match the tag
> provided during the v3 review.
>
> Patch 2, remoteproc: add AMD MicroBlaze/V BRAM-based remote processor
> driver
>
> - Renamed the driver source and object from amd_bram_rproc to
> amd_mbv_bram_rproc.
Applied.
Thanks,
Mathieu
>
> v5:
> Patch 1, dt-bindings: remoteproc: document AMD MicroBlaze/V BRAM-based
> rproc
>
> - Updated the binding title and patch wording to use MicroBlaze/V.
> - Added Reviewed-by from Krzysztof Kozlowski.
>
> Patch 2, remoteproc: add AMD MicroBlaze/V BRAM-based remote processor
> driver
>
> - Renamed the Kconfig symbol to AMD_MBV_BRAM_REMOTEPROC.
> - Updated the Kconfig prompt to use MicroBlaze/V.
> - Removed the reset GPIO and clock sentence from the Kconfig help text.
> - Updated the driver and module descriptions to use MicroBlaze/V.
>
> v4:
> Patch 1, dt-bindings: remoteproc: document AMD BRAM-based rproc
>
> - Sorted the SoC-specific compatible enum by name.
>
> Patch 2, remoteproc: add AMD BRAM-based remote processor driver
>
> - Dropped the driver-specific MAINTAINERS entry.
> - Trimmed the Kconfig help text.
> - Reused the common WC ioremap/iounmap carveout callbacks.
> - Reused the common optional ELF resource-table helper.
> - Used resource_size(&res) for the translated memory window size.
> - Kept the coredump segment address as the processor-local device
> address. The coredump path resolves segment addresses through
> rproc_da_to_va() against the registered carveout device address, while
> res.start is the Linux-visible system physical address after DT
> translation and may differ from the processor-local BRAM address.
>
> v3:
> This version updates the binding to use SoC-specific compatibles with
> the fallback form discussed on the thread.
>
> Patch 1, dt-bindings: remoteproc: document AMD BRAM-based rproc
>
> - Reworked the compatible schema to use SoC-specific compatibles.
> - Added amd,versal2-bram-rproc to the supported compatible list.
> - Used xlnx,zynqmp-bram-rproc as the fallback compatible.
> - Updated the example to match the new compatible scheme.
>
> Patch 2, remoteproc: add AMD BRAM-based remote processor driver
>
> - Updated the driver OF match table to bind via the
> xlnx,zynqmp-bram-rproc fallback compatible.
>
> v2:
> This version pivots the series away from a MicroBlaze-specific binding
> and driver shape and instead models a BRAM-based soft-core processor
> subsystem more generally.
>
> This follows the upstream feedback that amd,microblaze was too tied to
> the processor architecture while also being too generic as a DT
> compatible for the hardware interface being described.
>
> Patch 1, dt-bindings: remoteproc: document AMD BRAM-based rproc
>
> - Renamed the binding away from amd,microblaze and reframed it around a
> BRAM-based soft-core processor subsystem.
> - Dropped the redundant trailing "binding" wording from the patch
> subject.
> - Rewrote the binding text to describe the hardware rather than the Linux
> remoteproc framework.
> - Reworked the example to address the original dt_binding_check
> complaints about the root node and simple-pm-bus example shape.
> - Added a clocks property for the soft-core subsystem.
>
> Patch 2, remoteproc: add AMD BRAM-based remote processor driver
>
> - Renamed the driver away from the MicroBlaze-specific name to match the
> BRAM-based binding.
> - Added clock handling for the soft-core subsystem and the matching
> COMMON_CLK dependency in Kconfig.
> - Cleaned up the reset comments and removed the success dev_dbg() message
> called out in review.
>
> Ben Levinsky (2):
> dt-bindings: remoteproc: document AMD MicroBlaze/V BRAM-based rproc
> remoteproc: add AMD MicroBlaze/V BRAM-based remote processor driver
>
> .../bindings/remoteproc/amd,bram-rproc.yaml | 105 +++++++++
> drivers/remoteproc/Kconfig | 9 +
> drivers/remoteproc/Makefile | 1 +
> drivers/remoteproc/amd_mbv_bram_rproc.c | 213 ++++++++++++++++++
> 4 files changed, 328 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/remoteproc/amd,bram-rproc.yaml
> create mode 100644 drivers/remoteproc/amd_mbv_bram_rproc.c
>
> --
> 2.34.1
prev parent reply other threads:[~2026-07-20 17:18 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-14 20:24 [PATCH v6 0/2] remoteproc: add AMD MicroBlaze/V BRAM-based remote processor driver Ben Levinsky
2026-07-14 20:24 ` [PATCH v6 1/2] dt-bindings: remoteproc: document AMD MicroBlaze/V BRAM-based rproc Ben Levinsky
2026-07-14 20:24 ` [PATCH v6 2/2] remoteproc: add AMD MicroBlaze/V BRAM-based remote processor driver Ben Levinsky
2026-07-20 17:18 ` Mathieu Poirier [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=al5YW9bWep4NKeDl@p14s \
--to=mathieu.poirier@linaro.org \
--cc=andersson@kernel.org \
--cc=ben.levinsky@amd.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=michal.simek@amd.com \
--cc=robh@kernel.org \
--cc=tanmay.shah@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox