]> git.baikalelectronics.ru Git - kernel.git/commit
remoteproc/keystone: Add a remoteproc driver for Keystone 2 DSPs
authorSuman Anna <s-anna@ti.com>
Tue, 13 Jun 2017 23:45:12 +0000 (18:45 -0500)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Mon, 26 Jun 2017 20:02:38 +0000 (13:02 -0700)
commit83bf8664d3724c00545d53b89aa28ebb771d84ef
tree3d4e0a932784e70b4ddc7a677a76e37a6e83d371
parentbaedcfd2ad5ed376cc3d9d5b8af2309b2ffd5534
remoteproc/keystone: Add a remoteproc driver for Keystone 2 DSPs

The Texas Instrument's Keystone 2 family of SoCs has 1 or more
TMS320C66x DSP Core Subsystems (C66x CorePacs). Each subsystem has
a C66x Fixed/Floating-Point DSP Core, with 32KB of L1P and L1D SRAMs,
that can be configured and partitioned as either RAM and/or Cache,
and 1 MB of L2 SRAM. The CorePac also includes an Internal DMA (IDMA),
External Memory Controller (EMC), Extended Memory Controller (XMC)
with a Memory Protection and Address Extension (MPAX) unit, a Bandwidth
Management (BWM) unit, an Interrupt Controller (INTC) and a Powerdown
Controller (PDC).

A new remoteproc module is added to perform the device management of
these DSP devices. The driver expects the firmware names to be of the
form "keystone-dsp<X>-fw", where X is the corresponding DSP number, and
uses the standard remoteproc core ELF loader. The support is limited
to images only using the DSP internal memories at the moment. This
remoteproc driver is also designed to work with virtio, and uses the
IPC Generation registers for performing the virtio signalling and
getting notified of exceptions.

The driver currently supports the 66AK2H/66AK2K, 66AK2L and 66AK2E
SoCs.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/remoteproc/Kconfig
drivers/remoteproc/Makefile
drivers/remoteproc/keystone_remoteproc.c [new file with mode: 0644]