[PATCH V3 16/16] i3c: mipi-i3c-hci: Increase DMA transfer ring size to maximum

Frank Li Frank.li at nxp.com
Tue May 12 11:15:49 PDT 2026


On Mon, May 04, 2026 at 02:33:52PM +0300, Adrian Hunter wrote:
> The DMA transfer ring is currently limited to 16 entries, despite the
> MIPI I3C HCI supporting up to 32 devices.  When the ring lacks space for a
> new transfer list, the driver returns -EBUSY, which can be unexpected
> for clients.
>
> Increase the DMA transfer ring size to the maximum supported value of
> 255 entries.  This effectively eliminates ring-space exhaustion in
> practice and avoids the complexity of adding secondary queuing
> mechanisms.
>
> Even at the maximum size, the memory overhead remains small
> (approximately 24 bytes per entry by default).
>
> Signed-off-by: Adrian Hunter <adrian.hunter at intel.com>
> ---
Reviewed-by: Frank Li <Frank.Li at nxp.com>
>
>
> Changes in V2 and V3:
>
> 	None
>
>
>  drivers/i3c/master/mipi-i3c-hci/dma.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i3c/master/mipi-i3c-hci/dma.c b/drivers/i3c/master/mipi-i3c-hci/dma.c
> index 4029d4d9e784..9549d98add4b 100644
> --- a/drivers/i3c/master/mipi-i3c-hci/dma.c
> +++ b/drivers/i3c/master/mipi-i3c-hci/dma.c
> @@ -27,7 +27,7 @@
>   */
>
>  #define XFER_RINGS			1	/* max: 8 */
> -#define XFER_RING_ENTRIES		16	/* max: 255 */
> +#define XFER_RING_ENTRIES		255	/* max: 255 */
>
>  #define IBI_RINGS			1	/* max: 8 */
>  #define IBI_STATUS_RING_ENTRIES		32	/* max: 255 */
> --
> 2.51.0
>



More information about the linux-i3c mailing list