Exemple #1
0
static void
imx21_gpio_unmask_irq(unsigned int irq)
{
	DEBUG_IRQ("%s: irq %d\n", __FUNCTION__, irq);
	IMR(IRQ_TO_REG(irq)) |= 1 << ((irq - IRQ_GPIOA(0)) % 32);
        PMASK = PMASK | (1 << IRQ_TO_REG(irq));
}
Exemple #2
0
static void
imx21_gpio_ack_irq(unsigned int irq)
{
	DEBUG_IRQ("%s: irq %d  isr %d\n", __FUNCTION__, irq,
                  IRQ_TO_REG(irq));
	ISR(IRQ_TO_REG(irq)) |= 1 << ((irq - IRQ_GPIOA(0)) % 32);
}
Exemple #3
0
static void
imx_fpga_ack_irq(unsigned int irq)
{
	int shadow;

	shadow = 1 << ((irq - IRQ_FPGA_START) % NB_IT);
	pr_debug("%s: irq %d ack:0x%x\n", __FUNCTION__, irq, shadow);
	writew(shadow, FPGA_ISR);

	/* if last IT, ack GPIO global IRQ */
	if (readw(FPGA_ISR) == 0) {
		__raw_writel(1 << (ARMADEUS_FPGA_IRQ & 0x1f),
				VA_GPIO_BASE + MXC_ISR(IRQ_TO_REG(ARMADEUS_FPGA_IRQ)));
	}
}
Exemple #4
0
static void
imx21_gpio_mask_irq(unsigned int irq)
{
	DEBUG_IRQ("%s: irq %d\n", __FUNCTION__, irq);
	IMR(IRQ_TO_REG(irq)) &= ~( 1 << ((irq - IRQ_GPIOA(0)) % 32));
}
Exemple #5
0
static void
imx_gpio_unmask_irq(unsigned int irq)
{
	DEBUG_IRQ("%s: irq %d\n", __func__, irq);
	IMR(IRQ_TO_REG(irq)) |= 1 << ((irq - IRQ_GPIOA(0)) % 32);
}