diff options
author | Lucas De Marchi <lucas.demarchi@intel.com> | 2025-03-14 16:48:58 +0300 |
---|---|---|
committer | Lucas De Marchi <lucas.demarchi@intel.com> | 2025-03-26 06:54:59 +0300 |
commit | caf2f15648ba6cb4c329465c5686c9864a081a71 (patch) | |
tree | 8632f8752d69250e9be047fa01339367192262ba /rust/helpers/helpers.c | |
parent | d2de4410a88ffc6053300d03041cc73b8c85dbaf (diff) | |
download | linux-caf2f15648ba6cb4c329465c5686c9864a081a71.tar.xz |
drm/xe: Move survivability back to xe
Commit d40f275d96e8 ("drm/xe: Move survivability entirely to xe_pci")
moved the survivability handling to be done entirely in the xe_pci
layer. However there are some issues with that approach:
1) Survivability mode needs at least the mmio initialized, otherwise it
can't really read a register to decide if it should enter that state
2) SR-IOV mode should be initialized, otherwise it's not possible to
check if it's VF
Besides, as pointed by Riana the check for
xe_survivability_mode_enable() was wrong in xe_pci_probe() since it's
not a bool return.
Fix that by moving the initialization to be entirely in the xe_device
layer, with the correct dependencies handled: only after mmio and sriov
initialization, and not triggering it on error from
wait_for_lmem_ready(). This restores the trigger behavior before that
commit. The xe_pci layer now only checks for "is it enabled?",
like it's doing in xe_pci_suspend()/xe_pci_remove(), etc.
Cc: Riana Tauro <riana.tauro@intel.com>
Fixes: d40f275d96e8 ("drm/xe: Move survivability entirely to xe_pci")
Reviewed-by: Riana Tauro <riana.tauro@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250314-fix-survivability-v5-1-fdb3559ea965@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
(cherry picked from commit 86b5e0dbba07438de91dd81095464c6c4aa7a372)
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
Diffstat (limited to 'rust/helpers/helpers.c')
0 files changed, 0 insertions, 0 deletions