Lines Matching refs:desc
489 struct intc_desc *desc, *temp_desc; in of_irq_init() local
503 desc = kzalloc(sizeof(*desc), GFP_KERNEL); in of_irq_init()
504 if (WARN_ON(!desc)) in of_irq_init()
507 desc->dev = np; in of_irq_init()
508 desc->interrupt_parent = of_irq_find_parent(np); in of_irq_init()
509 if (desc->interrupt_parent == np) in of_irq_init()
510 desc->interrupt_parent = NULL; in of_irq_init()
511 list_add_tail(&desc->list, &intc_desc_list); in of_irq_init()
525 list_for_each_entry_safe(desc, temp_desc, &intc_desc_list, list) { in of_irq_init()
530 if (desc->interrupt_parent != parent) in of_irq_init()
533 list_del(&desc->list); in of_irq_init()
534 match = of_match_node(matches, desc->dev); in of_irq_init()
538 kfree(desc); in of_irq_init()
544 desc->dev, desc->interrupt_parent); in of_irq_init()
546 ret = irq_init_cb(desc->dev, desc->interrupt_parent); in of_irq_init()
548 kfree(desc); in of_irq_init()
556 list_add_tail(&desc->list, &intc_parent_list); in of_irq_init()
560 desc = list_first_entry_or_null(&intc_parent_list, in of_irq_init()
561 typeof(*desc), list); in of_irq_init()
562 if (!desc) { in of_irq_init()
566 list_del(&desc->list); in of_irq_init()
567 parent = desc->dev; in of_irq_init()
568 kfree(desc); in of_irq_init()
571 list_for_each_entry_safe(desc, temp_desc, &intc_parent_list, list) { in of_irq_init()
572 list_del(&desc->list); in of_irq_init()
573 kfree(desc); in of_irq_init()
576 list_for_each_entry_safe(desc, temp_desc, &intc_desc_list, list) { in of_irq_init()
577 list_del(&desc->list); in of_irq_init()
578 kfree(desc); in of_irq_init()