diff options
| author | Yuval Adam <_@yuv.al> | 2018-07-30 21:58:21 +0300 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2018-07-30 21:58:21 +0300 |
| commit | f0025e9c44c519224b532c54c8b301029a42f98e (patch) | |
| tree | c6ac2ae43f1d441b3aa564001b9d3df7386d6000 /src/lib.rs | |
| parent | d1fe53b99a44d9ffa4f1b21b13e8a686c30ceff8 (diff) | |
Implement deinit_baseband()
Diffstat (limited to 'src/lib.rs')
| -rw-r--r-- | src/lib.rs | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -190,6 +190,13 @@ impl<'a> RtlSdr<'a> { self.demod_write_reg(&handle, 0, 0x0d, 0x83, 1); } + fn deinit_baseband(&self, handle: &libusb::DeviceHandle) { + // deinit tuner? + + // power off demod and ADCs + self.write_reg(&handle, BLOCK_SYSB, ADDR_SYS_DEMOD_CTL, 0x20, 1); + } + pub fn open(&mut self) { for mut dev in self.ctx.devices().unwrap().iter() { let desc = dev.device_descriptor().unwrap(); @@ -245,6 +252,8 @@ impl<'a> RtlSdr<'a> { }; } + self.deinit_baseband(&handle); + if has_kernel_driver { handle.attach_kernel_driver(self.iface_id).ok(); } |
