bladerf: make source less picky wrt rf gain

This commit is contained in:
Dimitri Stolnikov 2013-10-03 14:37:02 +02:00
parent e303948ffb
commit 2feacf957b
1 changed files with 7 additions and 10 deletions

View File

@ -496,17 +496,14 @@ double bladerf_source_c::set_gain( double gain, const std::string & name, size_t
if( name == "LNA" ) { if( name == "LNA" ) {
bladerf_lna_gain g; bladerf_lna_gain g;
if( gain == 0.0 ) {
g = BLADERF_LNA_GAIN_BYPASS; if ( gain >= 6.0f )
} else if( gain == 3.0 ) { g = BLADERF_LNA_GAIN_MAX;
else if ( gain >= 3.0f )
g = BLADERF_LNA_GAIN_MID; g = BLADERF_LNA_GAIN_MID;
} else if( gain == 6.0 ) { else /* gain < 3.0f */
g = BLADERF_LNA_GAIN_MAX; g = BLADERF_LNA_GAIN_BYPASS;
} else {
std::cerr << "Invalid LNA gain requested: " << gain << ", "
<< "setting to LNA_MAX (6dB)" << std::endl;
g = BLADERF_LNA_GAIN_MAX;
}
ret = bladerf_set_lna_gain( _dev, g ); ret = bladerf_set_lna_gain( _dev, g );
} else if( name == "VGA1" ) { } else if( name == "VGA1" ) {
ret = bladerf_set_rxvga1( _dev, (int)gain ); ret = bladerf_set_rxvga1( _dev, (int)gain );