I got confused with how to clear BCH_CTRL_COMPLETE_IRQ bit. In iMX28 RM it said:"
This bit indicates the state of the external interrupt line. Write a one to the SCT clear address to clear
the interrupt status bit." But no SCT registers in BCH module!
In linux platform, the driver clears the bit with following code:
/* Clears a BCH interrupt. */
void gpmi_clear_bch(struct gpmi_nand_data *this)
struct resources *r = &this->resources;
writel(BM_BCH_CTRL_COMPLETE_IRQ, r->bch_regs + HW_BCH_CTRL_CLR);
In CE platform (MX28_FSL_V3), the driver clears the bith with following macro:
// Clear the ECC Complete IRQ.
Which one is right?