Re: [PATCH v6 0/5] Enable Remote GPIO over RPMSG on i.MX Platform

2026-02-07 Thread Shenwei Wang


> -Original Message-
> From: Mathieu Poirier 
> Sent: Wednesday, January 14, 2026 11:09 AM
> To: Shenwei Wang 
> Cc: Linus Walleij ; Bartosz Golaszewski ;
> Rob Herring ; Krzysztof Kozlowski ;
> Conor Dooley ; Bjorn Andersson
> On Fri, Dec 12, 2025 at 01:43:36PM -0600, Shenwei Wang wrote:
> > Support the remote devices on the remote processor via the RPMSG bus
> > on i.MX platform.
> >
> > Changes in v6:
> >  - make the driver more generic with the actions below:
> >  rename the driver file to gpio-rpmsg.c
> >  remove the imx related info in the function and variable names
> >  rename the imx_rpmsg.h to rpdev_info.h
> >  create a gpio-rpmsg.yaml and refer it in imx_rproc.yaml
> >  - update the gpio-rpmsg.rst according to the feedback from Andrew and
> >move the source file to driver-api/gpio
> >  - fix the bug reported by Zhongqiu Han
> >  - remove the I2C related info
> >
> 
> NAK - I asked to use the virtio interface (in this case virtio-gpio), 
> something I do
> not see in the above summary and the first 2 patches in this series.  This 
> work will
> not move forward until that happens.

Never mind. Based on Bjorn’s review comments, I am restructuring the code to 
use the rpmsg_driver 
model instead of the platform_driver model. 

The virtio‑gpio use case is outside the scope of this patch set, since those 
devices are exposed over
the rpmsg bus.

Regards,
Shenwei

> 
> > Changes in v5:
> >  - move the gpio-rpmsg.rst from admin-guide to staging directory after
> >discussion with Randy Dunlap.
> >  - add include files with some code improvements per Bartosz's comments.
> >
> > Changes in v4:
> >  - add a documentation to describe the transport protocol per Andrew's
> >comments.
> >  - add a new handler to get the gpio direction.
> >
> > Changes in v3:
> >  - fix various format issue and return value check per Peng 's review
> >comments.
> >  - add the logic to also populate the subnodes which are not in the
> >device map per Arnaud's request. (in imx_rproc.c)
> >  - update the yaml per Frank's review comments.
> >
> > Changes in v2:
> >  - re-implemented the gpio driver per Linus Walleij's feedback by using
> >GPIOLIB_IRQCHIP helper library.
> >  - fix various format issue per Mathieu/Peng 's review comments.
> >  - update the yaml doc per Rob's feedback
> >
> > Shenwei Wang (5):
> >   dt-bindings: remoteproc: imx_rproc: Add "rpmsg" subnode support
> >   remoteproc: imx_rproc: Populate devices under "rpmsg" subnode
> >   docs: driver-api: gpio: generic gpio driver over rpmsg bus
> >   gpio: rpmsg: add generic rpmsg GPIO driver
> >   arm64: dts: imx8ulp: Add rpmsg node under imx_rproc
> >
> >  .../devicetree/bindings/gpio/gpio-rpmsg.yaml  |  49 ++
> >  .../bindings/remoteproc/fsl,imx-rproc.yaml|  54 ++
> >  Documentation/driver-api/gpio/gpio-rpmsg.rst  | 232 +
> >  Documentation/driver-api/gpio/index.rst   |   1 +
> >  arch/arm64/boot/dts/freescale/imx8ulp.dtsi|  27 +
> >  drivers/gpio/Kconfig  |  16 +
> >  drivers/gpio/Makefile |   1 +
> >  drivers/gpio/gpio-rpmsg.c | 490 ++
> >  drivers/remoteproc/imx_rproc.c| 143 +
> >  include/linux/rpmsg/rpdev_info.h  |  33 ++
> >  10 files changed, 1046 insertions(+)
> >  create mode 100644
> > Documentation/devicetree/bindings/gpio/gpio-rpmsg.yaml
> >  create mode 100644 Documentation/driver-api/gpio/gpio-rpmsg.rst
> >  create mode 100644 drivers/gpio/gpio-rpmsg.c  create mode 100644
> > include/linux/rpmsg/rpdev_info.h
> >
> > --
> > 2.43.0
> >


