aboutsummaryrefslogtreecommitdiffstats
path: root/host
Commit message (Collapse)AuthorAgeFilesLines
...
* mpmd: Add get_mtu() API and MTU discovery for UDP transportsMartin Braun2017-12-225-0/+143
| | | | | | | | | The mpmd_xport_mgr classes can now return their own MTU. The UDP xport manager is a special case, it doesn't actually know its MTU, and thus runs an MTU discovery, using the MPM-ECHO command to discover MTU by sending variable-size packets as a probing mechanism. Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpmd: Device discovery fixes and cleanupAshish Chaudhari2017-12-224-32/+38
| | | | | | | | | - Fixed issue where the "addr" device args was not honored - Results returned by find only enumerate mgmt_addrs - Explicitly require addr to be specified for RFNoC comms - Cleaned up constants for mgmt_addr, addr and second_addr Reviewed-by: Martin Braun <martin.braun@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>
* mpmd: Implement better xport selection algorithmMartin Braun2017-12-221-8/+22
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpmd: Refactor MPM transport architecture, use managersMartin Braun2017-12-2212-404/+843
| | | | | | | | | | | | | | This splits up the transport code in mpmd_impl across multiple classes to properly leverage the request_xport/commit_xport API in MPM. Different types of transport (UDP, liberio) use their own distinct classes, which are generated dynamically on request. This is a true refactoring despite the large amount of changes; there are no functional differences. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com> Reviewed-By: Trung Tran <trung.tran@ettus.com> Reviewed-By: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* mpm: mpmd: Add MPM compat number checkBrent Stapleton2017-12-221-0/+27
| | | | Reviewed-by: Martin Braun <martin.braun@ettus.com>
* docs: Various updates to N3XX manualsMartin Braun2017-12-223-8/+100
|
* mpmd: Allow to connect via addr or mgmt_addrMartin Braun2017-12-221-51/+103
| | | | Reviewed-By: Brent Stapleton <brent.stapleton@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>
* types: Change eeprom_map_to to uint8_t vectorsMartin Braun2017-12-222-3/+6
| | | | | | | mpmd_impl was already using this type, fixed conversion from std::string to std::vector<uint8_t> there too. Reviewed-By: Brent Stapleton <brent.stapleton@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-222-3/+5
| | | | | - Fixed incorrect register address for channel 1 lowband mixer select - Fixed enabling of bypass path
* mpmd: More gracefully quite the reclaim loop on failureMartin Braun2017-12-221-1/+6
|
* fpga load: Atomic updating of multiple componentsBrent Stapleton2017-12-223-57/+109
| | | | | | | - The MPM function update_component now accepts multiple components to be updated in one RPC call. - Updated the property tree and image loader to match this change. - Also added DTS loading to the image loader.
* 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.
* legacy_compat: extend radio index and radio slotTrung N Tran2017-12-221-2/+28
| | | | We need more radio index and radio slot for N310.
* mpmd: Bump init timeout to 120 seconds (sic)Martin Braun2017-12-221-1/+1
|
* 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
|
* mpm: added additional filtering to mpm find routineBrent Stapleton2017-12-221-1/+13
| | | | | | mpm_find now filters discovered devices using (if provided in args) name, serial, type, and product. This method follows the same logic as the x300 find routine.
* legacy_compat: Fix number of TX channels per radio calculation when ↵Michael West2017-12-221-1/+1
| | | | skip_dram is used
* mg: Add stubs for lo_locked sensorMartin Braun2017-12-221-1/+17
|
* mpm/mpmd: Move to request_xport()/commit_xport() architectureMartin Braun2017-12-225-125/+347
| | | | | This commit combines code from various branches to finally enable both UDP and Liberio transports.
* fpga load: mpmd property tree now uses the MPM list_updateable_componentsBrent Stapleton2017-12-221-2/+4
| | | | Dynamically generates property tree by querying MPM device for a list of updateable components.
* 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
|
* uhd: Remove keys from device hashingMartin Braun2017-12-221-3/+16
|
* 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.
* mpmd: Bump initialization timeout to 45 secondsMartin Braun2017-12-221-1/+1
|
* mg: Keep on RX amplifier even when ATR state is idleMartin Braun2017-12-221-1/+1
|
* mpmd: Use the get_last_error feature from the RPC clientMartin Braun2017-12-222-2/+6
| | | | | The RPC client will now query the MPM server for details when an error occured.
* rpc: Add feature to retrieve an error stringMartin Braun2017-12-221-6/+58
| | | | | | It can be helpful to go back to the RPC server for clarification on what just happened. This adds an optional argument to the RPC client for how to retrieve that info.
* fpga load: adding MPMD image loader functionBrent Stapleton2017-12-222-0/+107
| | | | uhd_image_loader now supports type=n310, and loads the FPGA provided in the arguments.
* fpga load: adding updateable components to mpmd property treeBrent Stapleton2017-12-221-0/+38
| | | | The FPGA image, and other components, can now be set from the property tree. The registered function expects a component_file_t, which combines the data file and metadata dictionary.
* 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