Lines Matching refs:gc
21 struct gpio_chip gc; member
29 struct gpio_chip *gc = irq_desc_get_handler_data(desc); in idt_gpio_dispatch() local
30 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_dispatch()
39 for_each_set_bit(bit, &pending, gc->ngpio) { in idt_gpio_dispatch()
40 virq = irq_linear_revmap(gc->irq.domain, bit); in idt_gpio_dispatch()
50 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in idt_gpio_irq_set_type() local
51 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_irq_set_type()
60 raw_spin_lock_irqsave(&gc->bgpio_lock, flags); in idt_gpio_irq_set_type()
71 raw_spin_unlock_irqrestore(&gc->bgpio_lock, flags); in idt_gpio_irq_set_type()
77 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in idt_gpio_ack() local
78 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_ack()
85 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in idt_gpio_mask() local
86 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_mask()
89 raw_spin_lock_irqsave(&gc->bgpio_lock, flags); in idt_gpio_mask()
94 raw_spin_unlock_irqrestore(&gc->bgpio_lock, flags); in idt_gpio_mask()
96 gpiochip_disable_irq(gc, irqd_to_hwirq(d)); in idt_gpio_mask()
101 struct gpio_chip *gc = irq_data_get_irq_chip_data(d); in idt_gpio_unmask() local
102 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_unmask()
105 gpiochip_enable_irq(gc, irqd_to_hwirq(d)); in idt_gpio_unmask()
106 raw_spin_lock_irqsave(&gc->bgpio_lock, flags); in idt_gpio_unmask()
111 raw_spin_unlock_irqrestore(&gc->bgpio_lock, flags); in idt_gpio_unmask()
114 static int idt_gpio_irq_init_hw(struct gpio_chip *gc) in idt_gpio_irq_init_hw() argument
116 struct idt_gpio_ctrl *ctrl = gpiochip_get_data(gc); in idt_gpio_irq_init_hw()
153 ctrl->gc.parent = dev; in idt_gpio_probe()
155 ret = bgpio_init(&ctrl->gc, &pdev->dev, 4, ctrl->gpio + IDT_GPIO_DATA, in idt_gpio_probe()
164 ctrl->gc.ngpio = ngpios; in idt_gpio_probe()
175 girq = &ctrl->gc.irq; in idt_gpio_probe()
191 return devm_gpiochip_add_data(&pdev->dev, &ctrl->gc, ctrl); in idt_gpio_probe()