Commit Graph

27 Commits

Author SHA1 Message Date
Wade Fife
3a10834521 tools: Update RFNoC dissectors for 8-bit SeqNum 2026-07-28 14:24:19 +02:00
Wade Fife
930651b2f7 tools: Support block control ops in C++ RFNoC dissector 2026-06-29 08:08:59 +02:00
Wade Fife
2595f70815 tools: Update C++ version for RFNoC dissector
The RFNoC code in UHD that is used by the dissector was updated to use
more recent C++ features, such as std::optional. This change updates
the C++ requirement for the dissector to match UHD.
2026-06-29 08:08:59 +02:00
Wade Fife
92c7a2c096 tools: Check endianness with CMake
This is to match commit d05d956714, which replaced Boost macros with a
similar check using CMake.
2026-06-29 08:08:59 +02:00
Wade Fife
168fc70df6 tools: Support block control ops in LUA RFNoC dissector 2026-06-29 08:08:59 +02:00
Martin Braun
5f73667284 host/firmware/tools: Update minimum CMake versions
Various sub-projects around the UHD repository specify their own minimum
CMake versions (independent of UHD). We modify the minimum CMake
versions in the following way:

- All CMake files under firmware/ are bumped from 2.6 to 3.5. This is to
  allow newer CMake versions to work with these files (CMake 4 and
  beyond do no longer work if the minimum version is below 3.5). However,
  note that these CMake files are so simple they will keep working with
  older CMake versions, but that will require manually demoting the
  minimum version. Because more people are using CMake versions newer
  than 3.5 (especially with recent checkouts of UHD), this seems the
  more compatible solution.
- The CMake files for extension_example and init_usrp are bumped to
  3.12. This matches the version that UHD uses, which increases
  compatibility.
2025-09-24 13:48:07 +02:00
Lars Amsel
bfaa556600 Move ignore of build folders into top level
Move ignored build folder to into top level and ignore all folders
that starts with build.
2025-07-18 11:19:52 +02:00
Max Köhler
4c6d653ccc tools: fix lua parser stream status message status field 2024-12-02 11:56:35 +01:00
Lars Amsel
b584a7a923 rfnoc: Add LUA based dissector
Add a dissector based on LUA. The C/C++ based dissector is hard
to use on Windows system, because one needs to compile Wireshark as well.

The LUA based dissector can be used without any compilation and it
runs out of the box on all systems that run wireshark. It also provides
improved preview display in the info column which makes it less often
necessary to lookup data in the detail pane.

Along with the LUA dissector comes a color rules file that colors the
RFNoC packets based on their type which makes navigation in the log
even more easy.

There LUA dissector is able to configure the CHDR width in it's
preferences.

Co-authored-by: Martin Braun <martin.braun@ettus.com>
Co-authored-by: Wade Fife <wade.fife@ettus.com>
Co-authored-by: Aaron Rossetto <aaron.rossetto@ni.com>
2022-06-20 05:23:21 -07:00
Wade Fife
d3038fc6c8 tools: Fix control packet byte enable in CHDR dissector 2022-03-25 08:18:52 -05:00
Wade Fife
09b04222e3 tools: Add missing fields to CHDR dissector
- Add data packet payload field
- Add metadata support
- Add missing management fields (OpsPending, ExtendedInfo).
- Add missing control fields (byte_enable, data, has_time)
- Update offsets for management OpPayload fields.
- Make the field names more consistent, readable, and consistent
  with the RFNoC specification.
- Display value of fields in addition to name.
- Fix timestamp, eob, and eov offsets
2021-12-08 12:09:39 -08:00
Martin Braun
d2762bd2b0 tools: Fix rfnoc dissector build
The recent removal of cruft in 78336d4 caused an implicit include to be
missing from this dissector, causing it to no longer compile. The
include is added to the dissector explicitly now.
2021-11-11 07:13:56 -08:00
Martin Braun
d56b5b154d dissectors: Fix whitespace formatting in CMake files
This commit makes some of the CMake formatting consistent. CMake
patches were not, in fact, required to fix bugs, but we keep the
formatting improvements nevertheless.
2021-09-28 12:14:00 -07:00
Martin Braun
44eb7a473b dissectors: Fix inclusion of glib.h and Python version
Previously, we were doing this:

```cpp
extern "C" {
}
```

This is not how glib.h is supposed to be included, according to their
documentation. It turns out that it happened to work for a long time,
and lots of projects include glib.h that way, and the glib devs are
trying to accommodate for those cases. How nice of them!

However, on Fedora 34, we have a version of glib which does not have
a workaround patch, so we include glib.h the it should be.

The second issue was that a build script required the existence of
a `python` executable, which is not always available. A `python3`
executable can be assumed, since that's a dependency for UHD, too.
2021-09-28 12:14:00 -07:00
Cristina Fuentes
b82b99cc3e tools: Rfnoc dissectors are now built and named based on CHDR width 2020-12-01 10:07:47 -08:00
Cristina Fuentes
f2f27fdad9 tools: Update rfnoc dissector to support multiple CHDR widths. 2020-12-01 10:07:47 -08:00
Samuel O'Brien
40fb69243a dissector: Swap chdr_packet for chdr_packet_writer
A recent commit changed the name of chdr_packet in uhd. This commit
accounts for this change and makes the dissector compile again.

Signed-off-by: Samuel O'Brien <sam.obrien@ni.com>
2020-07-16 12:20:40 -05:00
Martin Braun
c9126ae31d tools: rfnoc dissector: Add EOB and EOV into tree
This will display EOB and EOV flags in the Wireshark dissector window.
2019-11-26 12:21:32 -08:00
Alex Williams
8541a9b397 tools: rfnoc dissector requires c++14
Mark the requirement in the CMakeLists.txt.
2019-11-26 12:21:31 -08:00
Alex Williams
f3a86a3294 rfnoc: Unify endianness of transports
Ethernet now uses the same serialization of the RFNoC stream as all
the other transports.
2019-11-26 12:21:31 -08:00
Alex Williams
9f29b9a556 tools: Update dissectors for Wireshark major version 3, new CHDR
Dissectors may now be incompatible with earlier versions.
Fixes ZPU dissector.
2019-11-26 11:49:35 -08:00
Martin Braun
a69ab0c23a cmake: Update coding style to use lowercase commands
Also updates our coding style file.

Ancient CMake versions required upper-case commands.  Later command
names became case-insensitive.  Now the preferred style is lower-case.

Run the following shell code (with GNU compliant sed):

cmake --help-command-list | grep -v "cmake version" | while read c; do
  echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done > convert.sed \
&& git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' \
'*CMakeLists.txt' | xargs -0 gsed -i -f convert.sed && rm convert.sed

(Make sure the backslashes don't get mangled!)
2018-11-14 14:10:09 -08:00
Martin Braun
988515ab19 Device3: Change packet-based flow control to byte-based flow control 2018-07-25 15:34:03 -07:00
Scott Torborg
1da86f9cf5 tools: Make dissector code generation script Python 3 compatible 2017-05-30 09:44:00 -07:00
Martin Braun
04b205d15b tools: Various fixes to the CHDR dissector
- Works with newer Wiresharks now
- Fix SID flip in hex pretty print
- Fix misclassification of cmd packets
2017-03-24 13:43:44 -07:00
Martin Braun
3c119b1a7f tools: Added README for the dissectors 2016-08-30 10:23:06 -07:00
Derek Kozel
fe7fe8b6ce Combined dissectors and added Wireshark 2 support 2016-08-24 12:46:36 -07:00