]> git.ipfire.org Git - thirdparty/linux.git/commit
i3c: mipi-i3c-hci: Add DMA ring abort/reset quirk for Intel controllers
authorAdrian Hunter <adrian.hunter@intel.com>
Wed, 3 Jun 2026 09:07:46 +0000 (12:07 +0300)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sun, 14 Jun 2026 15:21:34 +0000 (17:21 +0200)
commit29ca24fbd2efa7ade70e342f3ebb4a7071353b62
tree69b4f1ada4774e1ff028d81353a378b68c3a2b31
parenta53891532acdc726f821e398e68c4b2d182c387d
i3c: mipi-i3c-hci: Add DMA ring abort/reset quirk for Intel controllers

Some Intel I3C HCI controllers cannot reliably restart a DMA ring after an
ABORT.  Additional queue resets are required to recover, and must be
performed using PIO reset bits even while operating in DMA mode.

This behavior is non-standard.  Introduce a controller quirk to opt into
the required PIO queue resets after a DMA ring abort, and enable it for
Intel LPSS I3C controllers.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260603090754.16252-10-adrian.hunter@intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/master/mipi-i3c-hci/core.c
drivers/i3c/master/mipi-i3c-hci/dma.c
drivers/i3c/master/mipi-i3c-hci/hci.h