In the function "iio_device_create_buffer", a block is dequeued. There is the comment "Dequeue the first buffer, so that buf->buffer is correctly initialized". I haven't yet dug into the code, but what is the reason for this dequeue and is it necessary???
The reason I ask is because I'm trying to create an RX buffer when IQ data is not coming in (due to our implementation), but due to the dequeue the create buffer locks up.