• Home
  • Raw
  • Download

Lines Matching full:hwirq

93 static void __plic_toggle(void __iomem *enable_base, int hwirq, int enable)  in __plic_toggle()  argument
95 u32 __iomem *reg = enable_base + (hwirq / 32) * sizeof(u32); in __plic_toggle()
96 u32 hwirq_mask = 1 << (hwirq % 32); in __plic_toggle()
104 static void plic_toggle(struct plic_handler *handler, int hwirq, int enable) in plic_toggle() argument
107 __plic_toggle(handler->enable_base, hwirq, enable); in plic_toggle()
119 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle()
137 writel(1, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); in plic_irq_unmask()
144 writel(0, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); in plic_irq_mask()
152 plic_toggle(handler, d->hwirq, 1); in plic_irq_eoi()
153 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi()
154 plic_toggle(handler, d->hwirq, 0); in plic_irq_eoi()
156 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi()
308 irq_hw_number_t hwirq) in plic_irqdomain_map() argument
312 irq_domain_set_info(d, irq, hwirq, &plic_chip, d->host_data, in plic_irqdomain_map()
321 unsigned long *hwirq, in plic_irq_domain_translate() argument
327 return irq_domain_translate_twocell(d, fwspec, hwirq, type); in plic_irq_domain_translate()
329 return irq_domain_translate_onecell(d, fwspec, hwirq, type); in plic_irq_domain_translate()
336 irq_hw_number_t hwirq; in plic_irq_domain_alloc() local
340 ret = plic_irq_domain_translate(domain, fwspec, &hwirq, &type); in plic_irq_domain_alloc()
345 ret = plic_irqdomain_map(domain, virq + i, hwirq + i); in plic_irq_domain_alloc()
370 irq_hw_number_t hwirq; in plic_handle_irq() local
376 while ((hwirq = readl(claim))) { in plic_handle_irq()
378 hwirq); in plic_handle_irq()
380 pr_warn_ratelimited("can't find mapping for hwirq %lu\n", in plic_handle_irq()
381 hwirq); in plic_handle_irq()
460 irq_hw_number_t hwirq; in __plic_init() local
480 for (hwirq = 1; hwirq <= nr_irqs; hwirq++) in __plic_init()
481 __plic_toggle(enable_base, hwirq, 0); in __plic_init()
532 for (hwirq = 1; hwirq <= nr_irqs; hwirq++) { in __plic_init()
533 plic_toggle(handler, hwirq, 0); in __plic_init()
535 hwirq * PRIORITY_PER_ID); in __plic_init()