Add VBT support to enable/disable eDP Pipe Joiner feature.
The OEMs can choose to enable/disable the feature from VBT.
ARL - VBTs default this field to disabled.
PTL+ - VBTs default this field to enabled.

Bspec:20142
Signed-off-by: Ankit Nautiyal <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_bios.c          | 4 ++++
 drivers/gpu/drm/i915/display/intel_display_types.h | 1 +
 drivers/gpu/drm/i915/display/intel_vbt_defs.h      | 1 +
 3 files changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_bios.c 
b/drivers/gpu/drm/i915/display/intel_bios.c
index ae0b922d5bc3..633a35153485 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -1546,6 +1546,10 @@ parse_edp(struct intel_display *display,
        if (display->vbt.version >= 251)
                panel->vbt.edp.dsc_disable =
                        panel_bool(edp->edp_dsc_disable, panel_type);
+
+       if (display->vbt.version >= 261)
+               panel->vbt.edp.pipe_joiner_enable =
+                       panel_bool(edp->pipe_joiner_enable, panel_type);
 }
 
 static void
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h 
b/drivers/gpu/drm/i915/display/intel_display_types.h
index 6b92f333e18b..356979fb9487 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -351,6 +351,7 @@ struct intel_vbt_panel_data {
                bool low_vswing;
                bool hobl;
                bool dsc_disable;
+               bool pipe_joiner_enable;
        } edp;
 
        struct {
diff --git a/drivers/gpu/drm/i915/display/intel_vbt_defs.h 
b/drivers/gpu/drm/i915/display/intel_vbt_defs.h
index 57fda5824c9c..0dc13d080e8a 100644
--- a/drivers/gpu/drm/i915/display/intel_vbt_defs.h
+++ b/drivers/gpu/drm/i915/display/intel_vbt_defs.h
@@ -1109,6 +1109,7 @@ struct bdb_edp {
        u16 edp_dsc_disable;                                    /* 251+ */
        u16 t6_delay_support;                                   /* 260+ */
        u16 link_idle_time[16];                                 /* 260+ */
+       u16 pipe_joiner_enable;                                 /* 261+ */
 } __packed;
 
 /*
-- 
2.45.2

Reply via email to