Lines Matching refs:imsic
31 global = &imsic->global; in imsic_cpu_page_phys()
61 local = per_cpu_ptr(imsic->global.local, vec->cpu); in imsic_irq_retrigger()
317 if (!imsic || !imsic->fwnode) { in imsic_irqdomain_init()
322 if (imsic->base_domain) { in imsic_irqdomain_init()
323 pr_err("%pfwP: irq domain already created\n", imsic->fwnode); in imsic_irqdomain_init()
328 imsic->base_domain = irq_domain_create_tree(imsic->fwnode, in imsic_irqdomain_init()
329 &imsic_base_domain_ops, imsic); in imsic_irqdomain_init()
330 if (!imsic->base_domain) { in imsic_irqdomain_init()
331 pr_err("%pfwP: failed to create IMSIC base domain\n", imsic->fwnode); in imsic_irqdomain_init()
334 imsic->base_domain->flags |= IRQ_DOMAIN_FLAG_MSI_PARENT; in imsic_irqdomain_init()
335 imsic->base_domain->msi_parent_ops = &imsic_msi_parent_ops; in imsic_irqdomain_init()
337 irq_domain_update_bus_token(imsic->base_domain, DOMAIN_BUS_NEXUS); in imsic_irqdomain_init()
339 global = &imsic->global; in imsic_irqdomain_init()
341 imsic->fwnode, global->hart_index_bits, global->guest_index_bits); in imsic_irqdomain_init()
343 imsic->fwnode, global->group_index_bits, global->group_index_shift); in imsic_irqdomain_init()
345 imsic->fwnode, global->nr_ids, &global->base_addr); in imsic_irqdomain_init()
347 imsic->fwnode, num_possible_cpus() * (global->nr_ids - 1)); in imsic_irqdomain_init()
354 if (imsic && imsic->fwnode != fwnode) { in imsic_platform_probe_common()