summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dc/inc/core_dc.h
diff options
context:
space:
mode:
authorHarry Wentland2017-09-12 21:58:20 +0200
committerAlex Deucher2017-09-26 23:01:32 +0200
commit4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c (patch)
tree84301c04dcaaa05c3318a8fe62cf62ab52ecc162 /drivers/gpu/drm/amd/display/dc/inc/core_dc.h
parentdrm/amdgpu: Pulling old prepare and submit for flip back (diff)
downloadkernel-qcow2-linux-4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c.tar.gz
kernel-qcow2-linux-4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c.tar.xz
kernel-qcow2-linux-4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c.zip
drm/amd/dc: Add dc display driver (v2)
Supported DCE versions: 8.0, 10.0, 11.0, 11.2 v2: rebase against 4.11 Signed-off-by: Harry Wentland <harry.wentland@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/inc/core_dc.h')
-rw-r--r--drivers/gpu/drm/amd/display/dc/inc/core_dc.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/inc/core_dc.h b/drivers/gpu/drm/amd/display/dc/inc/core_dc.h
new file mode 100644
index 000000000000..7d6dc8ea75ab
--- /dev/null
+++ b/drivers/gpu/drm/amd/display/dc/inc/core_dc.h
@@ -0,0 +1,50 @@
+/*
+ * core_dc.h
+ *
+ * Created on: Nov 13, 2015
+ * Author: yonsun
+ */
+
+#ifndef __CORE_DC_H__
+#define __CORE_DC_H__
+
+#include "core_types.h"
+#include "hw_sequencer.h"
+
+#define DC_TO_CORE(dc)\
+ container_of(dc, struct core_dc, public)
+
+struct core_dc {
+ struct dc public;
+ struct dc_context *ctx;
+
+ uint8_t link_count;
+ struct core_link *links[MAX_PIPES * 2];
+
+ /* TODO: determine max number of targets*/
+ struct validate_context *current_context;
+ struct validate_context *temp_flip_context;
+ struct resource_pool *res_pool;
+
+ /*Power State*/
+ enum dc_video_power_state previous_power_state;
+ enum dc_video_power_state current_power_state;
+
+ /* Display Engine Clock levels */
+ struct dm_pp_clock_levels sclk_lvls;
+
+ /* Inputs into BW and WM calculations. */
+ struct bw_calcs_dceip bw_dceip;
+ struct bw_calcs_vbios bw_vbios;
+
+ /* HW functions */
+ struct hw_sequencer_funcs hwss;
+ struct dce_hwseq *hwseq;
+
+ /* temp store of dm_pp_display_configuration
+ * to compare to see if display config changed
+ */
+ struct dm_pp_display_configuration prev_display_config;
+};
+
+#endif /* __CORE_DC_H__ */