Lines Matching refs:iic
36 struct iic { struct
44 static DEFINE_PER_CPU(struct iic, cpu_iic); argument
72 struct iic *iic = this_cpu_ptr(&cpu_iic); in iic_eoi() local
73 out_be64(&iic->regs->prio, iic->eoi_stack[--iic->eoi_ptr]); in iic_eoi()
74 BUG_ON(iic->eoi_ptr < 0); in iic_eoi()
132 struct iic *iic; in iic_get_irq() local
135 iic = this_cpu_ptr(&cpu_iic); in iic_get_irq()
137 in_be64((u64 __iomem *) &iic->regs->pending_destr); in iic_get_irq()
143 iic->eoi_stack[++iic->eoi_ptr] = pending.prio; in iic_get_irq()
144 BUG_ON(iic->eoi_ptr > 15); in iic_get_irq()
279 struct iic *iic = &per_cpu(cpu_iic, hw_cpu); in init_one_iic() local
281 iic->regs = ioremap(addr, sizeof(struct cbe_iic_thread_regs)); in init_one_iic()
282 BUG_ON(iic->regs == NULL); in init_one_iic()
284 iic->target_id = ((hw_cpu & 2) << 3) | ((hw_cpu & 1) ? 0xf : 0xe); in init_one_iic()
285 iic->eoi_stack[0] = 0xff; in init_one_iic()
286 iic->node = of_node_get(node); in init_one_iic()
287 out_be64(&iic->regs->prio, 0); in init_one_iic()
290 hw_cpu, iic->target_id, node); in init_one_iic()