Message ID | 20230306110934.2736465-1-danishanwar@ti.com (mailing list archive) |
---|---|
Headers | show |
Series | Introduce PRU platform consumer API | expand |
On Mon, Mar 06, 2023 at 04:39:28PM +0530, MD Danish Anwar wrote: > 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. All of them have > already been 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 > 3) drivers/remoteproc/pru_rproc.c > Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml > > 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 is the v3 of the old patch series[1]. This doesn't have any functional > changes, the old series has been rebased on linux-next (tag: next-20230306). > > This series depends on another series which is already merged in the remoteproc > tree[2] and is part of v6.3-rc1. This series and the remoteproc series form the > PRUSS consumer API which can be used by consumer drivers to utilize the PRUs. > > One example of the consumer driver is the PRU-ICSSG ethernet driver [3],which > depends on this series and the remoteproc series[2]. > > [1] https://lore.kernel.org/all/20220418123004.9332-1-p-mohan@ti.com/ > [2] https://lore.kernel.org/all/20230106121046.886863-1-danishanwar@ti.com/#t > [3] https://lore.kernel.org/all/20230210114957.2667963-1-danishanwar@ti.com/ > > Thanks and Regards, > Md Danish Anwar > > 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_driver.h | 72 ++++++--- > include/linux/remoteproc/pruss.h | 221 ++++++++++++++++++++++++++ > 3 files changed, 526 insertions(+), 24 deletions(-) The last revision of this set was sent out on April 18th 2022... It is always very difficult to follow-up with a patchset when it has been this long. Moreover, you added a SoB to patch 1 and 2 but none of the other ones. Roger had comments on the previous set - I will look at this revision when he has provided his RB for this entire set. Thanks, Mathieu > > -- > 2.25.1 >