laforge
/
openbts-osmo
Archived
1
0
Fork 0
Commit Graph

3 Commits

Author SHA1 Message Date
Thomas Tsou 9de5527574 uhd: enable priority scheduling on receive loop
Though the receive loop ultimately drives the GSM clock,
it does not have any priority because it runs as a
separate thread from the trasmit loop. The transmit
has priority because it starts the UHD device, where
priority scheduling is enabled. The result is frequent
underruns, which occur regardless of buffer size tuning.

To address this, break out and expose the priority
setting so that it can be called from the radioInterface
at the start of a new thread.

Tested on a modest Intel Core 2 Duo tablet running
Linux 2.6.33.7.2-rt30, this reduced underruns down to
near zero.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
2011-03-23 11:35:35 -04:00
Thomas Tsou 753118031e Transceiver: move I/Q swap and byteorder to behind device interface
The non-UHD implementation tunes the DDC to output an inverted
spectrum that requires swapping on the host. Push I/Q and byte
swapping into the device implementation and strip the related
bits out of the remaining transceiver code.

This also moves the Transceiver closer to the Transcever52M
version.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
2011-01-28 13:26:39 -05:00
Thomas Tsou 9c091dc7a9 uhd: separate USRPDevice and create virtual device interface
Move essential interface components into an abstract Device class
and create a factory method for instantiating compile-time
specified derived types (USRP1 or UHD).

The radioInterface has a device specific type conversion call to
the USRP1 driver, so push that behind the Device interface too.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
2010-11-16 22:11:50 -05:00