Re: [PATCH v6 0/5] Enable Remote GPIO over RPMSG on i.MX Platform

2026-01-14 Thread Mathieu Poirier
On Fri, Dec 12, 2025 at 01:43:36PM -0600, Shenwei Wang wrote:
> Support the remote devices on the remote processor via the RPMSG bus on
> i.MX platform.
> 
> Changes in v6:
>  - make the driver more generic with the actions below:
>  rename the driver file to gpio-rpmsg.c
>  remove the imx related info in the function and variable names
>  rename the imx_rpmsg.h to rpdev_info.h
>  create a gpio-rpmsg.yaml and refer it in imx_rproc.yaml
>  - update the gpio-rpmsg.rst according to the feedback from Andrew and
>move the source file to driver-api/gpio
>  - fix the bug reported by Zhongqiu Han
>  - remove the I2C related info
>

NAK - I asked to use the virtio interface (in this case virtio-gpio), something
I do not see in the above summary and the first 2 patches in this series.  This
work will not move forward until that happens.
 
> Changes in v5:
>  - move the gpio-rpmsg.rst from admin-guide to staging directory after
>discussion with Randy Dunlap.
>  - add include files with some code improvements per Bartosz's comments.
> 
> Changes in v4:
>  - add a documentation to describe the transport protocol per Andrew's
>comments.
>  - add a new handler to get the gpio direction.
> 
> Changes in v3:
>  - fix various format issue and return value check per Peng 's review
>comments.
>  - add the logic to also populate the subnodes which are not in the
>device map per Arnaud's request. (in imx_rproc.c)
>  - update the yaml per Frank's review comments.
> 
> Changes in v2:
>  - re-implemented the gpio driver per Linus Walleij's feedback by using
>GPIOLIB_IRQCHIP helper library.
>  - fix various format issue per Mathieu/Peng 's review comments.
>  - update the yaml doc per Rob's feedback
> 
> Shenwei Wang (5):
>   dt-bindings: remoteproc: imx_rproc: Add "rpmsg" subnode support
>   remoteproc: imx_rproc: Populate devices under "rpmsg" subnode
>   docs: driver-api: gpio: generic gpio driver over rpmsg bus
>   gpio: rpmsg: add generic rpmsg GPIO driver
>   arm64: dts: imx8ulp: Add rpmsg node under imx_rproc
> 
>  .../devicetree/bindings/gpio/gpio-rpmsg.yaml  |  49 ++
>  .../bindings/remoteproc/fsl,imx-rproc.yaml|  54 ++
>  Documentation/driver-api/gpio/gpio-rpmsg.rst  | 232 +
>  Documentation/driver-api/gpio/index.rst   |   1 +
>  arch/arm64/boot/dts/freescale/imx8ulp.dtsi|  27 +
>  drivers/gpio/Kconfig  |  16 +
>  drivers/gpio/Makefile |   1 +
>  drivers/gpio/gpio-rpmsg.c | 490 ++
>  drivers/remoteproc/imx_rproc.c| 143 +
>  include/linux/rpmsg/rpdev_info.h  |  33 ++
>  10 files changed, 1046 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/gpio/gpio-rpmsg.yaml
>  create mode 100644 Documentation/driver-api/gpio/gpio-rpmsg.rst
>  create mode 100644 drivers/gpio/gpio-rpmsg.c
>  create mode 100644 include/linux/rpmsg/rpdev_info.h
> 
> --
> 2.43.0
>