aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/common/ad9361_driver
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2015-01-27 09:12:54 +0100
committerMartin Braun <martin.braun@ettus.com>2015-01-27 09:12:54 +0100
commit94e11cb457fc7cc9b5fa5259881ec5b729eff201 (patch)
tree8437e1890af5fc959420e2a6cc651a85c538f31c /host/lib/usrp/common/ad9361_driver
parent5047677c784077be82d11be26277260e6350a5bc (diff)
parentd238f12252870d73df125649d965edc2a05debf5 (diff)
downloaduhd-94e11cb457fc7cc9b5fa5259881ec5b729eff201.tar.gz
uhd-94e11cb457fc7cc9b5fa5259881ec5b729eff201.tar.bz2
uhd-94e11cb457fc7cc9b5fa5259881ec5b729eff201.zip
Merge branch 'maint'
Conflicts: host/docs/usrp_e3x0.dox
Diffstat (limited to 'host/lib/usrp/common/ad9361_driver')
-rw-r--r--host/lib/usrp/common/ad9361_driver/ad9361_device.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
index 1d199cf0d..8ee7bf231 100644
--- a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
+++ b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
@@ -135,9 +135,15 @@ void ad9361_device_t::_program_fir_filter(direction_t direction, int num_taps, b
_io_iface->poke8(base + 5, reg_numtaps | 0x1A);
if (direction == RX) {
_io_iface->poke8(base + 5, reg_numtaps | 0x18);
+ /* Rx Gain, set to prevent digital overflow/saturation in filters
+ 0:+6dB, 1:0dB, 2:-6dB, 3:-12dB
+ page 35 of UG-671 */
_io_iface->poke8(base + 6, 0x02); /* Also turn on -6dB Rx gain here, to stop filter overfow.*/
} else {
- _io_iface->poke8(base + 5, reg_numtaps | 0x19); /* Also turn on -6dB Tx gain here, to stop filter overfow.*/
+ /* Tx Gain. bit[0]. set to prevent digital overflow/saturation in filters
+ 0: 0dB, 1:-6dB
+ page 25 of UG-671 */
+ _io_iface->poke8(base + 5, reg_numtaps | 0x18);
}
}