Lines Matching refs:gc
35 struct gpio_chip gc; member
88 static int vf610_gpio_get(struct gpio_chip *gc, unsigned int gpio) in vf610_gpio_get() argument
91 container_of(gc, struct vf610_gpio_port, gc); in vf610_gpio_get()
96 static void vf610_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val) in vf610_gpio_set() argument
99 container_of(gc, struct vf610_gpio_port, gc); in vf610_gpio_set()
135 generic_handle_irq(irq_find_mapping(port->gc.irqdomain, pin)); in vf610_gpio_irq_handler()
223 struct gpio_chip *gc; in vf610_gpio_probe() local
244 gc = &port->gc; in vf610_gpio_probe()
245 gc->of_node = np; in vf610_gpio_probe()
246 gc->dev = dev; in vf610_gpio_probe()
247 gc->label = "vf610-gpio"; in vf610_gpio_probe()
248 gc->ngpio = VF610_GPIO_PER_PORT; in vf610_gpio_probe()
249 gc->base = of_alias_get_id(np, "gpio") * VF610_GPIO_PER_PORT; in vf610_gpio_probe()
251 gc->request = vf610_gpio_request; in vf610_gpio_probe()
252 gc->free = vf610_gpio_free; in vf610_gpio_probe()
253 gc->direction_input = vf610_gpio_direction_input; in vf610_gpio_probe()
254 gc->get = vf610_gpio_get; in vf610_gpio_probe()
255 gc->direction_output = vf610_gpio_direction_output; in vf610_gpio_probe()
256 gc->set = vf610_gpio_set; in vf610_gpio_probe()
258 ret = gpiochip_add(gc); in vf610_gpio_probe()
265 ret = gpiochip_irqchip_add(gc, &vf610_gpio_irq_chip, 0, in vf610_gpio_probe()
269 gpiochip_remove(gc); in vf610_gpio_probe()
272 gpiochip_set_chained_irqchip(gc, &vf610_gpio_irq_chip, port->irq, in vf610_gpio_probe()