Hi,
we are doing some SPI tests with Linux on the i.MX6UL evaluation board. We found that a SPI transfer takes very long even if the actual communication phase is short.
The image below shows a transfer of 2 bytes at 10MHz SPI clock speed. Green line is the SPI chip select, yellow line is the SPI clock signal. The actual data transfer takes only approx 2...4us while the total chip select active time is almost 100us. Where does this huge overhead come from?
We are using the freescale imx_4.9.11_1.0.0 kernel. The CPU is running at 528MHz. A gpio is used for the SPI chip select.
We measured many transfers. The image shows the shortest transfer cycle time we could find.
Regards
Georg
Hi,
I have the same behavior. Has someone solved this?
The link in Igor's answer is broken.
Regards,
Alex
Hi Georg
gpio chip select is controlled by linux generic spi driver subsystem, one can try
i.MX native chip selects with patch:
kernel/git/next/linux-next.git - The linux-next integration testing tree
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------