| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Note: On the first run, this flag will always assert.
|
| |
|
|
|
|
|
|
| |
The clock_synchronizer, jesdcore, and dboard_clk_control objects don't
need to exist for the full lifetime of the Magnesium class. Having them
around complicates management of UIO file descriptors.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- re-wrote portions of the LMK driver for flexible rates and configuration
- tweaked TDC driver for compatibility and ease of debugging
- updated comments and log statements throughout for uniformity
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
| |
Reviewed-By: Steven Bingler <steven.bingler@ni.com>
Reviewed-By: Trung Tran <trung.tran@ettus.com>
|
|
|
|
| |
Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
|
|
|
|
|
|
| |
Default is to run in parallel. serialize_init=1 will run them serially.
Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
|
|
|
|
| |
Fixes some compiler warnings.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- Added 'product' information to N310
- MPM discovery checks for 'product' field
|
|
|
|
|
| |
This tqdm is not using anywhere and causing trouble for the sdimage; so
I remove it.
|
| |
|
| |
|
|
|
|
| |
Reviewed-By: Trung Tran <trung.tran@ettus.com>
|
|
|
|
| |
Reviewed-By: Trung Tran <trung.tran@ettus.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Reviewed-By: Mark Meserve <mark.meserve@ni.com>
|
|
|
|
| |
Reviewed-By: Mark Meserve <mark.meserve@ni.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Note: The AD9371 lock sensors are only stubbed out for now.
|
|
|
|
|
| |
This commit combines code from various branches to finally enable both
UDP and Liberio transports.
|
| |
|
|
|
|
|
| |
Note: The dispatcher is not yet used at this point. However, it will
check the existence of certain devices.
|
|
|
|
|
|
|
| |
SPI interfaces and -lock, user EEPROM, radio regs, CPLD, dboard clock
control and GPIO expander can be initialized in Magnesium.__init__().
This shaves a little time off of the actual init() call and allows for
earlier failures.
|
|
|
|
|
|
| |
- Removed superfluous code
- Fixed most PyLint warnings
- Reordered methods to match call order
|
|
|
|
| |
Log prefixes weren't properly being set.
|
| |
|
| |
|
|
|
|
|
|
| |
Now, when claiming a device, the connection type will be stored as a
string in PeriphManagerBase. This way we can read out the current
connection type even when not currently inside an RPC call.
|
| |
|
| |
|
|
|
|
| |
Use @norpc instead. This fixes some linting issues.
|
| |
|
|
|
|
|
|
|
|
| |
- Any RPC call with uncaught exceptions will result in additional
logging on MPM side
- Adds get_last_error() API call
- get_last_error() is populated by various methods within rpc_server.py,
but also from every uncaught exception
|
|
|
|
|
| |
-update_fpga loads the FPGA image from the base class's update_component function
-checks if FPGA image is a bit or bin file, and converts to Zynq-compatible binfile if necessary
|
|
|
|
|
|
|
|
| |
-update_component takes a byte array containing the data to be written,
and a dictionary containing the metadata of the component to be
updated
-The metadata must contain 'id' and 'filename'
-The metadata may contain an md5 hash ('md5')
|
| |
|
| |
|