The following figure displays the block diagram of the JH7100 GPIO pin control (pinctrl)
driver module. The driver module has the following four parts:
Pin control interfaces
Pin control general framework
StarFiveJH7110 pin control
driver
Board level configuration
Figure 1. Block Diagram
The above image shows the following layers.
Consumer: The pin control interfaces and GPIO interfaces
used by the device driver, such as SDIO, PCIE, etc.
Interface: The pin control and GPIO interfaces for user,
see Interface Description for more information.
Pinctrl framework: The original Linux system pin control
framework. The framework enables developers to configure one or a group of pin
functions and capabilities.
Driver: The GPIO and pin control drivers of the StarFiveJH7110 SoC platform.
Hardware: The GPIO controller of the StarFiveJH7110 SoC platform.