Getting 300 usec delay between two consecutive SPI writes on Android Image


#1

Hi,

Issue:
I have observed that, there is ~300microseconds delay between 2 consecutive SPI writes.

Even if we try by modifying the delay_usecs in spi_transfer structure and tested most of the time we are getting ~300 microseconds delay only and sometimes even less delay upto ~200 microseconds.

I had seen the similar issue on Debian image from below link.
http://www.96boards.org/forums/topic/how-to-enable-spi-and-access-it-in-debian-os/#gsc.tab=0

Can any one share what causes this delay?How we can decrease the delay?


#2

Hi @Praveen_K

The Android SPI driver is very different from the Debian SPI Driver, the issues in the other thread only apply to the Debian builds. I haven’t tried out the Android SPI drivers so I am not really familiar with their operation, but I have a guess.

I suspect your problem is related to the fact that the you have a very light processing load and the CPU(s) are being clocked very slowly. Hence it takes a long time to get in and out of the kernel and through all of the layers of device driver.

Have you tried speeding up the CPUs? The Processor Governor Guide will give you some hints on how to speed up the CPUs. https://developer.qualcomm.com/download/db410c/processor-governor-guide-qualcomm-snapdragon-410.pdf


#3

@Praveen_K Congrats on getting SPI to work on Android! If you don’t mind, please give back and share instructions to do that as it would definitely help the many other users who need it as well.


#4

HiJiking ,

Thank you very much for your reply.

@Vchong,I am still working to get the SPI working on 410 c board, actually I got in another dragon board.

I will share for sure once I got SPI working on dragon 410c.