// SPDX-License-Identifier: MIT /* * Copyright © 2024 Intel Corporation */ #include <linux/bitfield.h> #include <drm/drm_print.h> #include "abi/guc_klvs_abi.h" #include "xe_guc_klv_helpers.h" #include "xe_guc_klv_thresholds_set.h" #define make_u64(hi, lo) … /** * xe_guc_klv_key_to_string - Convert KLV key into friendly name. * @key: the `GuC KLV`_ key * * Return: name of the KLV key. */ const char *xe_guc_klv_key_to_string(u16 key) { … } /** * xe_guc_klv_print - Print content of the buffer with `GuC KLV`_. * @klvs: the buffer with KLVs * @num_dwords: number of dwords (u32) available in the buffer * @p: the &drm_printer * * The buffer may contain more than one KLV. */ void xe_guc_klv_print(const u32 *klvs, u32 num_dwords, struct drm_printer *p) { … } /** * xe_guc_klv_count - Count KLVs present in the buffer. * @klvs: the buffer with KLVs * @num_dwords: number of dwords (u32) in the buffer * * Return: number of recognized KLVs or * a negative error code if KLV buffer is truncated. */ int xe_guc_klv_count(const u32 *klvs, u32 num_dwords) { … }