| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
- Handle exception created during RPC client creation
- Corrected a catch block for UHD exceptions
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
db0 is used as the master for driving the radio path and must be the dboard
used to set the master clock rate.
|
|
|
|
|
|
|
|
|
|
| |
The first log message of UHD is always something like this:
[INFO] [UHD] linux; GNU C++ version [...]
However, it was being printed regardless of the requested log level.
This will disable all initial log messages if the requested log level is
greater than INFO.
|
| |
|
|
|
|
|
|
|
| |
This is a portable version of POSIX's isatty(). Windows has its own
version, called _isatty(). UHD thus gains its own, portable version.
The underscores aren't beautiful, but they're necessary so we can
distinguish the POSIX version from the UHD version.
|
| |
|
|
|
|
|
| |
Fixup for the Python API's default mboard value in
multi_usrp::set_command_time.
|
|
|
|
|
|
|
| |
This reverts commit 94592641f0647563bc4d2163805d5284a6796273.
The commit itself was OK, but it changed the requirements such that UHD
could only be compiled with C++11.
|
|
|
|
|
|
|
|
|
| |
The latest change to fix MTU and default frame sizes inadvertantly removed
the default send and recv buffer sizes in the MPMD UDP transport, which
caused receive timeouts and underruns at higher sample rates. This change
restores those values.
Signed-off-by: Michael West <michael.west@ettus.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This requires noc_shell compat number 6.0. It will allow sending as many
command packets, but no more, than there is space.
Updated FPGA images for devices:
- X310/X300
- N300/N310/N320
- E310/E320
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
set_freq() calls now have a 15 seconds timeout.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In x300_radio_ctrl_impl.cpp, the GPIO attributes GPIO_SRC,
GPIO_CTRL, and GPIO_DDR are initialized as with vector<string>
values in the property tree. However, they are accessed in
set_gpio_attr() and get_gpio_attr() as vector<uint32_t>, which
will crash. This commit changes these access methods to be
consistent with the attribute value types.
This is not an issue for those who use the multi-usrp
interface, since that interface's set_gpio_attr() and
get_gpio_attr() methods are implemented with the correct typing
for GPIO_SRC, GPIO_CTRL, and GPIO_DDR.
|
|
|
|
| |
Boost moved this around in version 1.58.
|
| |
|
|
|
|
|
|
|
| |
This is a superclass to eth_manager and pcie_manager, since they usually
do the same thing. This saves storing and passing multiple pointers.
Also, x300_impl now stores a shared_ptr of the conn_manager, because
we'll need to pass it around in the future.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This provides a platform-independent attribute to allow fallthroughs in
switch statements. Example:
switch (foo) {
case BAR:
do_something();
UHD_FALLTHROUGH
case BAZ:
do_another_thing();
}
The usage of UHD_FALLTHROUGH will avoid a compiler warning if indeed the
fallthrough was intentional. The associated warning
(-Wimplicit-fallthrough) is only available on gcc and Clang.
|
|
|
|
|
|
|
|
|
|
|
| |
Prior commit disabled flow control for all lossless links,
including links between blocks on the same crossbar. That
caused packets to jam up the crossbar leading to control
packets failing to ACK under certain conditions. This
reverts it so flow control is enabled and the crossbar is
kept clear.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
| |
To check if a device is fully reachable through the
chdr address i.e. SFP port, an RPC request is sent
to "second_addr" and "addr" of that device. This commit
fixes the case where if "second_addr" is not connected to
the host, the function returns earlier and does not
check for "addr".
|
|
|
|
|
|
|
| |
- Fixes an issue where a multi-device device3 object would cause connections to
be generated across devices in legacy_compat
- The connect_blocks function previously assumed that find_blocks would always
return blocks in the same device number order
|
|
|
|
|
|
|
|
|
| |
This pulls out a lot of code from x300_impl and puts it into its own
compilation units:
- EEPROM code goes to x300_mb_eeprom.*
- Claim code goes to x300_claim.*
- PCIe code goes to uhd::usrp::x300::pcie_manager
- Ethernet code goes to uhd::usrp::x300::eth_manager
|
|
|
|
|
| |
This puts all functions that identify motherboards, distinguishes
X310/X300/NI2974, checks MB revs etc. into its own compilation unit.
|
|
|
|
|
| |
GPSd was used by the E310 prior to its MPM-ification, GPSd is therefore
no longer required by UHD.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the keywords "rx_gain_profile", "tx_gain_profile" and the new
values "default_bypass_always_off" and "default_bypass_always_on" the
customer can control whether the filter bypass shall be applied as
defined in the gain-table or whether to switch the bypass to ON or OFF
for all gains.
With the keywords "rx_band_map" and "tx_band_map" the user can define
custom frequency borders for the band mapping.
These new keywords can be used in the uhd.con, e.g.:
[type=n3xx]
rx_gain_profile=default_bypass_always_off
tx_gain_profile=default_bypass_always_on
rx_band_map=431e6;601e6;1051e6;1601e6;2101e6;2701e6
tx_band_map=723.18e6;1623.18e6;3323.18e6
|
|
|
|
| |
See: https://gitlab.com/gpsd/gpsd/commit/c711d531a6faab93df68ec625a076631569a729d
|
|
|
|
|
|
|
| |
When trying to create a converter with an illegal string, it will now
look like this:
[convert] Cannot find an item size for: `???'
|
|
|
|
|
| |
- Remove some spurious \n
- Remove some usage of boost::format
|
|
|
|
|
|
|
|
|
|
| |
The latest changes to the get_*x_stream() functions to calculate the MTU for
the channel caused default frame size values to be ignored. This change fixes
that by changing the key from "send/recv_frame_size" to "mtu" and then changing
the implementations of make_transport() constrain the frame size values based
on the "mtu" value as well as any device and/or transport-specific limits.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
| |
Signed-off-by: Michael West <michael.west@ettus.com>
|
| |
|
|
|
|
|
|
|
| |
The SBX tracks the LO lock state via on-board LEDs. However, querying
the LO lock status spawns an update to the entire ATR registers. To
reduce the number of register reads/writes, the LO lock status LED is
now only updated if it changed.
|
| |
|
|
|
|
|
|
| |
Blocks that change scaling, tick rate, or sampling rate can now notify
the graph to update streamers. Before, this was handled only by
mult_usrp, and only for DDC and DUC blocks.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Applying clang-format to files used in upcoming changes.
clang-format -i --style=file host/include/uhd/rfnoc/node_ctrl_base.hpp
clang-format -i --style=file host/lib/rfnoc/ddc_block_ctrl_impl.cpp \
host/lib/rfnoc/duc_block_ctrl_impl.cpp \
host/lib/rfnoc/legacy_compat.cpp \
host/lib/usrp/device3/device3_impl.cpp \
host/lib/usrp/device3/device3_impl.hpp \
host/lib/usrp/device3/device3_io_impl.cpp \
host/lib/usrp/x300/x300_impl.cpp
|
| |
|
|
|
|
|
|
| |
In the PACKET_INLINE_MESSAGE case, we need to extract the error code
from the packet buffer. But the buffer was being released before that
happens, resulting in garbage values for metadata.error_code.
|
| |
|
|
|
|
|
| |
- Split tuning log into 3 lines
- Remove duplicated MAX287X
|
|
|
|
|
|
|
| |
- This mode defaults to "disabled" (no change from current behavior)
- Enabling this mode fixes some instances where the MAX287x would fail to lock
when in integer-n mode
- Enabling this mode increases the maximum lock time to up to 100ms
|