Lines Matching defs:hwirq
93 static void rzg2l_clear_irq_int(struct rzg2l_irqc_priv *priv, unsigned int hwirq)
95 unsigned int hw_irq = hwirq - IRQC_IRQ_START;
116 static void rzg2l_clear_tint_int(struct rzg2l_irqc_priv *priv, unsigned int hwirq)
118 u32 bit = BIT(hwirq - IRQC_TINT_START);
147 unsigned int hwirq)
149 u32 bit = BIT(hwirq - IRQC_IRQ_START);
155 unsigned int hwirq)
157 u32 bit = BIT(hwirq - IRQC_IRQ_START);
163 unsigned int hwirq)
165 u32 bit = BIT(hwirq - IRQC_TINT_START);
171 unsigned int hwirq)
173 u32 bit = BIT(hwirq - IRQC_TINT_START);
181 unsigned int hwirq = irqd_to_hwirq(d);
184 if (hwirq >= IRQC_IRQ_START && hwirq <= IRQC_IRQ_COUNT)
185 rzfive_irqc_mask_irq_interrupt(priv, hwirq);
186 else if (hwirq >= IRQC_TINT_START && hwirq < IRQC_NUM_IRQ)
187 rzfive_irqc_mask_tint_interrupt(priv, hwirq);
195 unsigned int hwirq = irqd_to_hwirq(d);
198 if (hwirq >= IRQC_IRQ_START && hwirq <= IRQC_IRQ_COUNT)
199 rzfive_irqc_unmask_irq_interrupt(priv, hwirq);
200 else if (hwirq >= IRQC_TINT_START && hwirq < IRQC_NUM_IRQ)
201 rzfive_irqc_unmask_tint_interrupt(priv, hwirq);
209 unsigned int hwirq = irqd_to_hwirq(d);
211 if (hwirq >= IRQC_TINT_START && hwirq < IRQC_NUM_IRQ) {
212 u32 offset = hwirq - IRQC_TINT_START;
219 rzfive_irqc_unmask_tint_interrupt(priv, hwirq);
221 rzfive_irqc_mask_tint_interrupt(priv, hwirq);
232 rzfive_irqc_unmask_irq_interrupt(priv, hwirq);
234 rzfive_irqc_mask_irq_interrupt(priv, hwirq);
288 unsigned int hwirq = irqd_to_hwirq(d);
289 u32 iitseln = hwirq - IRQC_IRQ_START;
322 rzg2l_clear_irq_int(priv, hwirq);
347 unsigned int hwirq = irqd_to_hwirq(d);
348 u32 titseln = hwirq - IRQC_TINT_START;
380 rzg2l_clear_tint_int(priv, hwirq);
473 irq_hw_number_t hwirq;
477 ret = irq_domain_translate_twocell(domain, arg, &hwirq, &type);
483 * the hwirq and TINT are encoded in fwspec->param[0].
484 * hwirq for TINT range from 9-40, hwirq is embedded 0-15 bits and TINT
488 if (hwirq > IRQC_IRQ_COUNT) {
489 tint = TINT_EXTRACT_GPIOINT(hwirq);
490 hwirq = TINT_EXTRACT_HWIRQ(hwirq);
492 if (hwirq < IRQC_TINT_START)
496 if (hwirq > (IRQC_NUM_IRQ - 1))
499 ret = irq_domain_set_hwirq_and_chip(domain, virq, hwirq, priv->irqchip,
504 return irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, &priv->fwspec[hwirq]);