Lines Matching refs:gpio_chip
46 struct gpio_chip gpio_chip; member
96 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in gpio_rcar_irq_disable()
106 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in gpio_rcar_irq_enable()
151 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in gpio_rcar_irq_set_type()
188 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in gpio_rcar_irq_set_wake()
230 generic_handle_domain_irq(p->gpio_chip.irq.domain, in gpio_rcar_irq_handler()
238 static void gpio_rcar_config_general_input_output_mode(struct gpio_chip *chip, in gpio_rcar_config_general_input_output_mode()
268 static int gpio_rcar_request(struct gpio_chip *chip, unsigned offset) in gpio_rcar_request()
286 static void gpio_rcar_free(struct gpio_chip *chip, unsigned offset) in gpio_rcar_free()
301 static int gpio_rcar_get_direction(struct gpio_chip *chip, unsigned int offset) in gpio_rcar_get_direction()
311 static int gpio_rcar_direction_input(struct gpio_chip *chip, unsigned offset) in gpio_rcar_direction_input()
317 static int gpio_rcar_get(struct gpio_chip *chip, unsigned offset) in gpio_rcar_get()
332 static int gpio_rcar_get_multiple(struct gpio_chip *chip, unsigned long *mask, in gpio_rcar_get_multiple()
366 static void gpio_rcar_set(struct gpio_chip *chip, unsigned offset, int value) in gpio_rcar_set()
376 static void gpio_rcar_set_multiple(struct gpio_chip *chip, unsigned long *mask, in gpio_rcar_set_multiple()
398 static int gpio_rcar_direction_output(struct gpio_chip *chip, unsigned offset, in gpio_rcar_direction_output()
485 u32 mask = GENMASK(p->gpio_chip.ngpio - 1, 0); in gpio_rcar_enable_inputs()
488 if (p->gpio_chip.valid_mask) in gpio_rcar_enable_inputs()
489 mask &= p->gpio_chip.valid_mask[0]; in gpio_rcar_enable_inputs()
497 struct gpio_chip *gpio_chip; in gpio_rcar_probe() local
531 gpio_chip = &p->gpio_chip; in gpio_rcar_probe()
532 gpio_chip->request = gpio_rcar_request; in gpio_rcar_probe()
533 gpio_chip->free = gpio_rcar_free; in gpio_rcar_probe()
534 gpio_chip->get_direction = gpio_rcar_get_direction; in gpio_rcar_probe()
535 gpio_chip->direction_input = gpio_rcar_direction_input; in gpio_rcar_probe()
536 gpio_chip->get = gpio_rcar_get; in gpio_rcar_probe()
537 gpio_chip->get_multiple = gpio_rcar_get_multiple; in gpio_rcar_probe()
538 gpio_chip->direction_output = gpio_rcar_direction_output; in gpio_rcar_probe()
539 gpio_chip->set = gpio_rcar_set; in gpio_rcar_probe()
540 gpio_chip->set_multiple = gpio_rcar_set_multiple; in gpio_rcar_probe()
541 gpio_chip->label = name; in gpio_rcar_probe()
542 gpio_chip->parent = dev; in gpio_rcar_probe()
543 gpio_chip->owner = THIS_MODULE; in gpio_rcar_probe()
544 gpio_chip->base = -1; in gpio_rcar_probe()
545 gpio_chip->ngpio = npins; in gpio_rcar_probe()
547 girq = &gpio_chip->irq; in gpio_rcar_probe()
556 ret = gpiochip_add_data(gpio_chip, p); in gpio_rcar_probe()
562 irq_domain_set_pm_device(gpio_chip->irq.domain, dev); in gpio_rcar_probe()
581 gpiochip_remove(gpio_chip); in gpio_rcar_probe()
591 gpiochip_remove(&p->gpio_chip); in gpio_rcar_remove()
623 for (offset = 0; offset < p->gpio_chip.ngpio; offset++) { in gpio_rcar_resume()
624 if (!gpiochip_line_is_valid(&p->gpio_chip, offset)) in gpio_rcar_resume()
632 &p->gpio_chip, offset, in gpio_rcar_resume()
635 gpio_rcar_direction_input(&p->gpio_chip, in gpio_rcar_resume()