Lines Matching refs:gc
34 struct gpio_chip gc; member
38 #define to_ep93xx_gpio_chip(x) container_of(x, struct ep93xx_gpio_chip, gc)
40 static struct ep93xx_gpio_irq_chip *to_ep93xx_gpio_irq_chip(struct gpio_chip *gc) in to_ep93xx_gpio_irq_chip() argument
42 struct ep93xx_gpio_chip *egc = to_ep93xx_gpio_chip(gc); in to_ep93xx_gpio_irq_chip()
72 static void ep93xx_gpio_int_debounce(struct gpio_chip *gc, in ep93xx_gpio_int_debounce() argument
75 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_int_debounce()
86 static u32 ep93xx_gpio_ab_irq_handler(struct gpio_chip *gc) in ep93xx_gpio_ab_irq_handler() argument
88 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_ab_irq_handler()
94 generic_handle_domain_irq(gc->irq.domain, offset); in ep93xx_gpio_ab_irq_handler()
107 struct gpio_chip *gc = irq_desc_get_handler_data(desc); in ep93xx_gpio_f_irq_handler() local
108 struct gpio_irq_chip *gic = &gc->irq; in ep93xx_gpio_f_irq_handler()
118 generic_handle_domain_irq(gc->irq.domain, i); in ep93xx_gpio_f_irq_handler()
125 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in ep93xx_gpio_irq_ack() local
126 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_irq_ack()
139 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in ep93xx_gpio_irq_mask_ack() local
140 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_irq_mask_ack()
151 gpiochip_disable_irq(gc, hwirq); in ep93xx_gpio_irq_mask_ack()
156 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in ep93xx_gpio_irq_mask() local
157 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_irq_mask()
162 gpiochip_disable_irq(gc, hwirq); in ep93xx_gpio_irq_mask()
167 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in ep93xx_gpio_irq_unmask() local
168 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_irq_unmask()
171 gpiochip_enable_irq(gc, hwirq); in ep93xx_gpio_irq_unmask()
183 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in ep93xx_gpio_irq_type() local
184 struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); in ep93xx_gpio_irq_type()
189 gc->direction_input(gc, hwirq); in ep93xx_gpio_irq_type()
215 if (gc->get(gc, hwirq)) in ep93xx_gpio_irq_type()
234 static int ep93xx_gpio_set_config(struct gpio_chip *gc, unsigned offset, in ep93xx_gpio_set_config() argument
243 ep93xx_gpio_int_debounce(gc, offset, debounce ? true : false); in ep93xx_gpio_set_config()
250 struct gpio_chip *gc = irq_data_get_irq_chip_data(data); in ep93xx_irq_print_chip() local
252 seq_printf(p, dev_name(gc->parent)); in ep93xx_irq_print_chip()
270 struct gpio_chip *gc = &egc->gc; in ep93xx_setup_irqs() local
272 struct gpio_irq_chip *girq = &gc->irq; in ep93xx_setup_irqs()
280 gc->set_config = ep93xx_gpio_set_config; in ep93xx_setup_irqs()
302 IRQF_SHARED, gc->label, gc); in ep93xx_setup_irqs()
331 struct gpio_chip *gc; in ep93xx_gpio_probe() local
348 gc = &egc->gc; in ep93xx_gpio_probe()
349 ret = bgpio_init(gc, &pdev->dev, 1, data, NULL, NULL, dir, NULL, 0); in ep93xx_gpio_probe()
353 gc->label = dev_name(&pdev->dev); in ep93xx_gpio_probe()
361 return devm_gpiochip_add_data(&pdev->dev, gc, egc); in ep93xx_gpio_probe()