Lines Matching refs:irq_status
478 struct cadence_nand_irq_status irq_status; member
721 struct cadence_nand_irq_status *irq_status) in cadence_nand_clear_interrupt() argument
723 writel_relaxed(irq_status->status, cdns_ctrl->reg + INTR_STATUS); in cadence_nand_clear_interrupt()
724 writel_relaxed(irq_status->trd_status, in cadence_nand_clear_interrupt()
726 writel_relaxed(irq_status->trd_error, in cadence_nand_clear_interrupt()
732 struct cadence_nand_irq_status *irq_status) in cadence_nand_read_int_status() argument
734 irq_status->status = readl_relaxed(cdns_ctrl->reg + INTR_STATUS); in cadence_nand_read_int_status()
735 irq_status->trd_status = readl_relaxed(cdns_ctrl->reg in cadence_nand_read_int_status()
737 irq_status->trd_error = readl_relaxed(cdns_ctrl->reg in cadence_nand_read_int_status()
742 struct cadence_nand_irq_status *irq_status) in irq_detected() argument
744 cadence_nand_read_int_status(cdns_ctrl, irq_status); in irq_detected()
746 return irq_status->status || irq_status->trd_status || in irq_detected()
747 irq_status->trd_error; in irq_detected()
755 memset(&cdns_ctrl->irq_status, 0, sizeof(cdns_ctrl->irq_status)); in cadence_nand_reset_irq()
767 struct cadence_nand_irq_status irq_status; in cadence_nand_isr() local
772 if (irq_detected(cdns_ctrl, &irq_status)) { in cadence_nand_isr()
775 cadence_nand_clear_interrupt(cdns_ctrl, &irq_status); in cadence_nand_isr()
777 cdns_ctrl->irq_status.status |= irq_status.status; in cadence_nand_isr()
778 cdns_ctrl->irq_status.trd_status |= irq_status.trd_status; in cadence_nand_isr()
779 cdns_ctrl->irq_status.trd_error |= irq_status.trd_error; in cadence_nand_isr()
803 struct cadence_nand_irq_status *irq_status) in cadence_nand_wait_for_irq() argument
811 *irq_status = cdns_ctrl->irq_status; in cadence_nand_wait_for_irq()
816 irq_status->status, irq_mask->status); in cadence_nand_wait_for_irq()
819 irq_status->trd_status, irq_mask->trd_status); in cadence_nand_wait_for_irq()
822 irq_status->trd_error, irq_mask->trd_error); in cadence_nand_wait_for_irq()
863 struct cadence_nand_irq_status irq_mask, irq_status; in cadence_nand_wait_on_sdma() local
872 cadence_nand_wait_for_irq(cdns_ctrl, &irq_mask, &irq_status); in cadence_nand_wait_on_sdma()
873 if (irq_status.status == 0) { in cadence_nand_wait_on_sdma()
878 if (irq_status.status & INTR_STATUS_SDMA_TRIGG) { in cadence_nand_wait_on_sdma()
885 irq_status.status); in cadence_nand_wait_on_sdma()
1020 struct cadence_nand_irq_status irq_mask, irq_status = {0}; in cadence_nand_cdma_send_and_wait() local
1033 cadence_nand_wait_for_irq(cdns_ctrl, &irq_mask, &irq_status); in cadence_nand_cdma_send_and_wait()
1035 if (irq_status.status == 0 && irq_status.trd_status == 0 && in cadence_nand_cdma_send_and_wait()
1036 irq_status.trd_error == 0) { in cadence_nand_cdma_send_and_wait()
1040 if (irq_status.status & irq_mask.status) { in cadence_nand_cdma_send_and_wait()