This commit will fix power issues with 2 radios configuration (UHD 3.12+).
Removed unused _master boolean.
CPLD path are now correct, each radio has its own CPLD object.
Fix issue with dt-compat and mcu-compat numbers not working for
the case where 0 is a legitimate dt/mcu compat number.
This can happen if a Rev2 board (1 in hardware) shares a DT or
MCU firmware with the Rev1 board (0 in hardware).
Fixes 91a5518443 ("mpm: tools: Introduce dt-compat ...")
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
The default frame size is set to 8176.
If a frame size entered is a multiple of 512, the actual frame size
is set to the next lowest multiple of 24.
Both changes are made to ensure no packet gets stuck in the fx3.
This will populate tx/rx channel map (radio and port index) considering
number of channels, radios and mboards.
On TwinRX and N310, the default subdev spec will now include all
available channels.
Introduce dt-compat and mcu-compat fields into the eeprom
structure.
For the motherboard eeprom this is straightforward, since
there's still padding bytes that could be (ab)used for this.
On the dboard side more creativity is required and the
original revision field of 2 bytes is reduced to only
one byte revision and one byte dt-compat.
Since this will only affect new units being backwards
compatible with older versions of the bootloader is not
an issue.
Reviewed-by: Brent Stapleton <brent.stapleton@ettus.com>
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
Driver support for N310/N300 was previously implied by
ENABLE_MPMD, which had two issues:
1) It was not clear that ENABLE_MPMD was actually enabling
the N3x0
2) It did not allow to enable mpmd support without N3x0 support
This resolves these issues.
This manager first detects all valid Ethernet devices. The checks for
validity happen across multiple calls in a non-atomic fashion, so it's
possible to end up with inconsistent results. To avoid such issues, we
filter results without talking to the network stack as a final pass.
Because the detection of valid Ethernet devices happens across multiple
calls in a non-atomic fashion, we cannot assume that a device passed to
net.get_iface_info() actually has a valid IP address, so we don't make
that assumption.
Before, a block description file could specify a block controlley key
which was not mapped to a registered block controller, and it would fall
back to the default. While that behaviour is desired, it was lacking
a warning when it made that decision.
- populate_images.py: Made Py3k safe
- uhdimgs.py: Make Py3k-safe
- create_imgs_package.py: Rewrote to build release images packages
- make_zip.sh: Skip CMake, just zip up the files
- Updated README to reflect all the changes