Lines Matching refs:gc
95 static inline struct grgpio_priv *grgpio_gc_to_priv(struct gpio_chip *gc) in grgpio_gc_to_priv() argument
97 struct bgpio_chip *bgc = to_bgpio_chip(gc); in grgpio_gc_to_priv()
120 static int grgpio_to_irq(struct gpio_chip *gc, unsigned offset) in grgpio_to_irq() argument
122 struct grgpio_priv *priv = grgpio_gc_to_priv(gc); in grgpio_to_irq()
124 if (offset > gc->ngpio) in grgpio_to_irq()
205 int ngpio = priv->bgc.gc.ngpio; in grgpio_irq_handler()
301 int ngpio = priv->bgc.gc.ngpio; in grgpio_irq_unmap()
346 struct gpio_chip *gc; in grgpio_probe() local
378 gc = &bgc->gc; in grgpio_probe()
379 gc->of_node = np; in grgpio_probe()
380 gc->owner = THIS_MODULE; in grgpio_probe()
381 gc->to_irq = grgpio_to_irq; in grgpio_probe()
382 gc->label = np->full_name; in grgpio_probe()
383 gc->base = -1; in grgpio_probe()
387 gc->ngpio = GRGPIO_MAX_NGPIO; in grgpio_probe()
389 "No or invalid nbits property: assume %d\n", gc->ngpio); in grgpio_probe()
391 gc->ngpio = prop; in grgpio_probe()
400 if (size < gc->ngpio) { in grgpio_probe()
403 size, gc->ngpio); in grgpio_probe()
407 priv->domain = irq_domain_add_linear(np, gc->ngpio, in grgpio_probe()
415 for (i = 0; i < gc->ngpio; i++) { in grgpio_probe()
441 err = gpiochip_add(gc); in grgpio_probe()
448 priv->regs, gc->base, gc->ngpio, priv->domain ? "on" : "off"); in grgpio_probe()
471 ret = gpiochip_remove(&priv->bgc.gc); in grgpio_remove()