aboutsummaryrefslogtreecommitdiffstats
path: root/src/librtlsdr.c
diff options
context:
space:
mode:
authorSteve Markgraf <steve@steve-m.de>2012-10-19 01:17:28 +0200
committerSteve Markgraf <steve@steve-m.de>2012-10-19 01:17:28 +0200
commit25789493c678f20bb8b58c7f60e06e96bf314c18 (patch)
tree84b1288011bd58a43fc94ac79141f2038fe5e108 /src/librtlsdr.c
parentaabd42dd05694d05ffdeff353e98c748b719437d (diff)
tuner_r820t: add manual RF gain setting
Signed-off-by: Steve Markgraf <steve@steve-m.de>
Diffstat (limited to 'src/librtlsdr.c')
-rw-r--r--src/librtlsdr.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/librtlsdr.c b/src/librtlsdr.c
index 0aeda94..6efd3aa 100644
--- a/src/librtlsdr.c
+++ b/src/librtlsdr.c
@@ -180,8 +180,8 @@ int r820t_init(void *dev) {
int r820t_exit(void *dev) { return 0; }
int r820t_set_freq(void *dev, uint32_t freq) { return r820t_SetRfFreqHz(dev, freq); }
int r820t_set_bw(void *dev, int bw) { return 0; }
-int r820t_set_gain(void *dev, int gain) { return 0; }
-int r820t_set_gain_mode(void *dev, int manual) { return 0; }
+int r820t_set_gain(void *dev, int gain) { return R828_SetRfGain(dev, gain); }
+int r820t_set_gain_mode(void *dev, int manual) { return R828_RfGainMode(dev, manual); }
/* definition order must match enum rtlsdr_tuner */
static rtlsdr_tuner_iface_t tuners[] = {
@@ -788,7 +788,10 @@ int rtlsdr_get_tuner_gains(rtlsdr_dev_t *dev, int *gains)
63, 65, 67, 68, 70, 71, 179, 181, 182,
184, 186, 188, 191, 197 };
const int fc2580_gains[] = { 0 /* no gain values */ };
- const int r820t_gains[] = { 0 /* no gain values */ };
+ const int r820t_gains[] = { 0, 9, 14, 27, 37, 77, 87, 125, 144, 157,
+ 166, 197, 207, 229, 254, 280, 297, 328,
+ 338, 364, 372, 386, 402, 421, 434, 439,
+ 445, 480, 496 };
const int unknown_gains[] = { 0 /* no gain values */ };
int *ptr = NULL;