| From: |
| Julien Massot <julien.massot-AT-iot.bzh> |
| To: |
| bjorn.andersson-AT-linaro.org, mathieu.poirier-AT-linaro.org, robh+dt-AT-kernel.org, geert+renesas-AT-glider.be |
| Subject: |
| [PATCH v1 0/3] Initial Renesas R-Car remoteproc support |
| Date: |
| Mon, 15 Nov 2021 14:50:29 +0100 |
| Message-ID: |
| <20211115135032.129227-1-julien.massot@iot.bzh> |
| Cc: |
| linux-renesas-soc-AT-vger.kernel.org, linux-remoteproc-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, Julien Massot <julien.massot-AT-iot.bzh> |
| Archive-link: |
| Article |
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/pa...
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/inde...
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