35 lines
830 B
C
35 lines
830 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2025 Intel Corporation
|
|
*/
|
|
|
|
#ifndef _XE_SRIOV_VF_CCS_H_
|
|
#define _XE_SRIOV_VF_CCS_H_
|
|
|
|
#include "xe_device_types.h"
|
|
#include "xe_sriov.h"
|
|
#include "xe_sriov_vf_ccs_types.h"
|
|
|
|
struct drm_printer;
|
|
struct xe_device;
|
|
struct xe_bo;
|
|
|
|
int xe_sriov_vf_ccs_init(struct xe_device *xe);
|
|
int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
|
|
int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
|
|
int xe_sriov_vf_ccs_register_context(struct xe_device *xe);
|
|
void xe_sriov_vf_ccs_print(struct xe_device *xe, struct drm_printer *p);
|
|
|
|
static inline bool xe_sriov_vf_ccs_ready(struct xe_device *xe)
|
|
{
|
|
xe_assert(xe, IS_SRIOV_VF(xe));
|
|
return xe->sriov.vf.ccs.initialized;
|
|
}
|
|
|
|
#define IS_VF_CCS_READY(xe) ({ \
|
|
struct xe_device *xe__ = (xe); \
|
|
IS_SRIOV_VF(xe__) && xe_sriov_vf_ccs_ready(xe__); \
|
|
})
|
|
|
|
#endif
|