Lines Matching defs:dgc
280 struct irq_domain_chip_generic *dgc;
298 dgc_sz = struct_size(dgc, gc, numchips);
301 tmp = dgc = kzalloc(sz, GFP_KERNEL);
302 if (!dgc)
304 dgc->irqs_per_chip = info->irqs_per_chip;
305 dgc->num_chips = numchips;
306 dgc->irq_flags_to_set = info->irq_flags_to_set;
307 dgc->irq_flags_to_clear = info->irq_flags_to_clear;
308 dgc->gc_flags = info->gc_flags;
309 dgc->exit = info->exit;
310 d->gc = dgc;
316 dgc->gc[i] = gc = tmp;
318 i * dgc->irqs_per_chip, NULL,
322 if (dgc->gc_flags & IRQ_GC_BE_IO) {
342 if (dgc->exit)
343 dgc->exit(dgc->gc[i]);
344 irq_remove_generic_chip(dgc->gc[i], ~0U, 0, 0);
347 kfree(dgc);
358 struct irq_domain_chip_generic *dgc = d->gc;
361 if (!dgc)
364 for (i = 0; i < dgc->num_chips; i++) {
365 if (dgc->exit)
366 dgc->exit(dgc->gc[i]);
367 irq_remove_generic_chip(dgc->gc[i], ~0U, 0, 0);
370 kfree(dgc);
408 struct irq_domain_chip_generic *dgc = d->gc;
411 if (!dgc)
413 idx = hw_irq / dgc->irqs_per_chip;
414 if (idx >= dgc->num_chips)
416 return dgc->gc[idx];
447 struct irq_domain_chip_generic *dgc = d->gc;
457 idx = hw_irq % dgc->irqs_per_chip;
471 irq_gc_init_mask_cache(gc, dgc->gc_flags);
477 if (dgc->gc_flags & IRQ_GC_INIT_NESTED_LOCK)
487 irq_modify_status(virq, dgc->irq_flags_to_clear, dgc->irq_flags_to_set);
494 struct irq_domain_chip_generic *dgc = d->gc;
503 irq_idx = hw_irq % dgc->irqs_per_chip;