Lines Matching refs:desc
552 struct of_intc_desc *desc, *temp_desc; in of_irq_init() local
571 desc = kzalloc(sizeof(*desc), GFP_KERNEL); in of_irq_init()
572 if (!desc) { in of_irq_init()
577 desc->irq_init_cb = match->data; in of_irq_init()
578 desc->dev = of_node_get(np); in of_irq_init()
584 desc->interrupt_parent = of_parse_phandle(np, "interrupts-extended", 0); in of_irq_init()
585 if (!desc->interrupt_parent) in of_irq_init()
586 desc->interrupt_parent = of_irq_find_parent(np); in of_irq_init()
587 if (desc->interrupt_parent == np) { in of_irq_init()
588 of_node_put(desc->interrupt_parent); in of_irq_init()
589 desc->interrupt_parent = NULL; in of_irq_init()
591 list_add_tail(&desc->list, &intc_desc_list); in of_irq_init()
605 list_for_each_entry_safe(desc, temp_desc, &intc_desc_list, list) { in of_irq_init()
608 if (desc->interrupt_parent != parent) in of_irq_init()
611 list_del(&desc->list); in of_irq_init()
613 of_node_set_flag(desc->dev, OF_POPULATED); in of_irq_init()
616 desc->dev, in of_irq_init()
617 desc->dev, desc->interrupt_parent); in of_irq_init()
618 ret = desc->irq_init_cb(desc->dev, in of_irq_init()
619 desc->interrupt_parent); in of_irq_init()
622 __func__, desc->dev, desc->dev, in of_irq_init()
623 desc->interrupt_parent); in of_irq_init()
624 of_node_clear_flag(desc->dev, OF_POPULATED); in of_irq_init()
625 kfree(desc); in of_irq_init()
633 list_add_tail(&desc->list, &intc_parent_list); in of_irq_init()
637 desc = list_first_entry_or_null(&intc_parent_list, in of_irq_init()
638 typeof(*desc), list); in of_irq_init()
639 if (!desc) { in of_irq_init()
643 list_del(&desc->list); in of_irq_init()
644 parent = desc->dev; in of_irq_init()
645 kfree(desc); in of_irq_init()
648 list_for_each_entry_safe(desc, temp_desc, &intc_parent_list, list) { in of_irq_init()
649 list_del(&desc->list); in of_irq_init()
650 kfree(desc); in of_irq_init()
653 list_for_each_entry_safe(desc, temp_desc, &intc_desc_list, list) { in of_irq_init()
654 list_del(&desc->list); in of_irq_init()
655 of_node_put(desc->dev); in of_irq_init()
656 kfree(desc); in of_irq_init()