aboutsummaryrefslogtreecommitdiffstats
path: root/host
Commit message (Collapse)AuthorAgeFilesLines
* examples: Fix --random option in benchmark_ratemichael-west2020-10-121-5/+11
| | | | | | | | The implementation was not properly configuring the stream command if the --random flag was used. It was especially bad when multiple channels were specified. Signed-off-by: michael-west <michael.west@ettus.com>
* deps: rpclib: Fix issue on socket closingMartin Braun2020-10-091-1/+7
| | | | | | | The rpclib server session closes its socket, which can fail. In our case, we only use the server for some tests, and we close the server on process exit, so we let the error slide. Since we close servers in dtors, not doing so would occasionally cause SIGABRT.
* tests: mock_block: Allow mock blocks to carry MB controllersMartin Braun2020-10-092-6/+9
|
* utils: Set rfnoc_create_verilog.py as executableWade Fife2020-10-091-0/+0
|
* n310/n300: Allow gain coercionMartin Braun2020-10-091-2/+14
| | | | | | | | | | | | The N310 had a different behaviour from other devices, where setting a gain out of range would cause an assertion error. This is problematic for two reasons: 1) Assertion errors should not be triggered by public APIs (if we throw public APIs, we should give a clear error message), and 2) Setting gain and frequency has a coercing behaviour on all other devices. This changeset clips the gain before calling into the gain table lookup.
* b200: handle overruns during continuous streamingmattprost2020-10-091-0/+3
| | | | | | | This allows the b200 devices to recover from overruns that occur during continuous streaming. Signed-off-by: mattprost <matt.prost@ni.com>
* rfnoc: Alphabetize sections in CMakeLists.txtAaron Rossetto2020-10-091-22/+22
|
* rfnoc: Add add'l header files to CMakeLists.txtAaron Rossetto2020-10-091-0/+3
|
* sim: Embed MPM into libpyuhdSamuel O'Brien2020-10-071-0/+57
| | | | | | | When ENABLE_SIM and ENABLE_PYTHON_API are set, this commit embeds MPM (Built with -DMPM_DEVICE=sim) into the pyuhd package. Signed-off-by: Samuel O'Brien <sam.obrien@ni.com>
* debian: Update Python3 dependenciesmichael-west2020-10-062-3/+18
| | | | Signed-off-by: michael-west <michael.west@ettus.com>
* Docs: Update Python3 dependenciesmichael-west2020-10-061-9/+12
| | | | Signed-off-by: michael-west <michael.west@ettus.com>
* ic_reg_map: Allow registers to be arraysMartin Braun2020-10-061-19/+114
| | | | | | | | | | This lets you declare registers like this: REG_NAME[ARRAY_LEN] ADDRESS[BITS] DEFAULT ENUMS The reg object will now carray REG_NAME as an array. So, you can do regs.REG_NAME[0] = VALUE;
* ic_reg_maps: Add common regmap template for PythonToni Jones2020-10-061-4/+88
| | | | | | | Add COMMON_PY_TMPL which is identical to COMMON_TMPL in functionality but generates Python syntax rather than C++ header syntax. Modify the generate function which will now determine if the destination regmap file is a Python file or not and will use the appropriate template.
* docs: Fix sensor names for N3xx boardsMartin Braun2020-10-061-1/+2
|
* lib: disable non pcie types in find with resourceSteven Koo2020-10-059-8/+56
| | | | | | | mpmd find doesn't respect the "resource" arg hint and can be detected when "resource" is set. This results in incorrect device selection when using PCIe. This change adds detection for "resource" as a prefix in the device hints for mpmd and the other devices.
* uhd: clang format device implSteven Koo2020-10-055-18/+19
|
* uhd: replace default initializers with named onesSteven Koo2020-09-252-8/+11
| | | | This resolves an issue with building on older compilers.
* lib: graph_utils: Error on single SEP edgeSteven Koo2020-09-251-10/+14
| | | | | It could be possible that we only find one SEP connected edge, which should be invalid.
* lib: graph_utils: Fix formatting and compiler warningsMartin Braun2020-09-251-13/+15
| | | | | | | | | | | The conditional setting of some variables lead the compiler to assume they might be used uninitialized. Circumventing compiler warning by initializing variables to a default value, even if that's not the right value (they will get set later). Also applied clang-format to the same code section. This fixes da1aeaeccc.
* multi_usrp: Add get_mb_controller() API callCristina Fuentes2020-09-245-27/+60
|
* cal: sync log output between file system and resource dataLars Amsel2020-09-221-1/+3
| | | | | | To make the debug output of the database more readable the has_cal_data lookup for RC data prints the file that is looked up similar to the lookup for file system.
* package: Fix Python componentsmichael-west2020-09-131-3/+4
| | | | | | Update dependencies from python to python3. Signed-off-by: michael-west <michael.west@ettus.com>
* Prepare branch for releasemichael-west2020-09-131-165/+896
| | | | | | | - Update CHANGELOG - Update debian files Signed-off-by: michael-west <michael.west@ettus.com>
* Examples: Fix install paths in OOT RFNoC examplemichael-west2020-09-133-10/+14
| | | | | | | | - Add missing "uhd/" subdirectory. - Update install path for YAML file. - Fix include directories and link libraries for init_gain_block. Signed-off-by: michael-west <michael.west@ettus.com>
* E3xx: Add retry to loopback_self_testmichael-west2020-09-111-27/+46
| | | | | | | | | The loopback test sometimes fails. It was found that it would pass on a retry. The root cause of the failure is unknown at this time, but the retry allows the test to pass. This is intended as a temporary patch until the root cause of the failure can be identified. Signed-off-by: michael-west <michael.west@ettus.com>
* tests: Fix build issue with Boost 1.67Martin Braun2020-09-111-0/+3
| | | | | Boost 1.67 will fail to build some tests that include mock_transport.hpp if an additional include is missing.
* docs: Add new CHDR format to transportsWade Fife2020-09-111-9/+21
|
* docs: Updated register maps for UHD 4.0Wade Fife2020-09-112-35/+28
| | | | | | | | | Updates e3xx and n3xx register map documentation. - Add new RFNoC registers - Remove depreicated RFNoC registers - Add other missing registers - Correct formatting
* docs: New mender commands for Zeus filesystemsmattprost2020-09-092-6/+6
| | | | Signed-off-by: mattprost <matt.prost@ni.com>
* doc: add section about network mode on E3xx devicesRobertWalstab2020-09-091-0/+16
|
* lib: Remove recursive locks in apply_correctionsmichael-west2020-09-041-3/+0
| | | | | | | | | There were locks in the apply_tx/rx_fe_corrections() methods that were acquired before calling methods that re-acquired the locks. The mutexes were not recursive, so it caused applications to lock up. The locks are unnecessary in the top level methods, so they are being removed. Signed-off-by: michael-west <michael.west@ettus.com>
* python: Add peek/poke bindings to noc_block_baseAaron Rossetto2020-09-031-0/+135
|
* rfnoc: replay: Update packet size on mtu updateSteven Koo2020-09-031-5/+4
| | | | | | | | | | | Replay block would previously fail output on low mtu links because it was creating packets based on the default contruction mtu of 8192. This change will update the packet size when mtu gets updated. This also removes a warning for large packet sizes because the replay block uses a maximum packet size property. The block should be free to coerce down based on mtu limitations. Signed-off-by: Steven Koo <steven.koo@ni.com>
* fpga: Update DRAM IO signaturesWade Fife2020-09-037-147/+6
| | | | | | | | This updates the IO signatures so that all devices and RFNoC blocks use the same IO signature for the DRAM. This is needed because the IO signatures must match between the RFNoC blocks and the devices. This means that some devices have extra bits in the IO signature for the address, but the extra bits will simply be ignored.
* twinrx: Bypass adf535x feedback dividermattprost2020-09-031-7/+13
| | | | | | | | Bypass the LO1 feedback divider if it is not required. Some TwinRX units have seen issues when tuning to frequencies between 3.5GHz and 5.1GHz while following that data path. Signed-off-by: mattprost <matt.prost@ni.com>
* rfnoc: Set null source/sink block initial stateWade Fife2020-09-031-0/+3
| | | | | This gives the source generator some valid initial values in the Null Source/Sink RFNoC block.
* docs: Add DPDK link detection sectionAaron Rossetto2020-09-031-1/+17
|
* dpdk: Improve link status detectionAaron Rossetto2020-09-032-16/+38
| | | | | | | | | | | | | | | | This change improves the DPDK link status detection algorithm in the following ways: - The status of the links are checked at an interval of 250 ms. If all links report as being up, the driver proceeds. - If any of the DPDK links has not reported as being up by the end of the link status detection timeout (1000 ms by default), the algorithm throws a runtime error rather than proceeds with one or more down links. - Users may override the default link status detection timeout by passing dpdk_link_timeout=N, where N is the desired timeout in milliseconds, either via device arguments or in the UHD configuration file.
* docs: Add Windows-specific UHD Python module notesAaron Rossetto2020-09-031-0/+30
|
* x300,mpmd: Increase recv frames for dpdk streamingSteven Koo2020-09-032-1/+16
| | | | | | | | With the default 32 frames, high rate DPDK streaming would overrun or drop samples. This defaults num_recv_frames to 512 for DPDK, which has shown to resolve these issues. Signed-off-by: Steven Koo <steven.koo@ni.com>
* docs: Add note about compiling on Ubuntu 20.04Aaron Rossetto2020-09-031-0/+31
|
* rfnoc: replay: Add support for 32-bit memory address widthsettus2020-09-032-3/+3
| | | | | | Increases the supported memory sizes in software to 2^32 and beyond. Signed-off-by: mattprost <matt.prost@ni.com>
* cmake: Use relative path to Python lib location for Windows installerAaron Rossetto2020-08-281-5/+17
|
* rfnoc: enable SEPs with connect_through_blocksSteven Koo2020-08-281-2/+24
| | | | | | | | Calling on connect with SEPs in the path is not supported. This change enables connect_through_blocks to find SEPs in the connection chain and link the src and dest blocks directly. Signed-off-by: Steven Koo <steven.koo@ni.com>
* rfnoc: Exit disconnect() early if nodes not in node mapAaron Rossetto2020-08-281-0/+4
|
* utils: b2xx_fx3_utils: Add unload-bootloadermichael-west2020-08-251-1/+32
| | | | | | | Added unload-bootloader option to cleanly unload a previously loaded bootloader image. It properly moves the VID, PID, and EEPROM data. Signed-off-by: michael-west <michael.west@ettus.com>
* tests: fbs test: Fix issues around missing gitMartin Braun2020-08-252-3/+7
| | | | | | | | | - update_fbs.py would use git directly, instead of the requested git executable - There are other corner cases for the git executable detection, which are now all captured under a more general exception type Credit to Christopher Friedt for pointing out the original issue.
* NI-2974: Add cal supportmichael-west2020-08-191-0/+1
| | | | Signed-off-by: michael-west <michael.west@ettus.com>
* python: power cal: Minor fixes to power cal codeMartin Braun2020-08-172-5/+9
| | | | | | | | - Fix some typos - Fix incorrect arg name for RFSGPowerGenerator.enable() - Fix case where incorrect args would cause an uncaught TypeError. Now, if USRP is chose as signal generator, but fails to find one, a proper error is shown.
* uhd: Add APIs for getting the available power rangeMartin Braun2020-08-177-0/+99
| | | | | | | | | The previously added APIs for getting/setting power reference levels was missing an option to read back the currently available power levels (minimum and maximum power levels). This adds getters for TX and RX power ranges to multi_usrp and radio_control. The power API is thus now more similar to the gain API, which always had getters for gain ranges.