|
|
Log in / Subscribe / Register

gpio: modepin: Add driver support for modepin GPIO controller

From:  Piyush Mehta <piyush.mehta-AT-xilinx.com>
To:  <arnd-AT-arndb.de>, <zou_wei-AT-huawei.com>, <gregkh-AT-linuxfoundation.org>, <linus.walleij-AT-linaro.org>, <michal.simek-AT-xilinx.com>, <wendy.liang-AT-xilinx.com>, <iwamatsu-AT-nigauri.org>, <bgolaszewski-AT-baylibre.com>, <robh+dt-AT-kernel.org>, <rajan.vaja-AT-xilinx.com>
Subject:  [PATCH V4 0/3] gpio: modepin: Add driver support for modepin GPIO controller
Date:  Wed, 22 Sep 2021 19:23:16 +0530
Message-ID:  <20210922135319.3128153-1-piyush.mehta@xilinx.com>
Cc:  <linux-gpio-AT-vger.kernel.org>, <devicetree-AT-vger.kernel.org>, <git-AT-xilinx.com>, <sgoud-AT-xilinx.com>, <linux-arm-kernel-AT-lists.infradead.org>, <linux-kernel-AT-vger.kernel.org>, Piyush Mehta <piyush.mehta-AT-xilinx.com>
Archive-link:  Article

This patch adds support for the zynqmp modepin GPIO controller and
documented for the same. GPIO modepin driver set and get the value and
status of the PS_MODE pin, based on device-tree pin configuration.
These four-bits boot-mode pins are dedicated configurable as input/output.
After the stabilization of the system,these mode pins are sampled.

To access GPIO pins, added Xilinx ZynqMP firmware MDIO API support to
set and get PS_MODE pins value and status. These APIs are interface
APIs, between the mode pin controller driver and low-level API.

---
Changes in v2:
- Added Xilinx ZynqMP firmware MMIO API support to set and get pin
  value and status.
- DT Documentation- Addressed review comments: Update commit message
- Modepin driver- Addressed review comments:
  - Update APIs
  - Removed unwanted variables
  - Handle return path for probe function

Review Comments:
https://lore.kernel.org/linux-arm-kernel/20210624205055.G...

Changes in v3:
- Update example in dt-bindings documentation
- Update probe function return value
- Remove unnecessary print and header file

Review Comments:
https://lore.kernel.org/linux-arm-kernel/20210805174219.3...

Changes in v4:
- Added input pin read status in modepin_gpio_get_value.
- Updated modepin control bit for out configuration.

Review Comments:
https://lore.kernel.org/linux-arm-kernel/554508f5-8cb5-38...
---

Piyush Mehta (3):
  firmware: zynqmp: Add MMIO read and write support for PS_MODE pin
  dt-bindings: gpio: zynqmp: Add binding documentation for modepin
  gpio: modepin: Add driver support for modepin GPIO controller

 .../bindings/gpio/xlnx,zynqmp-gpio-modepin.yaml    |  43 ++++++
 drivers/firmware/xilinx/zynqmp.c                   |  46 ++++++
 drivers/gpio/Kconfig                               |  12 ++
 drivers/gpio/Makefile                              |   1 +
 drivers/gpio/gpio-zynqmp-modepin.c                 | 162 +++++++++++++++++++++
 include/linux/firmware/xlnx-zynqmp.h               |  14 ++
 6 files changed, 278 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/gpio/xlnx,zynqmp-gpio-modepin.yaml
 create mode 100644 drivers/gpio/gpio-zynqmp-modepin.c

-- 
2.7.4



Copyright © 2021, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds