Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.19-rc7 48 lines 1.2 kB view raw
1/* SPDX-License-Identifier: MIT */ 2/* 3 * Copyright © 2023 Intel Corporation 4 */ 5 6#ifndef _XE_SRIOV_H_ 7#define _XE_SRIOV_H_ 8 9#include "xe_assert.h" 10#include "xe_device_types.h" 11#include "xe_sriov_types.h" 12 13struct drm_printer; 14 15const char *xe_sriov_mode_to_string(enum xe_sriov_mode mode); 16const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len); 17 18void xe_sriov_probe_early(struct xe_device *xe); 19void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p); 20int xe_sriov_init(struct xe_device *xe); 21int xe_sriov_init_late(struct xe_device *xe); 22 23static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe) 24{ 25 xe_assert(xe, xe->sriov.__mode); 26 return xe->sriov.__mode; 27} 28 29static inline bool xe_device_is_sriov_pf(const struct xe_device *xe) 30{ 31 return xe_device_sriov_mode(xe) == XE_SRIOV_MODE_PF; 32} 33 34static inline bool xe_device_is_sriov_vf(const struct xe_device *xe) 35{ 36 return xe_device_sriov_mode(xe) == XE_SRIOV_MODE_VF; 37} 38 39#ifdef CONFIG_PCI_IOV 40#define IS_SRIOV_PF(xe) xe_device_is_sriov_pf(xe) 41#else 42#define IS_SRIOV_PF(xe) (typecheck(struct xe_device *, (xe)) && false) 43#endif 44#define IS_SRIOV_VF(xe) xe_device_is_sriov_vf(xe) 45 46#define IS_SRIOV(xe) (IS_SRIOV_PF(xe) || IS_SRIOV_VF(xe)) 47 48#endif