[PATCH v4 0/8] Enhance TLP packet decoder with field-level parsing and versioning
Sizhe Liu
liusizhe5 at huawei.com
Tue Sep 8 07:05:01 PDT 2026
The original hisi-ptt-decoder only prints raw hex values with generic field
names for DW0/DW1/DW2/DW3, without classifying TLP types or decoding
DW0/DW1/DW2/DW3 fields according to the hardware-defined packet format.
This series enhances the HiSilicon PTT (PCIe Trace and Tuning) packet
decoder in perf tool to provide detailed field-level parsing of TLP headers
based on message type, and adds a versioning mechanism for backward
compatibility both in hisi_ptt driver and perf tool.
---
Changes in v4:
- Add missing space in hisi-ptt.rst (Sashiko).
- Widen the pattern bit field in struct hisi_ptt_trace_ctrl (Sashiko).
- Add protocol defined TLP header length parsing in patch 05/08.
- Add MRd and DMRr message types parsing in patch 05/08.
- Add comment for enum hisi_ptt_pkt_msg_type in patch 05/08.
- Add DW0 and DW1 fields analysing in patch 06/08.
- Refine bit-fields parsing of DW0/DW1/DW2/DW3 based on different requests
in patch 06/08.
- Refine the description of pattern=1 in the document in patch 07/08.
- Extract the bit-field printing of v1 version into functions in
patch 08/08.
- Link to v3: https://lore.kernel.org/linux-pci/20260903075241.1445338-1-liusizhe5@huawei.com/
Changes in v3:
- Add explicit inclusion of <stdbool.h> (Sashiko).
- Make patch 07/08 apply cleanly to mainline (Yushan).
- Pick up the reviewed-by tag (Yushan).
- Link to v2: https://lore.kernel.org/linux-pci/20260827140442.2031128-1-liusizhe5@huawei.com/
Changes in v2:
- Split patch 01/10 and patch 02/10 from series v1 into independent patch
series for backporting (Bjorn).
- Use bitwise operations instead of C bitfields for cross-platform cases
(Sashiko).
- Add `pattern` parameter in hisi_ptt driver for layout compatibility.
- Link to v1: https://lore.kernel.org/linux-pci/20260604075005.2219785-1-liusizhe5@huawei.com/
---
Sizhe Liu (8):
perf hisi-ptt: Abstract trace data buf and offset
perf hisi-ptt: Complete the field names for 4DW and 8DW packets
perf hisi-ptt: Extract the raw data printing part
perf hisi-ptt: Merge 4DW and 8DW HEAD0 printing
perf hisi-ptt: Add parsing of supported message types and proto length
perf hisi-ptt: Add field-level parsing for header DW0/DW1/DW2/DW3
hwtracing: hisi_ptt: Add pattern PMU config for trace format selection
perf hisi-ptt: Pass pattern version to decoder for compatibility
Documentation/trace/hisi-ptt.rst | 26 +-
drivers/hwtracing/ptt/hisi_ptt.c | 25 +-
drivers/hwtracing/ptt/hisi_ptt.h | 4 +
tools/perf/arch/arm64/util/hisi-ptt.c | 18 +
.../hisi-ptt-decoder/hisi-ptt-pkt-decoder.c | 593 ++++++++++++++++--
.../hisi-ptt-decoder/hisi-ptt-pkt-decoder.h | 241 ++++++-
tools/perf/util/hisi-ptt.c | 51 +-
tools/perf/util/hisi-ptt.h | 9 +-
8 files changed, 872 insertions(+), 95 deletions(-)
--
2.33.0
More information about the linux-arm-kernel
mailing list