aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/x300/x300_impl.hpp
Commit message (Collapse)AuthorAgeFilesLines
* device3: Constraint send/recv_frame_size based on down/upstream MTUSugandha Gupta2019-05-211-0/+3
| | | | | | We need to properly contraint the send/recv_frame_size based on the minimum MTU of all the down/upstream blocks. This fixes the issue with E310 tx/rx streaming as it has smaller MTU sizes than the other usrps.
* x300: Add support for DPDK transportsAlex Williams2019-05-211-1/+7
| | | | | Use dpdk_simple together with a control transport factory. Where udp_zero_copy is used, use dpdk_zero_copy if use_dpdk=1.
* uhd: mpm: apply clang-format to all filesBrent Stapleton2019-01-161-68/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Applying formatting changes to all .cpp and .hpp files in the following directories: ``` find host/examples/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/tests/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/lib/usrp/dboard/neon/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/lib/usrp/dboard/magnesium/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/lib/usrp/device3/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/lib/usrp/mpmd/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/lib/usrp/x300/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find host/utils/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file find mpm/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file ``` Also formatted host/include/, except Cpp03 was used as a the language standard instead of Cpp11. ``` sed -i 's/ Cpp11/ Cpp03/g' .clang-format find host/include/ -iname *.hpp -o -iname *.cpp | \ xargs clang-format -i -style=file ``` Formatting style was designated by the .clang-format file.
* formatting: remove vim hints in headersBrent Stapleton2019-01-161-1/+0
| | | | | Remove trailing vim hints in header files. This functionality will be replaced by clang-format.
* x300: Add support for USRP-2974Thomas Vogel2018-12-141-1/+1
| | | | | This will enable a USRP 2974 to be registered as an X300 device. Its product ID is 'NI-2974'.
* x300: Improve firmware compat error messageMartin Braun2018-08-221-1/+1
| | | | | Now matches the FPGA error message (go download, then run uhd_image_loader).
* x300: Use constrained_argsMartin Braun2018-08-101-0/+3
| | | | | | | x300_impl will now use a constrained_device_args_t-derived object to parse device args. No API or functional changes.
* x300: Move defaults to their own headerMartin Braun2018-08-101-61/+1
| | | | | | | Also puts all defaults into the uhd::usrp::x300 namespace. This commit does some renaming and refactoring, but no functional changes.
* X300: Change Ethernet bufferingMichael West2018-07-251-15/+16
| | | | | | | Ethernet buffering is now done so that most of the buffering is done in the socket buffers and multiple frames are only used to support the receive side offload of the socket I/O. Eliminates dropped packets at high full duplex rates.
* X300: Reduce Ethernet frame size to 4000michael-west2018-07-251-3/+2
| | | | | This is to avoid underruns caused by flow control packets being blocked by data packets at high rates.
* X300: Change default dboard_clock_rate depending on master_clock_rateMichael West2018-07-171-1/+0
|
* uhd: Move internal headers to uhdlib/Martin Braun2018-03-141-8/+10
| | | | | | | | | | | | | | | | To avoid the proliferation of additional include directories and multiple ways of including project-local headers, we now default to moving all headers that are used across UHD into the uhdlib/ subdirectory. Some #include statements were also reordered as they were modified for closer compliance with the coding guidelines. Internal cpp source files should now include files like this: #include <uhdlib/rfnoc/ctrl_iface.hpp> Reviewed-by: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* rfnoc,x300: Multiple clocking changesAshish Chaudhari2018-02-211-3/+3
| | | | | | - Moved bus_clk <=> ce_clk crossing to axi_wrapper in FPGA which resulted in a noc_shell compat bump - Change x300 bus_clk frequency to 187.5 MHz
* uhd: Update license headersMartin Braun2018-02-191-1/+2
| | | | | | | All copyright is now attributed to "Ettus Research, a National Instruments company". SPDX headers were also updated to latest version 3.0.
* Move all license headers to SPDX format.Martin Braun2017-12-221-12/+1
|
* uhd: Changed mboard_eeprom_t interface, refactored MB EEPROM codeMartin Braun2017-09-291-1/+8
| | | | | | | | | | | | - uhd::usrp::mboard_eeprom_t is now simply a map. Its commit() method has no utility being a public API call, because the user never gets access to the appropriate I2C object (Minor API breakage) - The central mboard_eeprom.cpp file was broken up and put into many smaller compilation units in every device's implementation folder. - Renamed some of the constants (e.g. B000_* -> USRP1_*, N100_* -> N200_*) - Removed the N000_* EEPROM code, because, well, you know, there's no such device
* Merge branch 'maint'Martin Braun2017-06-271-1/+6
|\
| * X300: Implement single DMA channel for all async messagesMichael West2017-06-261-1/+4
| |
| * X300: Dual channel TX performance improvementsMichael West2017-06-261-0/+2
| |
* | Merge branch 'maint'Martin Braun2017-04-061-9/+12
|\|
| * X300: Change default frame sizes for PCIe to be page aligned for betterMichael West2017-04-051-9/+12
| | | | | | | | performance
* | device3: Fixed potential concurreny issuesAshish Chaudhari2017-04-051-1/+2
| | | | | | | | | | | | | | - Protected block_ctrl vector with a mutex - Note: const block accessors are not thread safe - Removed sid_framer from base device3 class - Made x300,e300 sid_framers atomic
* | Merge branch 'maint'Martin Braun2017-03-151-1/+1
|\|
| * x300: Removed MTU throttling for Ethernet connectionsMartin Braun2017-03-081-1/+1
| |
* | X3xx: Limit the number of USRPs that can initialize in parallelPaul David2017-02-131-0/+3
| |
* | Merge branch 'maint'Martin Braun2017-01-301-4/+1
|\|
| * x300: Increase PCIe TX frame size to 8184Jonathon Pendlum2017-01-261-4/+1
| |
* | Merge branch 'maint'Martin Braun2017-01-171-3/+6
|\|
| * X300: Prevent MB EEPROM Corruptionmichael-west2017-01-101-3/+6
| | | | | | | | | | | | | | - Load EEPROM data into firmware memory to access from there instead of driving the I2C bus directly - Fixed firmware performance issues by removing the popcntll() function and reducing frequency of background tasks to once every 10ms - Added x300_mb_eeprom_iface to handle cases of devices with older and newer firmware - Added checks for claim to device before driving the I2C bus
* | Merge branch 'maint'Martin Braun2016-12-131-9/+15
|\|
| * x300: Made MTU throttling more explicit in x300 header filesMartin Braun2016-12-131-0/+2
| |
| * x300: Make PCIe muxing and connection multi-usrp capableMartin Braun2016-12-081-9/+13
| |
* | rfnoc: Moved transport endianness as property into both_xports_tMartin Braun2016-11-091-3/+0
|/ | | | Reviewed-By: Michael West <michael.west@ettus.com>
* Remove all boost:: namespace prefix for uint32_t, int32_t etc. (fixed-width ↵Martin Braun2016-11-081-1/+1
| | | | | | | | types) - Also removes all references to boost/cstdint.hpp and replaces it with stdint.h (The 'correct' replacement would be <cstdint>, but not all of our compilers support that).
* x300: Throttle MTU to 3000 for PCIe to avoid underrunsMartin Braun2016-10-251-1/+4
| | | | This is a temporary workaround to make PCIe available on lower rates.
* bugfix: db eeprom id not being written for X3x0Ashish Chaudhari2016-09-271-1/+0
| | | | | | | | - The value of db_eeprom_t being written was stale due to a caching bug - Updated subscriber for db_eeprom_t to write the EEPROM state *and* cache it locally Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
* Correct maximum link rates for 1GE and 10GEMarcus Müller2016-09-271-5/+11
|
* Merging RFNoC support for X310Martin Braun2016-08-091-201/+60
|
* x300: Fixed false link capacity warning and cleaned up some codePaul David2016-05-131-2/+0
| | | | | - Fixed an issue where 10GE on the HGS image presented a false warning for the link capacity - Removed some unnecessary variables after cleanup
* transport optimize: Integrated the transport offloading into the X3XX codebasePaul David2016-04-181-7/+37
|
* dboard_iface: Added method to configure front connection and settingsAshish Chaudhari2016-03-211-0/+1
|
* Merge branch 'maint'Ashish Chaudhari2016-02-181-0/+1
|\ | | | | | | | | | | Conflicts: host/lib/usrp/cores/gpio_core_200.cpp host/lib/usrp/dboard/db_ubx.cpp
| * UBX: Phase synchronizationmichael-west2016-02-181-0/+1
| | | | | | | | | | | | | | - Disabled MAX2871 VCO auto selection for phase sync - Added checks for new phase sync constraints recently published by Maxim - Added dboard_clock_rate option for X300 - Adjusted timing of SYNC signal relative to dboard referenc clock
* | dboard: Added restricted dboard registration capabilityAshish Chaudhari2016-02-161-1/+0
| | | | | | | | | | | | - Moved dboard iface initialization to dboard_manager - Added a restricted register function. Restricted dboards don't expose their control iface in the property tree
* | Merge branch 'maint'Ashish Chaudhari2015-12-151-0/+1
|\| | | | | | | | | | | | | Conflicts: host/lib/usrp/b200/b200_impl.hpp host/lib/usrp/e300/e300_fpga_defs.hpp host/lib/usrp/x300/x300_fw_common.h
| * E300/X300: Add VITA time synchronization on internal signalmichael-west2015-12-101-0/+1
| |
| * cores: Corrected scaling_adjustment calculationIan Buckley2015-09-031-0/+2
| | | | | | | | | | | | Compensate for headroom required to rotate a signal in the CORDIC. Fixes some CORDIC-related clipping issues, that reduced ENOB to 15 or 14.5 bits.
* | Merge branch 'ashish/gpio_atr_redux' into master-stagingAshish Chaudhari2015-10-151-7/+5
|\ \ | | | | | | | | | | | | | | | Conflicts: host/lib/usrp/cores/CMakeLists.txt host/lib/usrp/x300/x300_impl.hpp
| * | usrp3: Added new GPIO ATR 3000 coreAshish Chaudhari2015-09-291-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | - Refactored GPIO ATR definitions - Added new 3000 core with a more efficient API - Added a separate db_gpio_atr core to control the ATR bus - Ported b2xx, e3xx and x3xx to the new core - Minor cleanup
* | | x300: Made DRAM FIFO size software configurableAshish Chaudhari2015-09-161-0/+1
| | |