Lines Matching refs:gpio_chip
24 struct gpio_chip;
91 int (*child_to_parent_hwirq)(struct gpio_chip *gc,
106 void *(*populate_parent_alloc_arg)(struct gpio_chip *gc,
118 unsigned int (*child_offset_to_irq)(struct gpio_chip *gc,
213 int (*init_hw)(struct gpio_chip *gc);
224 void (*init_valid_mask)(struct gpio_chip *gc,
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
480 int (*of_xlate)(struct gpio_chip *gc, argument
488 extern const char *gpiochip_is_requested(struct gpio_chip *gc,
508 extern int gpiochip_add_data_with_key(struct gpio_chip *gc, void *data,
554 static inline int gpiochip_add(struct gpio_chip *gc) in gpiochip_add()
558 extern void gpiochip_remove(struct gpio_chip *gc);
559 extern int devm_gpiochip_add_data_with_key(struct device *dev, struct gpio_chip *gc, void *data,
563 extern struct gpio_chip *gpiochip_find(void *data,
564 int (*match)(struct gpio_chip *gc, void *data));
566 bool gpiochip_line_is_irq(struct gpio_chip *gc, unsigned int offset);
567 int gpiochip_reqres_irq(struct gpio_chip *gc, unsigned int offset);
568 void gpiochip_relres_irq(struct gpio_chip *gc, unsigned int offset);
569 void gpiochip_disable_irq(struct gpio_chip *gc, unsigned int offset);
570 void gpiochip_enable_irq(struct gpio_chip *gc, unsigned int offset);
573 bool gpiochip_line_is_open_drain(struct gpio_chip *gc, unsigned int offset);
574 bool gpiochip_line_is_open_source(struct gpio_chip *gc, unsigned int offset);
577 bool gpiochip_line_is_persistent(struct gpio_chip *gc, unsigned int offset);
578 bool gpiochip_line_is_valid(const struct gpio_chip *gc, unsigned int offset);
581 void *gpiochip_get_data(struct gpio_chip *gc);
591 void *gpiochip_populate_parent_fwspec_twocell(struct gpio_chip *gc,
594 void *gpiochip_populate_parent_fwspec_fourcell(struct gpio_chip *gc,
600 static inline void *gpiochip_populate_parent_fwspec_twocell(struct gpio_chip *gc, in gpiochip_populate_parent_fwspec_twocell()
607 static inline void *gpiochip_populate_parent_fwspec_fourcell(struct gpio_chip *gc, in gpiochip_populate_parent_fwspec_fourcell()
616 int bgpio_init(struct gpio_chip *gc, struct device *dev,
638 void gpiochip_set_nested_irqchip(struct gpio_chip *gc,
642 int gpiochip_irqchip_add_key(struct gpio_chip *gc,
651 bool gpiochip_irqchip_irq_valid(const struct gpio_chip *gc,
655 int gpiochip_irqchip_add_domain(struct gpio_chip *gc,
658 static inline int gpiochip_irqchip_add_domain(struct gpio_chip *gc, in gpiochip_irqchip_add_domain()
674 static inline int gpiochip_irqchip_add(struct gpio_chip *gc, in gpiochip_irqchip_add()
688 static inline int gpiochip_irqchip_add_nested(struct gpio_chip *gc, in gpiochip_irqchip_add_nested()
703 static inline int gpiochip_irqchip_add(struct gpio_chip *gc, in gpiochip_irqchip_add()
713 static inline int gpiochip_irqchip_add_nested(struct gpio_chip *gc, in gpiochip_irqchip_add_nested()
724 int gpiochip_generic_request(struct gpio_chip *gc, unsigned int offset);
725 void gpiochip_generic_free(struct gpio_chip *gc, unsigned int offset);
726 int gpiochip_generic_config(struct gpio_chip *gc, unsigned int offset,
743 int gpiochip_add_pin_range(struct gpio_chip *gc, const char *pinctl_name,
746 int gpiochip_add_pingroup_range(struct gpio_chip *gc,
749 void gpiochip_remove_pin_ranges(struct gpio_chip *gc);
754 gpiochip_add_pin_range(struct gpio_chip *gc, const char *pinctl_name, in gpiochip_add_pin_range()
761 gpiochip_add_pingroup_range(struct gpio_chip *gc, in gpiochip_add_pingroup_range()
769 gpiochip_remove_pin_ranges(struct gpio_chip *gc) in gpiochip_remove_pin_ranges()
775 struct gpio_desc *gpiochip_request_own_desc(struct gpio_chip *gc,
785 int gpiochip_lock_as_irq(struct gpio_chip *gc, unsigned int offset);
786 void gpiochip_unlock_as_irq(struct gpio_chip *gc, unsigned int offset);
789 struct gpio_chip *gpiod_to_chip(const struct gpio_desc *desc);
793 static inline struct gpio_chip *gpiod_to_chip(const struct gpio_desc *desc) in gpiod_to_chip()
800 static inline int gpiochip_lock_as_irq(struct gpio_chip *gc, in gpiochip_lock_as_irq()
807 static inline void gpiochip_unlock_as_irq(struct gpio_chip *gc, in gpiochip_unlock_as_irq()