Linux Kernel
3.7.1
|
#include <gpio-core.h>
Data Fields | |
struct gpio_chip | chip |
struct samsung_gpio_cfg * | config |
struct samsung_gpio_pm * | pm |
void __iomem * | base |
int | irq_base |
int | group |
spinlock_t | lock |
struct samsung_gpio_chip - wrapper for specific implementation of gpio : The chip structure to be exported via gpiolib. : The base pointer to the gpio configuration registers. : The group register number for gpio interrupt support. : The base irq number. : special function and pull-resistor control information. : Lock for exclusive access to this gpio bank. : Save information for suspend/resume support.
This wrapper provides the necessary information for the Samsung specific gpios being registered with gpiolib.
The lock protects each gpio bank from multiple access of the shared configuration registers, or from reading of data whilst another thread is writing to the register set.
Each chip has its own lock to avoid any contention between different CPU cores trying to get one lock for different GPIO banks, where each bank of GPIO has its own register space and configuration registers.
Definition at line 63 of file gpio-core.h.
Definition at line 67 of file gpio-core.h.
Definition at line 64 of file gpio-core.h.
Definition at line 65 of file gpio-core.h.
int group |
Definition at line 69 of file gpio-core.h.
int irq_base |
Definition at line 68 of file gpio-core.h.
spinlock_t lock |
Definition at line 70 of file gpio-core.h.
Definition at line 66 of file gpio-core.h.