Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

i3c: mipi-i3c-hci: Resume controller after aborted transfer

Host Controller goes to halt state after aborted transfer and needs to
be resumed by SW. Add this resuming to DMA mode code too.

Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Link: https://lore.kernel.org/r/20230921055704.1087277-13-jarkko.nikula@linux.intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>

authored by

Jarkko Nikula and committed by
Alexandre Belloni
fc9176e7 3521fa63

+3 -1
+3 -1
drivers/i3c/master/mipi-i3c-hci/dma.c
··· 759 759 if (status & INTR_RING_OP) 760 760 complete(&rh->op_done); 761 761 762 - if (status & INTR_TRANSFER_ABORT) 762 + if (status & INTR_TRANSFER_ABORT) { 763 763 dev_notice_ratelimited(&hci->master.dev, 764 764 "ring %d: Transfer Aborted\n", i); 765 + mipi_i3c_hci_resume(hci); 766 + } 765 767 if (status & INTR_WARN_INS_STOP_MODE) 766 768 dev_warn_ratelimited(&hci->master.dev, 767 769 "ring %d: Inserted Stop on Mode Change\n", i);