On Tue, 24 Jun 2025 11:06:03 +0200, Jorge Marques wrote:
> The I3C abstraction expects u8 buffers, but some controllers operate with
> a 32-bit bus width FIFO and cannot flag valid bytes individually. To avoid
> reading or writing outside the buffer bounds, use 32-bit accesses where
> possible and apply memcpy for any remaining bytes.
>
> Add two auxiliary methods to include/linux/i3c/master.h and use in the dw
> and cdns i3c controller drivers. The adi and renesas controller drivers
> will also use these methods.
>
> [...]
Applied, thanks!
[1/3] i3c: master: Add inline i3c_readl_fifo() and i3c_writel_fifo()
https://git.kernel.org/abelloni/c/733b439375b4
[2/3] i3c: master: cdns: Use i3c_writel_fifo() and i3c_readl_fifo()
https://git.kernel.org/abelloni/c/c20d3fa70491
[3/3] i3c: master: dw: Use i3c_writel_fifo() and i3c_readl_fifo()
https://git.kernel.org/abelloni/c/6e055b1fb2fc
Best regards,
--
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com