Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git] / drivers / gpu / drm / amd / display / dc / dc.h
index 6c9990bef267e1cd469de9ab10e60b603e809435..b57fa61b3034a14869a2cee91423b7f7e0fa11e0 100644 (file)
 #include "inc/compressor.h"
 #include "dml/display_mode_lib.h"
 
-#define DC_VER "3.1.59"
+#define DC_VER "3.1.68"
 
 #define MAX_SURFACES 3
 #define MAX_STREAMS 6
 #define MAX_SINKS_PER_LINK 4
 
-
 /*******************************************************************************
  * Display Core Interfaces
  ******************************************************************************/
@@ -170,6 +169,7 @@ struct link_training_settings;
 struct dc_config {
        bool gpu_vm_support;
        bool disable_disp_pll_sharing;
+       bool fbc_support;
 };
 
 enum visual_confirm {
@@ -208,6 +208,7 @@ struct dc_clocks {
        int dcfclk_deep_sleep_khz;
        int fclk_khz;
        int phyclk_khz;
+       int dramclk_khz;
 };
 
 struct dc_debug_options {
@@ -311,12 +312,12 @@ struct dc {
 
        bool optimized_required;
 
-       bool apply_edp_fast_boot_optimization;
-
        /* FBC compressor */
        struct compressor *fbc_compressor;
 
        struct dc_debug_data debug_data;
+
+       const char *build_id;
 };
 
 enum frame_buffer_mode {
@@ -442,6 +443,7 @@ union surface_update_flags {
                uint32_t color_space_change:1;
                uint32_t horizontal_mirror_change:1;
                uint32_t per_pixel_alpha_change:1;
+               uint32_t global_alpha_change:1;
                uint32_t rotation_change:1;
                uint32_t swizzle_change:1;
                uint32_t scaling_change:1;
@@ -496,6 +498,8 @@ struct dc_plane_state {
 
        bool is_tiling_rotated;
        bool per_pixel_alpha;
+       bool global_alpha;
+       int  global_alpha_value;
        bool visible;
        bool flip_immediate;
        bool horizontal_mirror;
@@ -522,6 +526,8 @@ struct dc_plane_info {
        bool horizontal_mirror;
        bool visible;
        bool per_pixel_alpha;
+       bool global_alpha;
+       int  global_alpha_value;
        bool input_csc_enabled;
 };
 
@@ -596,6 +602,8 @@ struct dc_validation_set {
 
 enum dc_status dc_validate_plane(struct dc *dc, const struct dc_plane_state *plane_state);
 
+void get_clock_requirements_for_state(struct dc_state *state, struct AsicStateEx *info);
+
 enum dc_status dc_validate_global_state(
                struct dc *dc,
                struct dc_state *new_ctx);