mirror of
https://github.com/torvalds/linux.git
synced 2026-10-16 21:00:02 +02:00
drm/xe/pf: Define admin_only as real flag
Instead of doing guesses each time during the runtime, set flag admin_only once during PF's initialization. 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://patch.msgid.link/20260127210501.794-1-michal.wajdeczko@intel.com
This commit is contained in:
parent
0dfc7306b9
commit
10f817c256
|
|
@ -15,7 +15,7 @@
|
|||
static void pf_set_admin_mode(struct xe_device *xe, bool enable)
|
||||
{
|
||||
/* should match logic of xe_sriov_pf_admin_only() */
|
||||
xe->info.probe_display = !enable;
|
||||
xe->sriov.pf.admin_only = enable;
|
||||
KUNIT_EXPECT_EQ(kunit_get_current_test(), enable, xe_sriov_pf_admin_only(xe));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,11 @@
|
|||
#include "xe_sriov_pf_sysfs.h"
|
||||
#include "xe_sriov_printk.h"
|
||||
|
||||
static bool wanted_admin_only(struct xe_device *xe)
|
||||
{
|
||||
return !xe->info.probe_display;
|
||||
}
|
||||
|
||||
static unsigned int wanted_max_vfs(struct xe_device *xe)
|
||||
{
|
||||
return xe_configfs_get_max_vfs(to_pci_dev(xe->drm.dev));
|
||||
|
|
@ -74,6 +79,7 @@ bool xe_sriov_pf_readiness(struct xe_device *xe)
|
|||
|
||||
pf_reduce_totalvfs(xe, newlimit);
|
||||
|
||||
xe->sriov.pf.admin_only = wanted_admin_only(xe);
|
||||
xe->sriov.pf.device_total_vfs = totalvfs;
|
||||
xe->sriov.pf.driver_max_vfs = newlimit;
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,8 @@ static inline unsigned int xe_sriov_pf_num_vfs(const struct xe_device *xe)
|
|||
*/
|
||||
static inline bool xe_sriov_pf_admin_only(const struct xe_device *xe)
|
||||
{
|
||||
return !xe->info.probe_display;
|
||||
xe_assert(xe, IS_SRIOV_PF(xe));
|
||||
return xe->sriov.pf.admin_only;
|
||||
}
|
||||
|
||||
static inline struct mutex *xe_sriov_pf_master_mutex(struct xe_device *xe)
|
||||
|
|
|
|||
|
|
@ -36,6 +36,9 @@ struct xe_sriov_metadata {
|
|||
* @XE_SRIOV_MODE_PF mode.
|
||||
*/
|
||||
struct xe_device_pf {
|
||||
/** @admin_only: PF functionality focused on VFs management only. */
|
||||
bool admin_only;
|
||||
|
||||
/** @device_total_vfs: Maximum number of VFs supported by the device. */
|
||||
u16 device_total_vfs;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user