NPCM750 include two SGPIO modules. Each module supports up eight output ports and eight input ports. And each port have eight pins, so each module supports up to 64 input and 64 output pins. the output pin must be serial to parallel device(such as the hc595) the input in must be parallel to serial device(such as the hc165). Jim Liu (3): gpio:gpio-npcm-sgpio: Add Nuvoton sgpio driver arm: dts: nuvoton: npcm7xx: add sgpio node dt-bindings: gpio: Add Nuvoton NPCM750 serial I/O expansion interface(SGPIO) .../bindings/gpio/nuvoton,sgpio.yaml | 79 +++ arch/arm/boot/dts/nuvoton-common-npcm7xx.dtsi | 30 + drivers/gpio/Kconfig | 8 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-npcm-sgpio.c | 640 ++++++++++++++++++ 5 files changed, 758 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/nuvoton,sgpio.yaml create mode 100644 drivers/gpio/gpio-npcm-sgpio.c -- 2.17.1