gr-osmosdr/lib
Anton Blanchard 49f9b2df2a I'm using an Airspy HF+ Discovery with the Soapy driver. Whenever I turn AGC off it stops receiving samples.
On closer inspection, switching AGC off results in samples stalling for
an extended period (hundreds of milliseconds). As such, we hit the
timeout in SoapyAirspyHF::readStream() and return SOAPY_SDR_TIMEOUT
(-1).

Things go wrong at this point. It takes a long time before readStream()
is called again, presumably because we returned 0 from work(). By this
time our buffers have overflown, readStream() returns SOAPY_SDR_OVERFLOW
(-2) and work() returns 0. We loop forever, continually overflowing
buffers.

Fix this by looping in soapy_source_c::work() when ->readStream returns
SOAPY_SDR_OVERFLOW so that we consume the buffers straight away.

Signed-off-by: Anton Blanchard <anton at ozlabs.org>

Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-02 23:50:59 +02:00
..
airspy cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
airspyhf cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
bladerf cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
fcd cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
file cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
freesrp cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
hackrf cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
miri cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
osmosdr cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
redpitaya cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
rfspace build: Update build system to GR 3.8 standards 2020-02-16 09:52:00 +01:00
rtl cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
rtl_tcp rtl_tcp: Throw an exception if TCP connection fails 2020-08-02 23:46:14 +02:00
sdrplay cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
soapy I'm using an Airspy HF+ Discovery with the Soapy driver. Whenever I turn AGC off it stops receiving samples. 2020-08-02 23:50:59 +02:00
uhd cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
CMakeLists.txt cmake: Go back CMake min ver. 3.8 by removing need for CMP0079 2020-08-02 22:17:05 +02:00
arg_helpers.h osmo: minor build tweaks w/ rtl on msvc 2015-04-28 22:27:53 +02:00
config.h.in airspyhf: Add initial support for Airspy HF+ 2020-02-16 09:52:00 +01:00
device.cc airspyhf: Add initial support for Airspy HF+ 2020-02-16 09:52:00 +01:00
ranges.cc introduce osmosdr namespace, remove _c suffix 2013-05-30 16:14:22 +02:00
sink_iface.h introduce time & clock synchronisation APIs 2014-11-25 20:47:59 +01:00
sink_impl.cc lib/{source/sink}: Fix the set_sample_rate value return value if no change 2020-02-16 09:52:00 +01:00
sink_impl.h introduce time & clock synchronisation APIs 2014-11-25 20:47:59 +01:00
source_iface.h introduce time & clock synchronisation APIs 2014-11-25 20:47:59 +01:00
source_impl.cc lib/{source/sink}: Fix the set_sample_rate value return value if no change 2020-02-16 09:52:00 +01:00
source_impl.h introduce time & clock synchronisation APIs 2014-11-25 20:47:59 +01:00
time_spec.cc osmo: minor build tweaks w/ rtl on msvc 2015-04-28 22:27:53 +02:00