summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorAnurag <anurag@intel.com>2026-08-27 17:18:49 -0700
committerMika Westerberg <mika.westerberg@linux.intel.com>2026-09-24 06:44:04 +0200
commit5ef3b5a4ea78da6ffdf32bcfe7517d4b2860f339 (patch)
tree3242d9aa834bedf780a28d7875e7354226417e38 /tools/perf/scripts/python
parentd224aacc8cf333700257fe0936f701848c2ea1b8 (diff)
downloadlinux-next-5ef3b5a4ea78da6ffdf32bcfe7517d4b2860f339.tar.gz
linux-next-5ef3b5a4ea78da6ffdf32bcfe7517d4b2860f339.zip
thunderbolt: Extract per-lane extended error counters in software margining
USB4 defines two error counter formats for software margining: - Standard counters (USB4 v1): 4-bit per-lane values in DW0. - Extended counters (USB4 v2): 16-bit per-lane values split across DW0 (lower 4 bits) and DW1-DW3 (upper 12 bits). The existing debugfs logic only reads DW0 when checking for errors, which works correctly for standard error counters but only captures the lower 4 bits, missing the 12 MSBs if extended error counter is supported. Read and combine the full counter values from all result dwords before evaluating whether errors occurred on any lane. When running software margining with "all lanes", determine which Rx lanes are actually active and only check those: - ASYM_RX: RX0, RX1, RX2 - ASYM_TX: RX0 - Symmetric: RX0, RX1 Refactor the error counter extraction into a helper function to improve readability. Signed-off-by: Anurag <anurag@intel.com> Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions