File tree Expand file tree Collapse file tree 3 files changed +22
-2
lines changed Expand file tree Collapse file tree 3 files changed +22
-2
lines changed Original file line number Diff line number Diff line change @@ -532,8 +532,10 @@ static int all_fw_domain_init(struct xe_gt *gt)
532
532
if (IS_SRIOV_PF (gt_to_xe (gt )) && !xe_gt_is_media_type (gt ))
533
533
xe_lmtt_init_hw (& gt_to_tile (gt )-> sriov .pf .lmtt );
534
534
535
- if (IS_SRIOV_PF (gt_to_xe (gt )))
535
+ if (IS_SRIOV_PF (gt_to_xe (gt ))) {
536
+ xe_gt_sriov_pf_init (gt );
536
537
xe_gt_sriov_pf_init_hw (gt );
538
+ }
537
539
538
540
xe_force_wake_put (gt_to_fw (gt ), fw_ref );
539
541
Original file line number Diff line number Diff line change @@ -68,6 +68,19 @@ int xe_gt_sriov_pf_init_early(struct xe_gt *gt)
68
68
return 0 ;
69
69
}
70
70
71
+ /**
72
+ * xe_gt_sriov_pf_init - Prepare SR-IOV PF data structures on PF.
73
+ * @gt: the &xe_gt to initialize
74
+ *
75
+ * Late one-time initialization of the PF data.
76
+ *
77
+ * Return: 0 on success or a negative error code on failure.
78
+ */
79
+ int xe_gt_sriov_pf_init (struct xe_gt * gt )
80
+ {
81
+ return xe_gt_sriov_pf_migration_init (gt );
82
+ }
83
+
71
84
static bool pf_needs_enable_ggtt_guest_update (struct xe_device * xe )
72
85
{
73
86
return GRAPHICS_VERx100 (xe ) == 1200 ;
@@ -90,7 +103,6 @@ void xe_gt_sriov_pf_init_hw(struct xe_gt *gt)
90
103
pf_enable_ggtt_guest_update (gt );
91
104
92
105
xe_gt_sriov_pf_service_update (gt );
93
- xe_gt_sriov_pf_migration_init (gt );
94
106
}
95
107
96
108
static u32 pf_get_vf_regs_stride (struct xe_device * xe )
Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ struct xe_gt;
10
10
11
11
#ifdef CONFIG_PCI_IOV
12
12
int xe_gt_sriov_pf_init_early (struct xe_gt * gt );
13
+ int xe_gt_sriov_pf_init (struct xe_gt * gt );
13
14
void xe_gt_sriov_pf_init_hw (struct xe_gt * gt );
14
15
void xe_gt_sriov_pf_sanitize_hw (struct xe_gt * gt , unsigned int vfid );
15
16
void xe_gt_sriov_pf_restart (struct xe_gt * gt );
@@ -19,6 +20,11 @@ static inline int xe_gt_sriov_pf_init_early(struct xe_gt *gt)
19
20
return 0 ;
20
21
}
21
22
23
+ static inline int xe_gt_sriov_pf_init (struct xe_gt * gt )
24
+ {
25
+ return 0 ;
26
+ }
27
+
22
28
static inline void xe_gt_sriov_pf_init_hw (struct xe_gt * gt )
23
29
{
24
30
}
You can’t perform that action at this time.
0 commit comments