Messages in this thread |  | | From | Shenwei Wang <> | | Subject | [PATCH v13 0/4] Enable Remote GPIO over RPMSG on i.MX Platform | | Date | Wed, 22 Apr 2026 16:28:45 -0500 |
| |
Support the remote devices on the remote processor via the RPMSG bus on i.MX platform.
Changes in v13: - drop the support for legacy NXP firmware. - remove the fixed_up hooks from the rpmsg gpio driver. - code cleanup.
Changes in v12: - Fixed the "underline" warning reported by Randy.
Changes in v11: - Expand RPMSG for the first time per Shuah's review comment.
Changes in v10: - Update gpio-rpmsg.rst according to Daniel Baluta's review comments. - Add a kernel CONFIG for fixed up handlers and only enable it on i.MX products. - Fixed bugs reported by kernel test robot.
Changes in v9: - Reuse the gpio-virtio design for command and IRQ type definitions. - Remove msg_id, version, and vendor fields from the generic protocol. - Add fixed-up handlers to support legacy firmware.
Changes in v8: - Add "depends on REMOTEPROC" in Kconfig to fix the build error reported by the kernel test robot. - Move the .rst patch before the .yaml patch. - Handle the "ngpios" DT property based on Andrew's feedback.
Changes in v7: - Reworked the driver to use the rpmsg_driver framework instead of platform_driver, based on feedback from Bjorn and Arnaud. - Updated gpio-rpmsg.yaml and imx_rproc.yaml according to comments from Rob and Arnaud. - Further refinements to gpio-rpmsg.yaml per Arnaud's feedback.
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
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 (4): docs: driver-api: gpio: rpmsg gpio driver over rpmsg bus dt-bindings: remoteproc: imx_rproc: Add "rpmsg" subnode support gpio: rpmsg: add generic rpmsg GPIO driver arm64: dts: imx8ulp: Add rpmsg node under imx_rproc
.../devicetree/bindings/gpio/gpio-rpmsg.yaml | 55 ++ .../bindings/remoteproc/fsl,imx-rproc.yaml | 53 ++ Documentation/driver-api/gpio/gpio-rpmsg.rst | 266 ++++++++ Documentation/driver-api/gpio/index.rst | 1 + arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 25 + drivers/gpio/Kconfig | 17 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-rpmsg.c | 573 ++++++++++++++++++ 8 files changed, 991 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
-- 2.43.0
|  |