All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 0/3] Initial Renesas R-Car remoteproc support
@ 2021-10-27  7:30 Julien Massot
  2021-10-27  7:30 ` [RFC PATCH 1/3] dt-bindings: remoteproc: Add Renesas R-Car Julien Massot
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Julien Massot @ 2021-10-27  7:30 UTC (permalink / raw)
  To: bjorn.andersson, mathieu.poirier, robh+dt, geert+renesas
  Cc: linux-renesas-soc, linux-remoteproc, devicetree, Julien Massot

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@iot.bzh/
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 |  16 ++
 arch/arm64/boot/dts/renesas/r8a77951.dtsi     |   7 +
 drivers/remoteproc/Kconfig                    |  11 +
 drivers/remoteproc/Makefile                   |   1 +
 drivers/remoteproc/rcar_rproc.c               | 229 ++++++++++++++++++
 6 files changed, 330 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/renesas,rcar-rproc.yaml
 create mode 100644 drivers/remoteproc/rcar_rproc.c

-- 
2.31.1



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-11-15 13:36 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-27  7:30 [RFC PATCH 0/3] Initial Renesas R-Car remoteproc support Julien Massot
2021-10-27  7:30 ` [RFC PATCH 1/3] dt-bindings: remoteproc: Add Renesas R-Car Julien Massot
2021-10-27 14:12   ` Rob Herring
2021-11-15 13:34     ` Julien Massot
2021-10-27  7:30 ` [RFC PATCH 2/3] arm64: dts: renesas: r8a77951: Add CR7 realtime processor Julien Massot
2021-10-27  7:30 ` [RFC PATCH 3/3] remoteproc: Add Renesas rcar driver Julien Massot
2021-11-08 18:42   ` Mathieu Poirier
2021-11-09  8:09     ` Geert Uytterhoeven
2021-11-15 13:30       ` Julien Massot
2021-11-15 13:17     ` Julien Massot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.