| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * HiSilicon PCIe Trace and Tuning (PTT) support |
| * Copyright (c) 2022 HiSilicon Technologies Co., Ltd. |
| */ |
| |
| #ifndef INCLUDE__HISI_PTT_PKT_DECODER_H__ |
| #define INCLUDE__HISI_PTT_PKT_DECODER_H__ |
| |
| #include <stddef.h> |
| #include <stdint.h> |
| |
| #define HISI_PTT_8DW_CHECK_MASK GENMASK(31, 11) |
| #define HISI_PTT_IS_8DW_PKT GENMASK(31, 11) |
| #define HISI_PTT_MAX_SPACE_LEN 10 |
| #define HISI_PTT_FIELD_LENTH 4 |
| |
| enum hisi_ptt_pkt_type { |
| HISI_PTT_4DW_PKT, |
| HISI_PTT_8DW_PKT, |
| HISI_PTT_PKT_MAX |
| }; |
| |
| static int hisi_ptt_pkt_size[] = { |
| [HISI_PTT_4DW_PKT] = 16, |
| [HISI_PTT_8DW_PKT] = 32, |
| }; |
| |
| int hisi_ptt_pkt_desc(const unsigned char *buf, int pos, enum hisi_ptt_pkt_type type); |
| |
| #endif |