Lines Matching refs:hwirq
85 static int mtk_eint_flip_edge(struct mtk_eint *eint, int hwirq)
89 u32 mask = BIT(hwirq & 0x1f);
90 u32 port = (hwirq >> 5) & eint->hw->port_mask;
93 curr_level = eint->gpio_xlate->get_gpio_state(eint->pctl, hwirq);
104 hwirq);
113 u32 mask = BIT(d->hwirq & 0x1f);
114 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq,
117 eint->cur_mask[d->hwirq >> 5] &= ~mask;
125 u32 mask = BIT(d->hwirq & 0x1f);
126 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq,
129 eint->cur_mask[d->hwirq >> 5] |= mask;
133 if (eint->dual_edge[d->hwirq])
134 mtk_eint_flip_edge(eint, d->hwirq);
150 u32 mask = BIT(d->hwirq & 0x1f);
151 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq,
160 u32 mask = BIT(d->hwirq & 0x1f);
167 d->irq, d->hwirq, type);
172 eint->dual_edge[d->hwirq] = 1;
174 eint->dual_edge[d->hwirq] = 0;
177 reg = mtk_eint_get_offset(eint, d->hwirq, eint->regs->pol_clr);
180 reg = mtk_eint_get_offset(eint, d->hwirq, eint->regs->pol_set);
185 reg = mtk_eint_get_offset(eint, d->hwirq, eint->regs->sens_clr);
188 reg = mtk_eint_get_offset(eint, d->hwirq, eint->regs->sens_set);
192 if (eint->dual_edge[d->hwirq])
193 mtk_eint_flip_edge(eint, d->hwirq);
201 int shift = d->hwirq & 0x1f;
202 int reg = d->hwirq >> 5;
232 err = eint->gpio_xlate->get_gpio_n(eint->pctl, d->hwirq,
246 err = eint->gpio_xlate->set_gpio_as_eint(eint->pctl, d->hwirq);
261 eint->gpio_xlate->get_gpio_n(eint->pctl, d->hwirq, &gpio_n,