mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-22 07:27:12 +08:00
VF can check if PF has enabled scheduler groups with a dedicated KLV query. If scheduler groups are enabled, MLRC queue registrations are forbidden. Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com> Link: https://patch.msgid.link/20251218223846.1146344-20-daniele.ceraolospurio@intel.com
45 lines
1.4 KiB
C
45 lines
1.4 KiB
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2023-2024 Intel Corporation
|
|
*/
|
|
|
|
#ifndef _XE_GT_SRIOV_VF_H_
|
|
#define _XE_GT_SRIOV_VF_H_
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_printer;
|
|
struct xe_gt;
|
|
struct xe_reg;
|
|
struct xe_uc_fw_version;
|
|
|
|
int xe_gt_sriov_vf_reset(struct xe_gt *gt);
|
|
int xe_gt_sriov_vf_bootstrap(struct xe_gt *gt);
|
|
void xe_gt_sriov_vf_guc_versions(struct xe_gt *gt,
|
|
struct xe_uc_fw_version *wanted,
|
|
struct xe_uc_fw_version *found);
|
|
int xe_gt_sriov_vf_query_config(struct xe_gt *gt);
|
|
int xe_gt_sriov_vf_connect(struct xe_gt *gt);
|
|
int xe_gt_sriov_vf_query_runtime(struct xe_gt *gt);
|
|
void xe_gt_sriov_vf_migrated_event_handler(struct xe_gt *gt);
|
|
|
|
int xe_gt_sriov_vf_init_early(struct xe_gt *gt);
|
|
int xe_gt_sriov_vf_init(struct xe_gt *gt);
|
|
bool xe_gt_sriov_vf_recovery_pending(struct xe_gt *gt);
|
|
|
|
u32 xe_gt_sriov_vf_gmdid(struct xe_gt *gt);
|
|
u16 xe_gt_sriov_vf_guc_ids(struct xe_gt *gt);
|
|
u64 xe_gt_sriov_vf_lmem(struct xe_gt *gt);
|
|
bool xe_gt_sriov_vf_sched_groups_enabled(struct xe_gt *gt);
|
|
|
|
u32 xe_gt_sriov_vf_read32(struct xe_gt *gt, struct xe_reg reg);
|
|
void xe_gt_sriov_vf_write32(struct xe_gt *gt, struct xe_reg reg, u32 val);
|
|
|
|
void xe_gt_sriov_vf_print_config(struct xe_gt *gt, struct drm_printer *p);
|
|
void xe_gt_sriov_vf_print_runtime(struct xe_gt *gt, struct drm_printer *p);
|
|
void xe_gt_sriov_vf_print_version(struct xe_gt *gt, struct drm_printer *p);
|
|
|
|
void xe_gt_sriov_vf_wait_valid_ggtt(struct xe_gt *gt);
|
|
|
|
#endif
|