u-boot/drivers/remoteproc
Marek Vasut 5769328fab remoteproc: renesas: Add Renesas R-Car Gen4 remote processor driver
Add R-Car Gen4 APMU controller remoteproc driver capable of starting
the Cortex-R52 cores in Renesas R8A779G0 V4H/V4M SoC. The APMU IP is
in fact a power management unit capable of additional operations, but
those are not used by U-Boot so far.

This requires slight adjustment to the SPL entry point code, as that
is being executed on the Cortex-R52 #0 and the Cortex-R52 #0 enters an
endless loop once it starts the rest of the SPL on Cortex-A76 core.
The endless loop now checks for content of APMU CRBARP registers and
tests whether valid VLD_BARP and BAREN_VALID bits are set, if so, the
Cortex-R52 core exits the endless loop and jumps to address started
in CRBARP[31:18] register in ARM mode, which is a trampoline code to
jump to the final entry point.

The trampoline code is in place to avoid limitation of CRBARP[31:18]
address field, which limits the core start address to memory addresses
aligned to 0x40000 or 256 kiB . The trampoline is placed at 0x40000
aligned address and jumps to the final entry point, which can be at
an address with arbitrary alignment at instruction granularity.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-12-29 16:55:31 +01:00
..
ipu_rproc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
k3_system_controller.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
Kconfig remoteproc: renesas: Add Renesas R-Car Gen4 remote processor driver 2024-12-29 16:55:31 +01:00
Makefile remoteproc: renesas: Add Renesas R-Car Gen4 remote processor driver 2024-12-29 16:55:31 +01:00
pru_rproc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
renesas_apmu.c remoteproc: renesas: Add Renesas R-Car Gen4 remote processor driver 2024-12-29 16:55:31 +01:00
rproc-elf-loader.c sandbox: efi_loader: Correct use of addresses as pointers 2024-12-02 16:34:30 -06:00
rproc-uclass.c remoteproc: uclass: Modify uc_pdata->name to use combination of device name and device's parent name 2024-08-27 11:17:39 -06:00
sandbox_testproc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
stm32_copro.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ti_k3_arm64_rproc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ti_k3_dsp_rproc.c Merge patch series "Adding support to load secure firmware for HS devices" 2024-06-07 14:01:15 -06:00
ti_k3_r5f_rproc.c drivers: remoteproc: Remove duplicate newlines 2024-07-22 10:53:06 -06:00
ti_power_proc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ti_sci_proc.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00