[PATCH v2 0/5] remoteproc: arm64: Introduce remoteproc support for Corstone-1000 External Systems

Abdellatif El Khlifi
2024-08-22T17:11:09Z

The Corstone-1000 IoT Reference Design Platform [A] supports up to two External
Systems processors.

This patchset allows to control these processors through the remoteproc
subsystem.

The Corstone-1000 implements the SSE-710 subsystem [B] which defines the
MMIO-mapped reset registers (EXT_SYS*) used for controlling the
External Systems [C].

This patchset provides the following:

- Device tree bindings for the SSE-710 subsystem with syscon support
- Device tree bindings for the SSE-710 External System
- Corstone-1000 External System, syscon and MHUs device tree nodes
- Arm MHUv2 Mailbox [F] device tree nodes for Corstone-1000
- Corstone-1000 remoteproc driver with regmap support

For more details, please see the SSE-710 External System Remote
Processor bindings [D] and the SSE-710 Host Base System Control bindings [E].

[A]: https://developer.arm.com/Processors/Corstone-1000
[B]: https://developer.arm.com/documentation/102342/latest/
[C]: https://developer.arm.com/documentation/102342/0000/Programmers-model/Register-descriptions/Host-Base-System-Control-register-summary
[D]: Documentation/devicetree/bindings/remoteproc/arm,sse710-extsys.yaml
[E]: Documentation/devicetree/bindings/arm/arm,sse710-host-base-sysctrl.yaml
[F]: Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml

Changelog:
============

v2:

* provide SSE-710 syscon bindings
* provide SSE-710 External System bindings
* add Corstone-1000 External System node under syscon
* add Arm MHUv2 Mailbox device tree nodes for Corstone-1000
* add regmap support for the driver
* use devm_rproc_* APIs
* refactoring

v1: [1]

* introduce the Corstone-1000 remoteproc support

List of previous patches:

[1]: https://lore.kernel.org/all/20240301164227.339208-1-abdellatif.elkhlifi@arm.com/

Cheers,
Abdellatif

Abdellatif El Khlifi (5):
dt-bindings: remoteproc: sse710: Add the External Systems remote
processors
dt-bindings: arm: sse710: Add Host Base System Control
arm64: dts: corstone1000: Add MHU nodes used by the External System
arm64: dts: corstone1000: Add External System support
remoteproc: arm64: corstone1000: Add the External Systems driver

.../arm/arm,sse710-host-base-sysctrl.yaml | 56 +++
.../remoteproc/arm,sse710-extsys.yaml | 90 +++++
arch/arm64/boot/dts/arm/corstone1000.dtsi | 34 +-
drivers/remoteproc/Kconfig | 14 +
drivers/remoteproc/Makefile | 1 +
drivers/remoteproc/corstone1000_rproc.c | 350 ++++++++++++++++++
6 files changed, 544 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/arm/arm,sse710-host-base-sysctrl.yaml
create mode 100644 Documentation/devicetree/bindings/remoteproc/arm,sse710-extsys.yaml
create mode 100644 drivers/remoteproc/corstone1000_rproc.c

base-commit: 8fa052c29e509f3e47d56d7fc2ca28094d78c60a
--
2.25.1