spi: imx: Increase imx51 ecspi burst length fails on imx6dl and imx8mm

From: linux
Date: Sat Nov 18 2023 - 09:44:53 EST


After upgrade from kernel 6.5.11 to 6.6.1 the spi-devices on my hw
colibri-imx6dl and verdin-imx8mm are not working anymore (TPM2 and SPI-SRAM).

Analyzing the problem showed that the 2 commits introduced the problem:

spi: Increase imx51 ecspi burst length based on transfer length
15a6af94a2779d5dfb42ee4bfac858ea8e964a3f

spi: imx: Take in account bits per word instead of assuming 8-bits
5f66db08cbd3ca471c66bacb0282902c79db9274

Reverting the commits solved the problem.

The analyse with the logic-analyser showed a wrong number of transmitted
bytes and wrong data.
When I try to send 127 Byte with a incrementing pattern (0x01,0x02,0x03,..),
504 Bytes are sent (0x00,0x00,0x01 0x00,0x00,0x00,0x02, 0x00,0x00,0x00,0x03).
We tested with different sizes and patterns, all are not ok.
While analysing the configuration and code I was not able to see any obvious
mistake.

Has someone else discovered such misbehaviour or has any idea what is wrong?
Best Regards
Stefan