[PATCH v4 0/6] Introduce PRU remoteproc consumer API

Puranjay Mohan p-mohan at ti.com
Mon Jun 6 22:03:56 PDT 2022


Hi Mathieu,

On 06/06/22 21:45, Mathieu Poirier wrote:
> On Mon, Jun 06, 2022 at 09:56:12AM -0600, Mathieu Poirier wrote:
>> I have started to review this set, comments will come over the next few days.  I
>> will clearly inform you when I am done reviewing.
> 
> This patch is giving me several checkpatch warnings that should have been caught
> before sending the patches out to the mailing list.  As such I will not review
> this work and seriously considering adding your next revision at the very bottom
> of my queue.

I am sorry for this. I had introduced the 6th patch in v4 and it is
giving these errors. I have fixed them and sent a v5. Please don't move
the v5 to the bottom of the queue. I will be extra cautious from next time.

Thanks,
Puranjay Mohan

> 
>>
>> Thanks,
>> Mathieu
>>
>> On Fri, Jun 03, 2022 at 05:45:14PM +0530, Puranjay Mohan wrote:
>>> This is the v4 of the patch series [1]. The v3 had some comments
>>> on the DT patch that have been addressed here. The 6th patch in this
>>> series was missed in the previous versions, so, it has been added now.
>>>
>>> I have posted two more patch series that depend on this series, one to
>>> the soc tree and another to the networking tree. I had sent all the 3
>>> series, including this one as RFC [2] to get comments and to explain the
>>> dependencies.
>>>
>>> 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 PRUSS subsystem: the PRUSS platform
>>> driver, the PRUSS INTC driver and the PRUSS remoteproc driver. All 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
>>> 3) drivers/remoteproc/pru_rproc.c
>>>    Documentation/devicetree/bindings/remoteproc/ti,pru-rproc.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.
>>>
>>> [1] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220418104118.12878-1-p-mohan@ti.com/
>>> [2] https://patchwork.kernel.org/project/linux-remoteproc/cover/20220406094358.7895-1-p-mohan@ti.com/
>>>
>>> Thanks and Regards,
>>> Puranjay Mohan
>>>
>>> Roger Quadros (1):
>>>   remoteproc: pru: Add pru_rproc_set_ctable() function
>>>
>>> Suman Anna (2):
>>>   dt-bindings: remoteproc: Add PRU consumer bindings
>>>   remoteproc: pru: Make sysfs entries read-only for PRU client driven
>>>     boots
>>>
>>> Tero Kristo (3):
>>>   remoteproc: pru: Add APIs to get and put the PRU cores
>>>   remoteproc: pru: Configure firmware based on client setup
>>>   remoteproc: pru: add support for configuring GPMUX based on client
>>>     setup
>>>
>>>  .../bindings/remoteproc/ti,pru-consumer.yaml  |  69 +++++
>>>  drivers/remoteproc/pru_rproc.c                | 254 +++++++++++++++++-
>>>  include/linux/pruss.h                         |  78 ++++++
>>>  3 files changed, 396 insertions(+), 5 deletions(-)
>>>  create mode 100644 Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml
>>>  create mode 100644 include/linux/pruss.h
>>>
>>> -- 
>>> 2.17.1
>>>



More information about the linux-arm-kernel mailing list