// SPDX-License-Identifier: MIT /* * Copyright © 2023-2024 Intel Corporation */ #include <drm/drm_managed.h> #include "xe_assert.h" #include "xe_device.h" #include "xe_module.h" #include "xe_sriov.h" #include "xe_sriov_pf.h" #include "xe_sriov_printk.h" static unsigned int wanted_max_vfs(struct xe_device *xe) { … } static int pf_reduce_totalvfs(struct xe_device *xe, int limit) { … } static bool pf_continue_as_native(struct xe_device *xe, const char *why) { … } /** * xe_sriov_pf_readiness - Check if PF functionality can be enabled. * @xe: the &xe_device to check * * This function is called as part of the SR-IOV probe to validate if all * PF prerequisites are satisfied and we can continue with enabling PF mode. * * Return: true if the PF mode can be turned on. */ bool xe_sriov_pf_readiness(struct xe_device *xe) { … } /** * xe_sriov_pf_init_early - Initialize SR-IOV PF specific data. * @xe: the &xe_device to initialize * * Return: 0 on success or a negative error code on failure. */ int xe_sriov_pf_init_early(struct xe_device *xe) { … } /** * xe_sriov_pf_print_vfs_summary - Print SR-IOV PF information. * @xe: the &xe_device to print info from * @p: the &drm_printer * * Print SR-IOV PF related information into provided DRM printer. */ void xe_sriov_pf_print_vfs_summary(struct xe_device *xe, struct drm_printer *p) { … }