All of lore.kernel.org
 help / color / mirror / Atom feed
From: Puranjay Mohan <p-mohan@ti.com>
To: <linux-kernel@vger.kernel.org>
Cc: nm@ti.com, devicetree@vger.kernel.org, grygorii.strashko@ti.com,
	vigneshr@ti.com, mathieu.poirier@linaro.org, kishon@ti.com,
	linux-remoteproc@vger.kernel.org, bjorn.andersson@linaro.org,
	rogerq@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	ssantosh@kernel.org, p-mohan@ti.com,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 0/6] Introduce PRU platform consumer API
Date: Mon, 18 Apr 2022 17:59:58 +0530	[thread overview]
Message-ID: <20220418123004.9332-1-p-mohan@ti.com> (raw)

This is the re-spin of the old patch series[1]. This doesn't have any 
functional changes, the old series has been rebased on linux-next.

This series depends on another un-merged series in the remoteproc
tree[2]. This series and the remoteproc series form the PRUSS comsumer
API which can be used by consumer drivers to utilize the PRUs.

One example of the consumer driver is the PRU-ICSSG ethernet driver,
which depends on this series and the remoteproc series[2].

I had earlier sent all the three series, this, remoteproc, and the 
ethernet driver as RFC to get comments. It can be seen here[3] to
understand the overall structure.

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.

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.

[1] https://patchwork.kernel.org/project/linux-remoteproc/cover/20201211184811.6490-1-grzegorz.jaszczyk@linaro.org/
[2] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220418104118.12878-1-p-mohan@ti.com/
[3] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220406094358.7895-1-p-mohan@ti.com/

Thanks,
Puranjay Mohan

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.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Puranjay Mohan <p-mohan@ti.com>
To: <linux-kernel@vger.kernel.org>
Cc: <bjorn.andersson@linaro.org>, <mathieu.poirier@linaro.org>,
	<krzysztof.kozlowski+dt@linaro.org>,
	<linux-remoteproc@vger.kernel.org>, <devicetree@vger.kernel.org>,
	<nm@ti.com>, <ssantosh@kernel.org>, <s-anna@ti.com>,
	<p-mohan@ti.com>, <linux-arm-kernel@lists.infradead.org>,
	<rogerq@kernel.org>, <grygorii.strashko@ti.com>,
	<vigneshr@ti.com>, <kishon@ti.com>
Subject: [PATCH v2 0/6] Introduce PRU platform consumer API
Date: Mon, 18 Apr 2022 17:59:58 +0530	[thread overview]
Message-ID: <20220418123004.9332-1-p-mohan@ti.com> (raw)

This is the re-spin of the old patch series[1]. This doesn't have any 
functional changes, the old series has been rebased on linux-next.

This series depends on another un-merged series in the remoteproc
tree[2]. This series and the remoteproc series form the PRUSS comsumer
API which can be used by consumer drivers to utilize the PRUs.

One example of the consumer driver is the PRU-ICSSG ethernet driver,
which depends on this series and the remoteproc series[2].

I had earlier sent all the three series, this, remoteproc, and the 
ethernet driver as RFC to get comments. It can be seen here[3] to
understand the overall structure.

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.

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.

[1] https://patchwork.kernel.org/project/linux-remoteproc/cover/20201211184811.6490-1-grzegorz.jaszczyk@linaro.org/
[2] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220418104118.12878-1-p-mohan@ti.com/
[3] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220406094358.7895-1-p-mohan@ti.com/

Thanks,
Puranjay Mohan

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.17.1


             reply	other threads:[~2022-04-18 12:31 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-18 12:29 Puranjay Mohan [this message]
2022-04-18 12:29 ` [PATCH v2 0/6] Introduce PRU platform consumer API Puranjay Mohan
2022-04-18 12:29 ` [PATCH v2 1/6] soc: ti: pruss: Add pruss_get()/put() API Puranjay Mohan
2022-04-18 12:29   ` Puranjay Mohan
2022-04-18 12:30 ` [PATCH v2 2/6] soc: ti: pruss: Add pruss_{request, release}_mem_region() API Puranjay Mohan
2022-04-18 12:30   ` [PATCH v2 2/6] soc: ti: pruss: Add pruss_{request,release}_mem_region() API Puranjay Mohan
2022-04-18 12:30 ` [PATCH v2 3/6] soc: ti: pruss: Add pruss_cfg_read()/update() API Puranjay Mohan
2022-04-18 12:30   ` Puranjay Mohan
2022-04-18 12:30 ` [PATCH v2 4/6] soc: ti: pruss: Add helper functions to set GPI mode, MII_RT_event and XFR Puranjay Mohan
2022-04-18 12:30   ` Puranjay Mohan
2022-04-18 12:30 ` [PATCH v2 5/6] soc: ti: pruss: Add helper function to enable OCP master ports Puranjay Mohan
2022-04-18 12:30   ` Puranjay Mohan
2022-04-21  6:51   ` Tony Lindgren
2022-04-21  6:51     ` Tony Lindgren
2022-04-18 12:30 ` [PATCH v2 6/6] soc: ti: pruss: Add helper functions to get/set PRUSS_CFG_GPMUX Puranjay Mohan
2022-04-18 12:30   ` Puranjay Mohan
2022-09-12 14:20   ` Romain Naour
2022-09-12 14:20     ` Romain Naour
2022-09-14 13:15     ` Roger Quadros
2022-09-14 13:15       ` Roger Quadros
2022-09-15  8:27       ` Romain Naour
2022-09-15  8:27         ` Romain Naour

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220418123004.9332-1-p-mohan@ti.com \
    --to=p-mohan@ti.com \
    --cc=bjorn.andersson@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=grygorii.strashko@ti.com \
    --cc=kishon@ti.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=nm@ti.com \
    --cc=rogerq@kernel.org \
    --cc=ssantosh@kernel.org \
    --cc=vigneshr@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.