aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/dboard/magnesium
Commit message (Collapse)AuthorAgeFilesLines
* mg: Temporarily disable concurrency in parts of set_rpc_client()Martin Braun2018-02-092-1/+15
| | | | | | There is an issue with parallel inits and liberio which crops up during initialization. This is not a fix but is a workaround which enables the parallel initialization of devices using liberio.
* mg: Fix some compiler warningsMartin Braun2018-02-081-20/+39
| | | | | - Superfluous captures in lambdas - Make use of new TX bandwidth API
* mg : implement set_bandwidthTrung N Tran2018-02-084-17/+27
|
* mg: Remove superfluous DEBUG message, minor formattingMartin Braun2018-01-181-10/+12
| | | | Fixed indents to 4 spaces in get_?x_lo_source().
* mg: Fix various compiler warningsMartin Braun2018-01-163-47/+48
| | | | | | - Made const constexpr where sensible - Moved non-global constants to their local scope - Changed const char * to const char[] where they should
* mg: Fix missing return value for half-dB stepsMartin Braun2018-01-161-0/+1
|
* mg: add clip function on setting individual gain.Trung Tran2018-01-121-8/+19
| | | | Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mg: add facility that handle individual gainTrung N Tran2018-01-125-12/+348
| | | | | | | -Create name for each gain/att element -Create property tree entry for each gain and their handlers. -Create gain profile that control how gain distributed. Right now, it is either "default" or "manual".
* mg: fix update_freq direction in set_rx_lo_freqTrung N Tran2018-01-091-1/+1
|
* fixup! mg: Use enums for all bands, move freq mapping to single locationMartin Braun2018-01-081-0/+1
|
* mg: Use enums for all bands, move freq mapping to single locationMartin Braun2018-01-089-109/+339
| | | | | | | | This removes the need to re-implement the band checks (in particular, the low band check) in multiple places, potentially causing confusion. Signed-off-by: Trung Tran <trung.tran@ettus.com> Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mg: Remove superfluous UHD_VARMartin Braun2018-01-081-1/+0
|
* Move all headers to SPDX format, harmonize license headersMartin Braun2017-12-222-26/+4
|
* mg: Add 'identify' block arg, will toggle LEDs for identificationMartin Braun2017-12-225-1/+51
|
* mg: Set default spp at ctor time, when xports have been init'dMartin Braun2017-12-221-0/+12
|
* mg: Don't set default rate before having RPC accessMartin Braun2017-12-221-2/+0
| | | | | This will do nothing useful, but will print warnings that clock rates don't match. So let's remove that setting.
* mg: Renamed lowband LO to 'lowband'Martin Braun2017-12-221-1/+1
| | | | Reviewed-by: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* mg: Use floating point comparison for all frequenciesTrung N Tran2017-12-222-23/+23
| | | | Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mg: Fix tx low band frequencyTrung N Tran2017-12-221-3/+2
| | | | Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mg: external LO need update correct freqTrung N Tran2017-12-221-2/+13
| | | | Need to update rf freq to half of ad9371
* mg: Fix reading back output sampling rateMartin Braun2017-12-222-7/+0
| | | | Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mg: Add LO specific properties and methodsTrung N Tran2017-12-224-57/+515
| | | | | | | | This change adds extra hooks to the property tree to make LOs accessible thru the property tree. These can be used by multi_usrp api. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* n3xx: fix TX power lossTrung N Tran2017-12-221-0/+1
| | | | Need to set RF frequency after set_tx_frequency done.
* mg: Update gain immediately after setting frequencyTrung N Tran2017-12-222-5/+37
| | | | | | | We want to have set frequency and set gain atomic. i.e if user set gain and tune to different frequency, they expect the gain won't change. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mg: Lock access to settersMartin Braun2017-12-222-0/+16
| | | | | | | | | | | | Magnesium APIs are not thread-safe and can take a while to execute in some cases. Adding a mutex to setters avoids invalid states of the hardware from API calls. Note that the lock applies to one block at a time. With the two-radios-per-dboard approach, two locks need to be applied and race conditions are still possible. Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mg: Fix gain setting on channels 1 and 3Trung Tran2017-12-224-36/+46
| | | | | | | Updated channel param: -modify radio_ctrl_cpld the param for channel has to be more concrete type of chan_sel_t -fix _update_rx_freq_switches and _update_tx_freq_switches to get correct frequency by NOT using radio base class
* mg: fix rx gain on channel 1Trung N Tran2017-12-221-1/+2
|
* mg: Fix TX power issuesTrung N Tran2017-12-221-1/+3
| | | | | - Fixed incorrect register address for channel 1 lowband mixer select - Fixed enabling of bypass path
* mg: fix TX dsa bugTrung N Tran2017-12-221-1/+3
| | | | | DSA value was set at wrong value since it is at upper 6 bits of DSA register. Added comment.
* mg: Enable variable master clock ratesMartin Braun2017-12-224-9/+50
| | | | | | | | | | The master_clock_rate argument is passed to init() during initialization; this change allows to query the correct MCR at initialization time. It does not allow changing the MCR while a session is active. The MCR also affects the LO settings; it is the reference clock for the lowband LOs.
* mg: Init dboard sensors via MPMMartin Braun2017-12-223-9/+39
| | | | | Reviewed-By: Steven Bingler <steven.bingler@ni.com> Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mpm: mg: Add dboard sensors for low- and highband LO lock statusMartin Braun2017-12-221-2/+26
| | | | | | | | | - Add LO locked APIs to Magnesium - Add LO locked sensor APIs for RX/TX and highband/lowband LOs - Poll all those sensors from magnesium_radio_ctrl_impl Reviewed-By: Steven Bingler <steven.bingler@ni.com> Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mg: Fix minor compiler warningsMartin Braun2017-12-223-19/+22
|
* mg: ad9371: Add shortcut for RPC requestsMartin Braun2017-12-222-22/+19
|
* mg: ad9371: Add API to toggle LO sourceTrung Tran2017-12-222-0/+35
|
* mg: Add back _rpc_prefixMartin Braun2017-12-222-0/+5
|
* mg: Add stubs for LO locked sensorsMartin Braun2017-12-223-1/+48
|
* mg: Add stubs for lo_locked sensorMartin Braun2017-12-221-1/+17
|
* mg: Include Algorithm header so that std::max resolves properly.Andrew Lynch2017-12-221-0/+1
|
* mg: Stop sharing RX and TX LO sptrs across blocksMartin Braun2017-12-221-12/+0
| | | | All properties are already shared through the prop tree API.
* mg: Force updating of CPLD/ATR bits at initMartin Braun2017-12-223-34/+36
|
* mg: Enable CAL and LO-CAL "antenna" inputsMartin Braun2017-12-223-15/+33
| | | | | For consistency, the LO-CAL antenna name is actually "LOCAL" (without the dash).
* mg: master and slave radio sharing frequencyTrung Tran2017-12-223-129/+62
| | | | | | | This addresses the fact that two Mg Radio RFNoC blocks share a single LO in both Tx and Rx direction. When setting the frequency on one, the appropriate actions are now triggered on the other side. The same goes for getters, they now actually tell the truth.
* mg: Keep on RX amplifier even when ATR state is idleMartin Braun2017-12-221-1/+1
|
* mg: Add static gain tables and -supportMartin Braun2017-12-229-279/+799
| | | | | | | | | - Adds two new compilation units (magnesium_gain_table.* and magnesium_radio_ctrl_gain.cpp) - Static gain tables are hard-coded in that file, includes method to look up gain table entries for a given frequency and gain - DSA code moved back to accept attenuation - TX/RX switch code needed update to enable bypass for certain gains
* mg: Make CPLD API more fine-grainedMartin Braun2017-12-223-99/+250
| | | | | | | | | All ATR settings were on one big API call for each TX and RX, respectively. This splits up the ATR settings into related components, such as: - Antenna input for RX side - Frequency-related (RX LNAs) - TRX switch
* mg: Added stubs for LO controlsMartin Braun2017-12-222-0/+77
|
* mg: Refactor magnesium_radio_ctrl and friendsMartin Braun2017-12-229-1014/+1275
| | | | | | - Spin out AD9371 control into its own class - Split file into multiple compilation units - Fixed many minor code formatting issues
* mg: Add defer_commit argument to CPLD controlsMartin Braun2017-12-222-15/+32
| | | | | This will set you call setters on the CPLD control object without immediately triggering a SPI transaction.
* mg: Add support for TX switches.Alex Williams2017-12-221-2/+58
|