aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/device3
Commit message (Collapse)AuthorAgeFilesLines
* uhd: rfnoc: add async message handlerTrung Tran2018-09-141-2/+29
|
* device3_io_impl: remove tx_hint[send_buff_size]Trung Tran2018-09-131-6/+0
| | | | | we're no longer need this. Because there are default send buff size in each transport type impl.
* X300: Change Ethernet bufferingMichael West2018-07-252-89/+92
| | | | | | | 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.
* Device3: Constrain send_buff_sizeMichael West2018-07-251-6/+12
| | | | | send_buff_size is now constrained to input fifo size, and we increase timeout on getting flow control to reduce CPU usage.
* Device3: Change packet-based flow control to byte-based flow controlMartin Braun2018-07-252-282/+485
|
* rfnoc: Enabled SW flush mechanism impl'd in noc_shellAshish Chaudhari2018-07-241-2/+4
| | | | | | | | | | | - UHD will now "disconnect" the noc_block data-path from the crossbar when the block's dtor is invoked. This allows long running or slow blocks to empty out rapidly during teardown. - UHD will also attempt to flush at init time in case a block is destroyed abnormally. The goal of the flush mechanism is to not lock up the FPGA - noc_shell compat number is now 3
* UHD: Update copyright datesMartin Braun2018-06-221-1/+1
|
* rfnoc: Update logging in some blocksMartin Braun2018-03-301-13/+35
| | | | | | | | | | Updated the following blocks and components: Radio, DmaFIFO, block_ctrl_base and node_ctrl_base, blockdef_xml_impl, device3_impl. No functional changes. - Demoted some log messages - Consistent log style (use unique_id()) - Some adaptation of coding style where close to log statements
* rfnoc radio: get_rx_stream resets sequence numBrent Stapleton2018-03-291-0/+5
| | | | | | Reset the RX sequence number whenever an RX streamer is created. Reviewed-by: Martin Braun <martin.braun@ettus.com>
* rfnoc: ctrl_iface cleanupMartin Braun2018-03-161-9/+3
| | | | | | | | | | - ctrl_iface is now longer a wb_iface. All it can do now is send command packets, and receive responses to those. - ctrl_iface does not store command time or tick rate - wb_iface_adapter is no longer a set of functors, but a wrapper around ctrl_iface. Command times are stored once, in the block. - DMA FIFO and radio block controllers have an easier time getting access to a timed_wb_iface
* uhd: Move internal headers to uhdlib/Martin Braun2018-03-143-7/+6
| | | | | | | | | | | | | | | | 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>
* uhd: Fix some log statementsAndrej Rode2018-03-071-1/+0
| | | | Some log statements were incorrectly using multi-line log statements.
* uhd: Update license headersMartin Braun2018-02-194-3/+7
| | | | | | | All copyright is now attributed to "Ettus Research, a National Instruments company". SPDX headers were also updated to latest version 3.0.
* X300: Reduce CPU usage during TX by restoring timeout when getting flow ↵michael-west2018-01-161-3/+1
| | | | control packets
* Move all license headers to SPDX format.Martin Braun2017-12-224-48/+4
|
* utils: add set_thread_name API call, move thread_priority to threadAndrej Rode2017-06-291-1/+2
|
* Merge branch 'maint'Martin Braun2017-06-272-104/+111
|\
| * X300: Implement single DMA channel for all async messagesMichael West2017-06-262-3/+3
| |
| * X300: Dual channel TX performance improvementsMichael West2017-06-262-109/+112
| |
* | Merge branch 'maint'Martin Braun2017-05-151-2/+28
|\|
| * device3: Improved busy loop for tx flow control polling on slower machinesPatrick Sisterhen2017-05-081-2/+28
| | | | | | | | Effectively adds a yield statement inside the busy loop.
* | transport: Fix some nullptr vs NULL vs 0Martin Braun2017-04-061-1/+2
| | | | | | | | This affects some versions of Clang when using C++11 features.
* | Merge branch 'maint'Martin Braun2017-04-061-24/+44
|\|
| * Device3: Improved send flow controlmichael-west2017-04-051-24/+44
| | | | | | | | | | | | - Implemented zero_copy_flow_ctrl for send transport - Removed bounded buffer for sequence acks - Created spin wait on flow control for fastest response to flow control updates
* | device3: Fixed potential concurreny issuesAshish Chaudhari2017-04-052-5/+4
| | | | | | | | | | | | | | - 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
* | utils: introduce new logging API and remove msg APIAndrej Rode2017-02-202-29/+30
| |
* | uhd: replace BOOST_FOREACH with C++11 range-based for loopAndrej Rode2017-02-102-8/+8
| | | | | | | | | | Note: This is the first commit that uses for-range, and range-based for-loops are now usable for UHD development.
* | Merge branch 'maint'Martin Braun2017-01-301-0/+1
|\|
| * device3: Reset sequence number in get_tx_streamer()Jonathon Pendlum2017-01-301-0/+1
| |
* | Merge branch 'maint'Martin Braun2017-01-171-1/+1
|\|
| * docs: Purged references to CVITA, replaced with CHDRMartin Braun2017-01-111-1/+1
| |
* | Merge branch 'maint'Martin Braun2016-12-131-1/+1
|\|
| * Fix typo causing channel list generation to fail.michael-west2016-12-131-1/+1
| |
| * device3: Backed-out the alignment adaptionMartin Braun2016-11-291-6/+0
| |
* | device3: Backed-out the alignment adaptionMartin Braun2016-12-091-6/+0
| |
* | rfnoc: Removed transport endianness as make argMartin Braun2016-11-091-1/+0
| | | | | | | | | | | | | | | | | | This is only confusing, since the blocks do not have to care about endianness. The control interface needs to know (and takes care of it internally), and the streaming transport does the same (and does not directly connect to blocks). Reviewed-By: Michael West <michael.west@ettus.com>
* | rfnoc: Moved transport endianness as property into both_xports_tMartin Braun2016-11-093-12/+9
|/ | | | Reviewed-By: Michael West <michael.west@ettus.com>
* Remove all boost:: namespace prefix for uint32_t, int32_t etc. (fixed-width ↵Martin Braun2016-11-082-13/+13
| | | | | | | | 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: Fix for channel 1 failure to ACK a TX burst.michael-west2016-11-071-24/+60
| | | | | | - Added mapping from radio block and port to channel in legacy compat layer. - Improved parsing of stream args and added parsing of radio ID and port parameters for each channel. - Added proper programming of the response SID based on the new radio ID and port parameters.
* device3: Removed some superfluous includesMartin Braun2016-11-042-12/+1
|
* transport: Removed conditional compiles for terminator APIsMartin Braun2016-09-051-2/+0
|
* Merging RFNoC support for X310Martin Braun2016-08-094-0/+1274