This file demonstrates how multiple rapid-fire SPI transfers of more than 32 bytes on the Edison end up with the process in an uninterruptible sleep. This is a modified version of the spidev_test.c file from the spidev kernel module. It has been modified to let the user specify the number of bytes to transfer, the number of times to do the transfer, and the delay between subsequent transfers. On my Edison, running ./spidev_test -n 64 -r 96 almost always results in a hang.
spidev_test.c.zip (2.0 K)