mbox series

[V4,0/3] gpio: modepin: Add driver support for modepin GPIO controller

Message ID 20210922135319.3128153-1-piyush.mehta@xilinx.com
Headers show
Series gpio: modepin: Add driver support for modepin GPIO controller | expand

Message

Piyush Mehta Sept. 22, 2021, 1:53 p.m. UTC
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.GA1961487@robh.at.kernel.org/T/#u

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.3000667-1-piyush.mehta@xilinx.com/#t

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-3840-9f61-f6cd6e5745d2@xilinx.com/T/#u
---

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

Comments

Bartosz Golaszewski Sept. 23, 2021, 8:10 a.m. UTC | #1
On Wed, Sep 22, 2021 at 3:53 PM Piyush Mehta <piyush.mehta@xilinx.com> wrote:
>
> 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.GA1961487@robh.at.kernel.org/T/#u
>
> 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.3000667-1-piyush.mehta@xilinx.com/#t
>
> 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-3840-9f61-f6cd6e5745d2@xilinx.com/T/#u
> ---
>
> 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
>

Series queued for next. Thanks!

Bart