[PATCH v1 char-misc-next 0/5] misc: microchip: pci1xxxx: Add auxiliary bus driver and the GPIO driver for PIO function of pci1xxxx.

From: Kumaravel Thiagarajan
Date: Wed Aug 24 2022 - 10:29:21 EST


pci1xxxx is a PCIe switch with a multi-function endpoint on one of its
downstream ports. PIO function is one of the functions in the
multi-function endpoint. PIO function combines a GPIO controller and also
an interface to program pci1xxxx'x OTP & EEPROM. This patch adds an
auxiliary bus driver that enumerates separate child devices for gpio and
OTP/EEPROM interface and the gpio controller driver for the first child.

Kumaravel Thiagarajan (5):
misc: microchip: pci1xxxx: load auxiliary bus driver for the PIO
function in the multi-function endpoint of pci1xxxx device.
misc: microchip: pci1xxxx: load gpio driver for the gpio controller
auxiliary device enumerated by the auxiliary bus driver.
misc: microchip: pci1xxxx: Add functions to configure gpio pins as
input / output, get status, handle I/O for gpio pins.
misc: microchip: pci1xxxx: Add gpio irq handler and irq helper
functions irq_ack, irq_mask, irq_unmask and irq_set_type of
irq_chip.
misc: microchip: pci1xxxx: Add power management functions - suspend &
resume handlers.

MAINTAINERS | 8 +
drivers/misc/Kconfig | 1 +
drivers/misc/Makefile | 3 +-
drivers/misc/mchp_pci1xxxx/Kconfig | 10 +
drivers/misc/mchp_pci1xxxx/Makefile | 1 +
drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c | 166 +++++++
drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.h | 28 ++
.../misc/mchp_pci1xxxx/mchp_pci1xxxx_gpio.c | 438 ++++++++++++++++++
8 files changed, 654 insertions(+), 1 deletion(-)
create mode 100644 drivers/misc/mchp_pci1xxxx/Kconfig
create mode 100644 drivers/misc/mchp_pci1xxxx/Makefile
create mode 100644 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c
create mode 100644 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.h
create mode 100644 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gpio.c

--
2.25.1