Following the guide at AD-FMCADC2-EBZ Quick Start Guide [Analog Devices Wiki] , and using iio_readdev, when trying to set the buffer size, using the '-b' option, to some bigger value, say 4096, iio_readdev gets stuck and never returns. When stoping it with Ctrl-C after 30-40 seconds, I got the "ERROR: Unable to dequeue block: Interrupted system call" message.
The complete command line I used is:
# iio_readdev -b 4096 -s 4096 iio:device0 voltage0 > data.bin
^CERROR: Unable to dequeue block: Interrupted system call
ERROR: Unable to allocate buffer
The ofending line seem to be in libiio, file local.c, line 341:
ioctl (fileno(f), BLOCK_DEQUEUE_IOCTL, &block)
where BLOCK_DEQUEUE_IOCTL if defined in the same file as:
#define BLOCK_DEQUEUE_IOCTL _IOWR('i', 0xa4, struct block)
In my application I need to be able to capture bursts of 1-2Meg of contiguous data from the ADC, any suggestion on how to fix the buffer allocation would be appreciated.