Most of the SoCs in the R-Car gen3 SoC series such as H3,M3 and E3 have an 'Arm Realtime Core'. This Realtime core is an Arm Cortex-R7 clocked at 800MHz. This series adds initial support to load a firmware and start this remote processor through the remoteproc subsystem. This series depends on https://patchwork.kernel.org/project/linux-renesas-soc/patch/20211022122101.66998-1-julien.massot@xxxxxxx/ to be able to set the Cortex-R7 boot address. One of the way to test this driver is to use the zephyr upstream support for h3ulcb board 'blinky' demo is my favorite testing firmware. To generate a firmware with the zephyr project. follow this starting guide https://docs.zephyrproject.org/2.7.0/getting_started/index.html Then compile your zephyr demo west build -b rcar_h3ulcb_cr7 zephyr/samples/basic/blinky \ -DCONFIG_KERNEL_ENTRY=\"_vector_table\" \ --build-dir h3-blinky Then you can use h3-blinky/zephyr/zephyr.elf as a testing firmware. Patch 1/3 adds the dt-bindings Patch 2/3 adds entries into the dts/dtsi files for r8a77951, my testing platform. This driver has also been tested on E3 and M3, but lacks proper zephyr support at the moment. Modifications to r8a77951-ulcb.dts are given as usage example and may be dropped in future patchset since it use some memory range that may be reserved for other usage. Patch 3/3 is a small driver to cover basic remoteproc usage: loading firmware from filesystem, starting and stopping the Cortex-r7 processor. Julien Massot (3): dt-bindings: remoteproc: Add Renesas R-Car arm64: dts: renesas: r8a77951: Add CR7 realtime processor remoteproc: Add Renesas rcar driver .../remoteproc/renesas,rcar-rproc.yaml | 66 +++++ arch/arm64/boot/dts/renesas/r8a77951-ulcb.dts | 15 ++ arch/arm64/boot/dts/renesas/r8a77951.dtsi | 7 + drivers/remoteproc/Kconfig | 12 + drivers/remoteproc/Makefile | 1 + drivers/remoteproc/rcar_rproc.c | 226 ++++++++++++++++++ 6 files changed, 327 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/renesas,rcar-rproc.yaml create mode 100644 drivers/remoteproc/rcar_rproc.c -- 2.31.1