/* * Disable an expio pin's interrupt by setting the bit in the imr. * @param irq an expio virtual irq number */ static void expio_mask_irq(u32 irq) { u32 expio = MXC_IRQ_TO_EXPIO(irq); /* mask the interrupt */ __raw_writew(1 << expio, PBC_INTMASK_CLEAR_REG); __raw_readw(PBC_INTMASK_CLEAR_REG); }
/* * Acknowledge an expanded io pin's interrupt by clearing the bit in the isr. * @param irq an expanded io virtual irq number */ static void expio_ack_irq(u32 irq) { u32 expio = MXC_IRQ_TO_EXPIO(irq); /* clear the interrupt status */ __raw_writew(1 << expio, PBC_INTSTATUS_REG); /* mask the interrupt */ expio_mask_irq(irq); }
/* * Disable an expio pin's interrupt by setting the bit in the imr. * @param irq an expio virtual irq number */ static void expio_mask_irq(u32 irq) { u16 reg, expio = MXC_IRQ_TO_EXPIO(irq); reg = __raw_readw(mx35_3stack_board_io + INTR_MASK_REG); /* mask the interrupt */ __raw_writew(reg | (1 << expio), mx35_3stack_board_io + INTR_MASK_REG); }
static void expio_ack_irq(struct irq_data *d) { u32 expio = MXC_IRQ_TO_EXPIO(d->irq); __raw_writew(1 << expio, brd_io + INTR_RESET_REG); __raw_writew(0, brd_io + INTR_RESET_REG); expio_mask_irq(d); }
/* * Enable a expio pin's interrupt by clearing the bit in the imr. * @param irq a expio virtual irq number */ static void expio_unmask_irq(u32 irq) { u16 reg; u32 expio = MXC_IRQ_TO_EXPIO(irq); /* unmask the interrupt */ reg = __raw_readw(brd_io + INTR_MASK_REG); reg &= ~(1 << expio); __raw_writew(reg, brd_io + INTR_MASK_REG); }
/* * Acknowledge an expanded io pin's interrupt by clearing the bit in the isr. * @param irq an expanded io virtual irq number */ static void expio_ack_irq(u32 irq) { u32 expio = MXC_IRQ_TO_EXPIO(irq); /* clear the interrupt status */ __raw_writew(1 << expio, brd_io + INTR_RESET_REG); __raw_writew(0, brd_io + INTR_RESET_REG); /* mask the interrupt */ expio_mask_irq(irq); }
static void expio_unmask_irq(struct irq_data *d) { u16 reg; u32 expio = MXC_IRQ_TO_EXPIO(d->irq); reg = __raw_readw(brd_io + INTR_MASK_REG); reg &= ~(1 << expio); __raw_writew(reg, brd_io + INTR_MASK_REG); }
static void expio_unmask_irq(uint32_t irq) { uint16_t reg; uint32_t expio = MXC_IRQ_TO_EXPIO(irq); /* unmask the interrupt */ reg = __raw_readw(CPLD_INT_MASK_REG); reg &= ~(1 << expio); __raw_writew(reg, CPLD_INT_MASK_REG); }
static void expio_ack_irq(uint32_t irq) { uint32_t expio = MXC_IRQ_TO_EXPIO(irq); /* clear the interrupt status */ __raw_writew(1 << expio, CPLD_INT_RESET_REG); __raw_writew(0, CPLD_INT_RESET_REG); /* mask the interrupt */ expio_mask_irq(irq); }
/* * Enable a expio pin's interrupt by clearing the bit in the imr. * @param irq a expio virtual irq number */ static void expio_unmask_irq(u32 irq) { u32 expio = MXC_IRQ_TO_EXPIO(irq); /* unmask the interrupt */ __raw_writew(1 << expio, PBC_INTMASK_SET_REG); }
/* * Enable a expio pin's interrupt by clearing the bit in the imr. * @param d an expio virtual irq description */ static void expio_unmask_irq(struct irq_data *d) { u32 expio = MXC_IRQ_TO_EXPIO(d->irq); /* unmask the interrupt */ __raw_writew(1 << expio, PBC_INTMASK_SET_REG); }
/* * Acknowledge an expanded io pin's interrupt by clearing the bit in the isr. * @param d an expio virtual irq description */ static void expio_ack_irq(struct irq_data *d) { u32 expio = MXC_IRQ_TO_EXPIO(d->irq); /* clear the interrupt status */ __raw_writew(1 << expio, PBC_INTSTATUS_REG); }