Commit 5cef8493 authored by Michal Wajdeczko's avatar Michal Wajdeczko

drm/xe/vf: Treat GMDID as another runtime register

While the GMDID registers are not part of the runtime register list
shared by the PF driver, we may still return cached values from our
VF specific read32() helper function.
Signed-off-by: default avatarMichal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: default avatarMatt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240523192240.844-7-michal.wajdeczko@intel.com
parent 9081f8ca
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include "abi/guc_communication_mmio_abi.h" #include "abi/guc_communication_mmio_abi.h"
#include "abi/guc_klvs_abi.h" #include "abi/guc_klvs_abi.h"
#include "abi/guc_relay_actions_abi.h" #include "abi/guc_relay_actions_abi.h"
#include "regs/xe_gt_regs.h"
#include "xe_assert.h" #include "xe_assert.h"
#include "xe_device.h" #include "xe_device.h"
...@@ -764,6 +765,12 @@ u32 xe_gt_sriov_vf_read32(struct xe_gt *gt, struct xe_reg reg) ...@@ -764,6 +765,12 @@ u32 xe_gt_sriov_vf_read32(struct xe_gt *gt, struct xe_reg reg)
xe_gt_assert(gt, gt->sriov.vf.pf_version.major); xe_gt_assert(gt, gt->sriov.vf.pf_version.major);
xe_gt_assert(gt, !reg.vf); xe_gt_assert(gt, !reg.vf);
if (reg.addr == GMD_ID.addr) {
xe_gt_sriov_dbg_verbose(gt, "gmdid(%#x) = %#x\n",
addr, gt->sriov.vf.runtime.gmdid);
return gt->sriov.vf.runtime.gmdid;
}
rr = vf_lookup_reg(gt, addr); rr = vf_lookup_reg(gt, addr);
if (!rr) { if (!rr) {
xe_gt_WARN(gt, IS_ENABLED(CONFIG_DRM_XE_DEBUG), xe_gt_WARN(gt, IS_ENABLED(CONFIG_DRM_XE_DEBUG),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment