| struct gpio_chip {
 const char                *label;
 struct device                *dev;
 struct module                *owner;
 
 int                        (*request)(struct gpio_chip *chip,
 unsigned offset);
 void                        (*free)(struct gpio_chip *chip,
 unsigned offset);
 
 int                        (*direction_input)(struct gpio_chip *chip,
 unsigned offset);
 int                        (*get)(struct gpio_chip *chip,
 unsigned offset);
 int                        (*direction_output)(struct gpio_chip *chip,
 unsigned offset, int value);
 void                        (*set)(struct gpio_chip *chip,
 unsigned offset, int value);
 
 int                        (*to_irq)(struct gpio_chip *chip,
 unsigned offset);
 
 void                        (*dbg_show)(struct seq_file *s,
 struct gpio_chip *chip);
 int                        base;
 u16                        ngpio;
 char                        **names;
 unsigned                can_sleep:1;
 unsigned                exported:1;
 };
 更多操作
 |