summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/display/intel_bios.c
diff options
context:
space:
mode:
authorRadhakrishna Sripada <radhakrishna.sripada@intel.com>2024-02-28 13:32:34 -0800
committerJani Nikula <jani.nikula@intel.com>2024-03-11 12:37:32 +0200
commit0cb9b4ead00e5359e543f9c88684970ccbaf5d25 (patch)
tree4e2394af5b3132c278fe1d27b33138541c6b6caa /drivers/gpu/drm/i915/display/intel_bios.c
parent9d9bb71f3e115b75ec5e38f087e159a87fc0413a (diff)
drm/i915: Duplicate opregion vbt memory
In the case of vbt residing in opregion, we simply remap the region into the kernel and pass the memory reference. Instead duplicate the memory to handle a saner cleanup in intel_bios_init. Cc: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240228213235.2495611-6-radhakrishna.sripada@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_bios.c')
-rw-r--r--drivers/gpu/drm/i915/display/intel_bios.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c
index cbbef39c69cb..51954deaf644 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -3194,8 +3194,10 @@ void intel_bios_init(struct drm_i915_private *i915)
oprom_vbt = firmware_get_vbt(i915, NULL);
vbt = oprom_vbt;
- if (!vbt)
- vbt = intel_opregion_get_vbt(i915, NULL);
+ if (!vbt) {
+ oprom_vbt = intel_opregion_get_vbt(i915, NULL);
+ vbt = oprom_vbt;
+ }
/*
* If the OpRegion does not have VBT, look in SPI flash through MMIO or