Commit 6b291e80 authored by Tanmay Shah's avatar Tanmay Shah Committed by Mathieu Poirier
Browse files

drivers: remoteproc: Add Xilinx r5 remoteproc driver



This driver enables r5f dual core Real time Processing Unit subsystem
available on Xilinx Zynq Ultrascale MPSoC Platform. RPU subsystem
(cluster) can be configured in different modes e.g. split mode in which
two r5f cores work independent of each other and lock-step mode in which
both r5f cores execute same code clock-for-clock and notify if the
result is different.

The Xilinx r5 Remoteproc Driver boots the RPU cores via calls to the Xilinx
Platform Management Unit that handles the R5 configuration, memory access
and R5 lifecycle management. The interface to this manager is done in this
driver via zynqmp_pm_* function calls.

Signed-off-by: default avatarBen Levinsky <ben.levinsky@amd.com>
Signed-off-by: default avatarTanmay Shah <tanmay.shah@amd.com>
Reported-by: default avatarkernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/20221114233940.2096237-7-tanmay.shah@amd.com


Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
parent a5e56980
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -352,6 +352,19 @@ config TI_K3_R5_REMOTEPROC
	  It's safe to say N here if you're not interested in utilizing
	  a slave processor.

config XLNX_R5_REMOTEPROC
	tristate "Xilinx R5 remoteproc support"
	depends on PM && ARCH_ZYNQMP
	select ZYNQMP_FIRMWARE
	select RPMSG_VIRTIO
	select MAILBOX
	select ZYNQMP_IPI_MBOX
	help
	  Say y or m here to support Xilinx R5 remote processors via the remote
	  processor framework.

	  It's safe to say N if not interested in using RPU r5f cores.

endif # REMOTEPROC

endmenu
+1 −0
Original line number Diff line number Diff line
@@ -38,3 +38,4 @@ obj-$(CONFIG_ST_SLIM_REMOTEPROC) += st_slim_rproc.o
obj-$(CONFIG_STM32_RPROC)		+= stm32_rproc.o
obj-$(CONFIG_TI_K3_DSP_REMOTEPROC)	+= ti_k3_dsp_remoteproc.o
obj-$(CONFIG_TI_K3_R5_REMOTEPROC)	+= ti_k3_r5_remoteproc.o
obj-$(CONFIG_XLNX_R5_REMOTEPROC)	+= xlnx_r5_remoteproc.o
+1067 −0

File added.

Preview size limit exceeded, changes collapsed.