Lines Matching defs:gpio_chip
369 struct gpio_chip { struct
375 int (*request)(struct gpio_chip *gc, argument
377 void (*free)(struct gpio_chip *gc, argument
379 int (*get_direction)(struct gpio_chip *gc, argument
381 int (*direction_input)(struct gpio_chip *gc, argument
383 int (*direction_output)(struct gpio_chip *gc, argument
385 int (*get)(struct gpio_chip *gc, argument
387 int (*get_multiple)(struct gpio_chip *gc, argument
390 void (*set)(struct gpio_chip *gc, argument
392 void (*set_multiple)(struct gpio_chip *gc, argument
395 int (*set_config)(struct gpio_chip *gc, argument
398 int (*to_irq)(struct gpio_chip *gc, argument
402 struct gpio_chip *gc); argument
404 int (*init_valid_mask)(struct gpio_chip *gc, argument
408 int (*add_pin_ranges)(struct gpio_chip *gc); argument
410 int base;
411 u16 ngpio;
412 const char *const *names;
413 bool can_sleep;
416 unsigned long (*read_reg)(void __iomem *reg);
417 void (*write_reg)(void __iomem *reg, unsigned long data);
418 bool be_bits;
419 void __iomem *reg_dat;
420 void __iomem *reg_set;
421 void __iomem *reg_clr;
422 void __iomem *reg_dir_out;
423 void __iomem *reg_dir_in;
424 bool bgpio_dir_unreadable;
425 int bgpio_bits;
426 spinlock_t bgpio_lock;
427 unsigned long bgpio_data;
428 unsigned long bgpio_dir;
443 struct gpio_irq_chip irq;
452 unsigned long *valid_mask;
480 int (*of_xlate)(struct gpio_chip *gc, argument