IIO Device Sink: Allow to specify the buffer size

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO Device Source: Allow to specify the buffer size

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO FMCOMMS2 Sink: Allow to specify the buffer size

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO FMCOMMS2 Source: Allow to specify the buffer size

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO Device Source: Fix segfault on big buffer sizes

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO Device Sink: Add internal support for cyclic buffers

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
IIO FMCOMMS2 Sink: Add a "cyclic" parameter

If set to True, then the block will only output one buffer of samples to
the hardware. This buffer will endlessly be repeated on the output.

Note that in this case the FMCOMMS2 Sink block will return WORK_DONE,
which will stop all the blocks directly or indirectly connected to it.
The blocks that are not linked in any way to the FMCOMMS2 Sink block
won't be stopped.

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>