linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] Introduce PRU platform consumer API
@ 2020-12-11 18:48 Grzegorz Jaszczyk
  2020-12-11 18:48 ` [PATCH 1/6] soc: ti: pruss: Add pruss_get()/put() API Grzegorz Jaszczyk
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Grzegorz Jaszczyk @ 2020-12-11 18:48 UTC (permalink / raw)
  To: ssantosh, s-anna
  Cc: grzegorz.jaszczyk, santosh.shilimkar, lee.jones, linux-kernel,
	linux-omap, linux-arm-kernel, praneeth, tony, linux-remoteproc,
	mathieu.poirier

Hi All,

The Programmable Real-Time Unit and Industrial Communication Subsystem (PRU-ICSS
or simply PRUSS) on various TI SoCs consists of dual 32-bit RISC cores
(Programmable Real-Time Units, or PRUs) for program execution.

There are 3 foundation components for TI PRUSS subsystem: the PRUSS platform
driver, the PRUSS INTC driver and the PRUSS remoteproc driver. Two first were
already merged and can be found under:
1) drivers/soc/ti/pruss.c
   Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml
2) drivers/irqchip/irq-pruss-intc.c
   Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc.yaml

The third one [1] was accepted and applied to andersson/remoteproc.git
(refs/heads/for-next): [2] but is not merged yet.

The programmable nature of the PRUs provide flexibility to implement custom
peripheral interfaces, fast real-time responses, or specialized data handling.
Example of a PRU consumer drivers will be:
  - Software UART over PRUSS
  - PRU-ICSS Ethernet EMAC

In order to make usage of common PRU resources and allow the consumer drivers to
configure the PRU hardware for specific usage the PRU API is introduced.

This patch set depends on "Introduce PRU remoteproc consumer API" set [3], which
is complementary to this one but goes for different, remoteproc sub-system.

[1] https://patchwork.kernel.org/project/linux-arm-kernel/cover/20201208141002.17777-1-grzegorz.jaszczyk@linaro.org/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/commit/?h=for-next&id=b44786c9bdc46eac8388843f0a6116369cb18bca
[3] https://patchwork.kernel.org/project/linux-arm-kernel/cover/20201211142933.25784-1-grzegorz.jaszczyk@linaro.org/

Best regards,
Grzegorz

Andrew F. Davis (1):
  soc: ti: pruss: Add pruss_{request,release}_mem_region() API

Suman Anna (3):
  soc: ti: pruss: Add pruss_cfg_read()/update() API
  soc: ti: pruss: Add helper functions to set GPI mode, MII_RT_event and
    XFR
  soc: ti: pruss: Add helper function to enable OCP master ports

Tero Kristo (2):
  soc: ti: pruss: Add pruss_get()/put() API
  soc: ti: pruss: Add helper functions to get/set PRUSS_CFG_GPMUX

 drivers/soc/ti/pruss.c       | 257 ++++++++++++++++++++++++++++++++++-
 include/linux/pruss.h        | 221 ++++++++++++++++++++++++++++++
 include/linux/pruss_driver.h |  72 +++++++---
 3 files changed, 526 insertions(+), 24 deletions(-)

-- 
2.29.0


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

end of thread, other threads:[~2021-12-26 13:06 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11 18:48 [PATCH 0/6] Introduce PRU platform consumer API Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 1/6] soc: ti: pruss: Add pruss_get()/put() API Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 2/6] soc: ti: pruss: Add pruss_{request,release}_mem_region() API Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 3/6] soc: ti: pruss: Add pruss_cfg_read()/update() API Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 4/6] soc: ti: pruss: Add helper functions to set GPI mode, MII_RT_event and XFR Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 5/6] soc: ti: pruss: Add helper function to enable OCP master ports Grzegorz Jaszczyk
2020-12-11 18:48 ` [PATCH 6/6] soc: ti: pruss: Add helper functions to get/set PRUSS_CFG_GPMUX Grzegorz Jaszczyk
2021-12-26 13:06 ` [PATCH 0/6] Introduce PRU platform consumer API Christian Gmeiner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).