aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/include
Commit message (Collapse)AuthorAgeFilesLines
* mpm: ad937x: RefactorMartin Braun2018-01-221-11/+41
| | | | | | - 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-122-2/+4
| | | | | | | | | 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-2221-275/+43
| | | | Now uses SPDX headers everywhere.
* mpm: Add mmap_regs_ifaceMartin Braun2017-12-222-0/+66
| | | | | | | This is a C++-based peek/poke interface into mmaped objects. Useful for better control over UIO devices. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
* mpm: Enable TX external LO set through args, simplify codeTrung N Tran2017-12-221-12/+7
| | | | | | | 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-0/+4
|
* mpm: ad937x: Add LO lock APIMartin Braun2017-12-221-0/+10
| | | | | Reviewed-By: Steven Bingler <steven.bingler@ni.com> Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mpm: enable RX external LO set through argsTrung N Tran2017-12-221-2/+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-2/+89
| | | | | | | | | | | | | | | | | | | 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.
* mpm: Add log_buf classMartin Braun2017-12-222-0/+105
| | | | | | | This is a buffer for log messages, designed for getting log messages from C++ back into Python. Reviewed-By: Mark Meserve <mark.meserve@ni.com>
* ad937x: address TODOs in adi_ctrlMark Meserve2017-12-221-0/+6
| | | | | change error outputs add comments to some functions
* ad937x: add missing docstrings to ctrlMark Meserve2017-12-221-0/+26
|
* mpm: ad937x: Updated controlsMark Meserve2017-12-221-0/+7
|
* mpm: spi: Added 16-bit SPI transactionsMark Meserve2017-12-221-0/+10
| | | | | - Adds convenience method to read 16-bit SPI transactions - Fixes peek16 in spi_regs_iface to actually use 16-bit transactions
* mg: General fixesMark Meserve2017-12-221-3/+2
| | | | | - Make DB probe-able - Add RPC client
* mpm: spi: Added 16-bit access to SPI regsMartin Braun2017-12-222-0/+15
|
* mpm: Enabled selection of SPI modeMartin Braun2017-12-222-1/+3
|
* mpm: eiscat: magnesium: Removed C++-only SPI ifacesMartin Braun2017-12-224-116/+6
| | | | | | | - EISCAT is now Python only with the exception of the definition of the SPI ifaces - Magnesium uses a Python-generated SPI iface - Removed SPI lock from EISCAT dboard
* mpm: eiscat: Added first pass at EISCAT dboard driverMartin Braun2017-12-221-0/+70
|
* mpm: Exposed spi regs iface factory to PythonMartin Braun2017-12-222-0/+38
|
* mpm: Added peek/poke interface to ad937x_ctrlMartin Braun2017-12-221-0/+6
|
* mpm: Major refactoringMartin Braun2017-12-2217-167/+512
| | | | | | - 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-223-5/+5
|
* lmk: Update LMK04828 driver with values for MagnesiumDerek Kozel2017-12-221-1/+1
|
* ad9371: Added JESD init functionalityMark Meserve2017-12-221-0/+22
|
* mpm: mpm reorganizationAndrej Rode2017-12-225-133/+3
|
* mpm: Improved ad937x codeMark Meserve2017-12-222-1/+150
| | | | | | - Add gain control pin configuration - Fixed gcc compilation - Better docstrings
* mpm: fixup for spi and ad937x path changesMark Meserve2017-12-225-42/+3
|
* mpm: clean up spiMark Meserve2017-12-223-3/+2
| | | | | remove spi_lock remove ad9371 spi_config types
* ad9371: update jesd default configMark Meserve2017-12-221-1/+1
|
* ad9371: cleanup ctrlMark Meserve2017-12-221-6/+0
| | | | | | remove device forward declaration make helper functions local to ad9371_ctrl.cpp fix UHD include paths
* Renamed or moved files (minor cleanup)Martin Braun2017-12-227-78/+2
|
* mpm: CMake cleanup, Python code enhancementsAndrej Rode2017-12-225-1/+88
| | | | | - Send user defined data in ping - Improve rpc_shell, add mpm_debug.py, fix tracebacks in multiprocessing
* mpm: move public includes into include/Martin Braun2017-12-2211-6/+398
|
* mpm: python refactoringAndrej Rode2017-12-222-0/+46
|
* mpm: add make factory to lmk04828 spi ifaceAndrej Rode2017-12-221-0/+3
|
* mpm: Rearchitecture of AD9371 code to use ctrl/device paradigmMark Meserve2017-12-221-5/+14
|
* Initial commit for N3xx development.Martin Braun2017-12-228-0/+301
- 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>