RE: [PATCH v9 0/5] Provide basic driver to control Arm R5 co-processor found on Xilinx ZynqMP

Ben Levinsky
2020-08-27T15:34:50Z

Hi Michael,

Thanks for comment. Maybe I missed some of the comments then? I had thought that your comments were the following and that I had answered them in the code:
V8 3/5:
- zynqmp_pm_set_rpu_mode: pass arg1 instead of 0 to zynqmp_pm_invoke_fn
This should be reflected in v9 3/5
- update kernel docs for zynqmp_pm_set_rpu_mode
may have misunderstood the comment here. I updated the function and its comments above the function so that there is no obsolete iocl_id or arg2 mentioned
V8 5/5:
- " In the event that zynqmp_r5_probe() fails before zynqmp_r5_setup_mbox()
has run, this will be called on an uninitialized skb_queue. (Also
obviously an issue once mailboxes are made optional again)."
To remedy this I added logic in v9 in the zynqmp_r5_release() function so that the driver checks if a pointer field in the struct is NULL or no before discarding skb's

Were there other comments?

With that being said, I will make sure the R51 case is more completely covered.

Thanks
Ben

> -----Original Message-----
> From: Michael Auchter <michael.auchter@ni.com>
> Sent: Thursday, August 27, 2020 6:48 AM
> To: Ben Levinsky <BLEVINSK@xilinx.com>
> Cc: Stefano Stabellini <stefanos@xilinx.com>; Michal Simek
> <michals@xilinx.com>; devicetree@vger.kernel.org;
> mathieu.poirier@linaro.org; Ed T. Mooring <emooring@xilinx.com>; linux-
> remoteproc@vger.kernel.org; linux-kernel@vger.kernel.org; Jiaying Liang
> <jliang@xilinx.com>; robh+dt@kernel.org; linux-arm-
> kernel@lists.infradead.org
> Subject: Re: [PATCH v9 0/5] Provide basic driver to control Arm R5 co-
> processor found on Xilinx ZynqMP
>
> Hey Ben,
>
> On Wed, Aug 26, 2020 at 06:58:05PM -0700, Ben Levinsky wrote:
> > v10:
> > - add include types.h to xlnx-zynqmp.h for compilation
>
> I appreciate the quick turnaround on v10, but it looks like much of my
> feedback on v9 went unacknowledged.
>
> Most concerning is the fact that loading firmware on to R5 1 is _still_
> broken in v10 due to the incorrect TCM banks being used.
>
> Thanks,
> Michael
>
> >
> > Ben Levinsky (5):
> > firmware: xilinx: Add ZynqMP firmware ioctl enums for RPU
> > configuration.
> > firmware: xilinx: Add shutdown/wakeup APIs
> > firmware: xilinx: Add RPU configuration APIs
> > dt-bindings: remoteproc: Add documentation for ZynqMP R5 rproc
> > bindings
> > remoteproc: Add initial zynqmp R5 remoteproc driver
> >
> > .../xilinx,zynqmp-r5-remoteproc.yaml | 113 +++
> > drivers/firmware/xilinx/zynqmp.c | 86 ++
> > drivers/remoteproc/Kconfig | 10 +
> > drivers/remoteproc/Makefile | 1 +
> > drivers/remoteproc/zynqmp_r5_remoteproc.c | 898
> ++++++++++++++++++
> > include/linux/firmware/xlnx-zynqmp.h | 63 ++
> > 6 files changed, 1171 insertions(+)
> > create mode 100644
> Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-
> remoteproc.yaml
> > create mode 100644 drivers/remoteproc/zynqmp_r5_remoteproc.c
> >
> > --
> > 2.17.1
> >