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()
115 static int grgpio_to_irq(struct gpio_chip *gc, unsigned offset) in grgpio_to_irq() argument
117 struct grgpio_priv *priv = grgpio_gc_to_priv(gc); in grgpio_to_irq()
119 if (offset >= gc->ngpio) in grgpio_to_irq()
210 int ngpio = priv->bgc.gc.ngpio; in grgpio_irq_handler()
301 int ngpio = priv->bgc.gc.ngpio; in grgpio_irq_unmap()
343 struct gpio_chip *gc; in grgpio_probe() local
375 gc = &bgc->gc; in grgpio_probe()
376 gc->of_node = np; in grgpio_probe()
377 gc->owner = THIS_MODULE; in grgpio_probe()
378 gc->to_irq = grgpio_to_irq; in grgpio_probe()
379 gc->label = np->full_name; in grgpio_probe()
380 gc->base = -1; in grgpio_probe()
384 gc->ngpio = GRGPIO_MAX_NGPIO; in grgpio_probe()
386 "No or invalid nbits property: assume %d\n", gc->ngpio); in grgpio_probe()
388 gc->ngpio = prop; in grgpio_probe()
397 if (size < gc->ngpio) { in grgpio_probe()
400 size, gc->ngpio); in grgpio_probe()
404 priv->domain = irq_domain_add_linear(np, gc->ngpio, in grgpio_probe()
412 for (i = 0; i < gc->ngpio; i++) { in grgpio_probe()
438 err = gpiochip_add(gc); in grgpio_probe()
447 priv->regs, gc->base, gc->ngpio, priv->domain ? "on" : "off"); in grgpio_probe()
470 gpiochip_remove(&priv->bgc.gc); in grgpio_remove()