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

Reply via email to