On Mon, May 11, 2020 at 09:32:47PM +0300, Serge Semin wrote: > Thanks for the explanation. Max segment size being set to the DMA controller generic > device should work well. There is no need in setting the transfer and messages > size limitations. Besides I don't really see the > max_transfer_size/max_message_size callbacks utilized in the SPI core. These > functions are called in the spi-mem.c driver only. Do I miss something? We really should validate them in the core but really they're intended for client drivers (like spi-mem kind of is) to allow them to adapt the sizes of requests they're generating so the core never sees anything that's too big. For the transfers we have a spi_split_transfers_maxsize() helper if anything wants to use it. Fortunately there's not that many controllers with low enough limits to worry about so actual usage hasn't been that high.