aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/lib/mykonos/ad937x_device.cpp
Commit message (Collapse)AuthorAgeFilesLines
* mpm: ad9371: Accept PID 0x01 as well as 0x03Martin Braun2018-06-281-1/+5
|
* mpm: Update all license headersMartin Braun2018-02-191-2/+2
| | | | | - Fix typo in company name (missing 'a') - Updated SPDX license identifier to version 3.0
* mpm: ad937x: implement set_bw_filterTrung N Tran2018-02-081-3/+21
|
* mpm: ad937x: RefactorMartin Braun2018-01-221-58/+107
| | | | | | - No functional changes - const-ify parameters and local variables where appropriate - Fix long lines and inconsistent formatting
* mpm: mg: Pass deserializer_lane_xbar to ad937x_configTrung N Tran2018-01-121-1/+2
| | | | | | | | | Slot A and Slot B are different in how the JESD lanes are connected. We now pass in different deserializer_lane_xbar config values for each slot. Reviewed-by: Martin Braun <martin.braun@ettus.com> Reviewed-by: Daniel Jepson <daniel.jepson@ettus.com> Reviewed-by: Mark Meserve <mark.meserve@ni.com>
* mpm: Harmonize all license headerMartin Braun2017-12-221-13/+2
| | | | Now uses SPDX headers everywhere.
* mpm: Fix floating-point errors in MCR configurationMartin Braun2017-12-221-80/+86
| | | | | | Use fuzzy comparisons for setting the MCR. Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mpm: Enable TX external LO set through args, simplify codeTrung N Tran2017-12-221-14/+23
| | | | | | | Simplify the process of setting external LO without calling through many API layers. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: mykonos: Add API to change master clock rateTrung N Tran2017-12-221-2/+86
|
* mpm: lib: ad937x: Change _get_arm_binary_pathMoritz Fischer2017-12-221-1/+1
| | | | | | | The firmware will be installed under /lib/firmware/adi/mykonos-m3.bin, so going forward this is the path we require. Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
* mpm: enable RX external LO set through argsTrung N Tran2017-12-221-1/+14
| | | | | | | | | This change allow user to set RX LO of ad9371 to external or internal from args constructor of usrp device. new args is rx_lo_source value can be either internal or external: If there's no rx_lo_source specified or invalid value, default rx_lo is used; which is internal LO. Usage example: usrp_application --args "rx_lo_source=external"
* mg: enable init and track calibration APITrung Tran2017-12-221-55/+10
| | | | | | | | | | | | | | | | | | | Currently, AD9371 turned on most of the calibration and hard coding the turning on process during bringup time. This change enables users to pass in a mask field for init ARM calibration and tracking arm calibration at the time creating USRP device reference. This mask field can be passed through device arguments of: 1/ init_cals : for init ARM calibration masks. This is defined in AD9371 UG-992 table 65. Default to 0x4DFF 2/ tracking_cals : for tracking calibration masks. This is defined in AD9371 UG-992 table 66. Default to 0xC3 Example of pasing in init calibration and tracking calibration mask usrp_application --args "init_cals=0x4f, tracking_cals=0xC3" NOTE: UHD currently expect user to input the correct init_cals and tracking_cals. There's no mechanism to check if init mask and tracking mask are valid. For example if the init mask field not mask 0x4f, the AD9371 will failed to setup.
* mykonos: turn on init cals and tracking calsTrung N Tran2017-12-221-13/+13
|
* ad937x: revise ad937x_deviceMark Meserve2017-12-221-8/+8
| | | | | | add comments add TODOs fix set_gain return value
* mg: replace bind with lambda in ad937x_deviceMark Meserve2017-12-221-49/+56
|
* mg: add const where possible in ad937x_deviceMark Meserve2017-12-221-41/+41
|
* mg: make timeout values uint32_tMark Meserve2017-12-221-1/+1
|
* adi: update arm_version function signatureMark Meserve2017-12-221-1/+19
|
* mpm: ad937x: Updated controlsMark Meserve2017-12-221-225/+385
|
* mg: General fixesMark Meserve2017-12-221-111/+111
| | | | | - Make DB probe-able - Add RPC client
* mg: bring up linksMark Meserve2017-12-221-8/+8
|
* mpm: Major refactoringMartin Braun2017-12-221-23/+19
| | | | | | - Created clean interfaces for SPI and registers - Severed most links to UHD - Added a lockable class which allows exposing mutexes into Python
* mpm: Fixed a plethora of SPI-related issuesMartin Braun2017-12-221-16/+27
|
* ad9371: Added JESD init functionalityMark Meserve2017-12-221-102/+133
|
* mpm: Improved ad937x codeMark Meserve2017-12-221-40/+136
| | | | | | - Add gain control pin configuration - Fixed gcc compilation - Better docstrings
* mpm: Minor modifications to ad937x controlsMartin Braun2017-12-221-25/+24
| | | | | - Made rates a vector instead of set for better compat w/ RPC and UHD - Minor whitespace fixes
* mpm: Rearchitecture of AD9371 code to use ctrl/device paradigmMark Meserve2017-12-221-192/+374
|
* Initial commit for N3xx development.Martin Braun2017-12-221-0/+334
- Creates mpm/ subdirectory - First pass at hardware daemon/MPM - New code for LMK04828, AD9371 - spidev integration Contributions by: Martin Braun <martin.braun@ettus.com> Derek Kozel <derek.kozel@ettus.com> Mark Meserve <mark.meserve@ni.com> Andrej Rode <andrej.rode@ettus.com>