[PATCH v4 0/8] Enhance TLP packet decoder with field-level parsing and versioning

Arnaldo Carvalho de Melo acme at kernel.org
Tue Sep 8 14:02:37 PDT 2026


On Tue, Sep 08, 2026 at 10:05:01PM +0800, Sizhe Liu wrote:
> 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.

Series is sashiko clean by now, has a Reviewed-by, but it touches both
kernel and tools, I wouldn't have a problem if it was processed by
whoever maintains the kernel part.

- Arnaldo
 
> ---
> 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