linux/drivers/gpu/drm/xe/xe_sriov_pf_service.h
Michal Wajdeczko a6c384b24f drm/xe/pf: Stop requiring VF/PF version negotiation on every GT
While some VF/PF relay actions must be handled on the GT level,
like query for runtime registers, it was clarified by the arch
team that initial version negotiation can be done by the VF just
once, by using any available GuC/GT.

Move handling of the VF/PF ABI version negotiation on the PF side
from the GT level functions to the device level functions.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: Piotr Piórkowski <piotr.piorkowski@intel.com>
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://lore.kernel.org/r/20250713103625.1964-7-michal.wajdeczko@intel.com
2025-07-14 18:19:31 +02:00

24 lines
678 B
C

/* SPDX-License-Identifier: MIT */
/*
* Copyright © 2025 Intel Corporation
*/
#ifndef _XE_SRIOV_PF_SERVICE_H_
#define _XE_SRIOV_PF_SERVICE_H_
#include <linux/types.h>
struct drm_printer;
struct xe_device;
void xe_sriov_pf_service_init(struct xe_device *xe);
void xe_sriov_pf_service_print_versions(struct xe_device *xe, struct drm_printer *p);
int xe_sriov_pf_service_handshake_vf(struct xe_device *xe, u32 vfid,
u32 wanted_major, u32 wanted_minor,
u32 *major, u32 *minor);
bool xe_sriov_pf_service_is_negotiated(struct xe_device *xe, u32 vfid, u32 major, u32 minor);
void xe_sriov_pf_service_reset_vf(struct xe_device *xe, unsigned int vfid);
#endif