Lines Matching full:direct
36 struct aplic_direct *direct; member
55 struct aplic_direct *direct = container_of(priv, struct aplic_direct, priv); in aplic_direct_set_affinity() local
61 cpu = cpumask_first_and(&direct->lmask, mask_val); in aplic_direct_set_affinity()
63 cpu = cpumask_first_and_and(&direct->lmask, mask_val, cpu_online_mask); in aplic_direct_set_affinity()
81 .name = "APLIC-DIRECT",
106 struct aplic_direct *direct = container_of(priv, struct aplic_direct, priv); in aplic_direct_irqdomain_alloc() local
119 irq_set_affinity(virq + i, &direct->lmask); in aplic_direct_irqdomain_alloc()
132 * To handle an APLIC direct interrupts, we just read the CLAIMI register
140 struct irq_domain *irqdomain = idc->direct->irqdomain; in aplic_direct_handle_irq()
152 dev_warn_ratelimited(idc->direct->priv.dev, in aplic_direct_handle_irq()
225 struct aplic_direct *direct; in aplic_direct_setup() local
232 direct = devm_kzalloc(dev, sizeof(*direct), GFP_KERNEL); in aplic_direct_setup()
233 if (!direct) in aplic_direct_setup()
235 priv = &direct->priv; in aplic_direct_setup()
265 cpumask_set_cpu(cpu, &direct->lmask); in aplic_direct_setup()
270 idc->direct = direct; in aplic_direct_setup()
317 direct->irqdomain = irq_domain_create_linear(dev->fwnode, priv->nr_irqs + 1, in aplic_direct_setup()
319 if (!direct->irqdomain) { in aplic_direct_setup()
320 dev_err(dev, "failed to create direct irq domain\n"); in aplic_direct_setup()