summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/display/intel_display_core.h
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2022-08-29 16:18:14 +0300
committerJani Nikula <jani.nikula@intel.com>2022-08-31 15:19:39 +0300
commita434689c0adbf8986024e82767fd26b0e142dba6 (patch)
treeb8061d4aa4bf62df7d3980062dff73fdd971c500 /drivers/gpu/drm/i915/display/intel_display_core.h
parent90b87cf2430490d9aa0ba0c2a14b4db8da0c4942 (diff)
downloadlinux-a434689c0adbf8986024e82767fd26b0e142dba6.tar.gz
linux-a434689c0adbf8986024e82767fd26b0e142dba6.tar.bz2
linux-a434689c0adbf8986024e82767fd26b0e142dba6.zip
drm/i915: move vbt to display.vbt
Move display VBT related members under drm_i915_private display sub-struct. v2: Rebase Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/db4b648b201ea0b79654fec2028120999a735db0.1661779055.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_display_core.h')
-rw-r--r--drivers/gpu/drm/i915/display/intel_display_core.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h
index 63ff660b9479..4eeb6a8caf67 100644
--- a/drivers/gpu/drm/i915/display/intel_display_core.h
+++ b/drivers/gpu/drm/i915/display/intel_display_core.h
@@ -6,11 +6,14 @@
#ifndef __INTEL_DISPLAY_CORE_H__
#define __INTEL_DISPLAY_CORE_H__
+#include <linux/list.h>
#include <linux/mutex.h>
#include <linux/types.h>
#include <linux/wait.h>
#include <linux/workqueue.h>
+#include <drm/drm_connector.h>
+
#include "intel_cdclk.h"
#include "intel_display.h"
#include "intel_dmc.h"
@@ -25,6 +28,7 @@ struct i915_audio_component;
struct i915_hdcp_comp_master;
struct intel_atomic_state;
struct intel_audio_funcs;
+struct intel_bios_encoder_data;
struct intel_cdclk_funcs;
struct intel_cdclk_vals;
struct intel_color_funcs;
@@ -153,6 +157,39 @@ struct intel_hotplug {
struct workqueue_struct *dp_wq;
};
+struct intel_vbt_data {
+ /* bdb version */
+ u16 version;
+
+ /* Feature bits */
+ unsigned int int_tv_support:1;
+ unsigned int int_crt_support:1;
+ unsigned int lvds_use_ssc:1;
+ unsigned int int_lvds_support:1;
+ unsigned int display_clock_mode:1;
+ unsigned int fdi_rx_polarity_inverted:1;
+ int lvds_ssc_freq;
+ enum drm_panel_orientation orientation;
+
+ bool override_afc_startup;
+ u8 override_afc_startup_val;
+
+ int crt_ddc_pin;
+
+ struct list_head display_devices;
+ struct list_head bdb_blocks;
+
+ struct intel_bios_encoder_data *ports[I915_MAX_PORTS]; /* Non-NULL if port present. */
+ struct sdvo_device_mapping {
+ u8 initialized;
+ u8 dvo_port;
+ u8 slave_addr;
+ u8 dvo_wiring;
+ u8 i2c_pin;
+ u8 ddc_pin;
+ } sdvo_mappings[2];
+};
+
struct intel_wm {
/*
* Raw watermark latency values:
@@ -311,6 +348,7 @@ struct intel_display {
struct intel_hotplug hotplug;
struct intel_opregion opregion;
struct intel_overlay *overlay;
+ struct intel_vbt_data vbt;
struct intel_wm wm;
};