Lines Matching full:hwirq
71 static void econet_chmask(u32 hwirq, bool unmask) in econet_chmask() argument
83 shadow = econet_intc.interrupt_shadows[hwirq]; in econet_chmask()
87 hwirq = shadow; in econet_chmask()
89 if (hwirq >= 32) { in econet_chmask()
91 mask = BIT(hwirq - 32); in econet_chmask()
94 mask = BIT(hwirq); in econet_chmask()
103 econet_chmask(d->hwirq, false); in econet_intc_mask()
109 econet_chmask(d->hwirq, true); in econet_intc_unmask()
122 int hwirq; in econet_intc_handle_pending() local
125 hwirq = fls(pending) - 1; in econet_intc_handle_pending()
126 generic_handle_domain_irq(d, hwirq + offset); in econet_intc_handle_pending()
127 pending &= ~BIT(hwirq); in econet_intc_handle_pending()
155 static int econet_intc_map(struct irq_domain *d, u32 irq, irq_hw_number_t hwirq) in econet_intc_map() argument
159 if (hwirq >= IRQ_COUNT) { in econet_intc_map()
160 pr_err("%s: hwirq %lu out of range\n", __func__, hwirq); in econet_intc_map()
162 } else if (econet_intc.interrupt_shadows[hwirq] == IS_SHADOW) { in econet_intc_map()
163 pr_err("%s: can't map hwirq %lu, it is a shadow interrupt\n", __func__, hwirq); in econet_intc_map()
167 if (econet_intc.interrupt_shadows[hwirq] == NOT_PERCPU) { in econet_intc_map()