Newer platforms aren't supposed to have mailbox #2 or SWSCI
support. Bail out early from encoder notify if that is the case,
skipping the out-of-bounds checks and debug messages.

Cc: Ville Syrjälä <ville.syrj...@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nik...@intel.com>
---
 drivers/gpu/drm/i915/display/intel_opregion.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_opregion.c 
b/drivers/gpu/drm/i915/display/intel_opregion.c
index e540e5b9073b..ce3d44cc2461 100644
--- a/drivers/gpu/drm/i915/display/intel_opregion.c
+++ b/drivers/gpu/drm/i915/display/intel_opregion.c
@@ -358,11 +358,17 @@ int intel_opregion_notify_encoder(struct intel_encoder 
*intel_encoder,
        u32 parm = 0;
        u32 type = 0;
        u32 port;
+       int ret;
 
        /* don't care about old stuff for now */
        if (!HAS_DDI(dev_priv))
                return 0;
 
+       /* Avoid port out of bounds checks if SWSCI isn't there. */
+       ret = check_swsci_function(dev_priv, SWSCI_SBCB_DISPLAY_POWER_STATE);
+       if (ret)
+               return ret;
+
        if (intel_encoder->type == INTEL_OUTPUT_DSI)
                port = 0;
        else
-- 
2.30.2

Reply via email to