]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/amd/display: Add ability to override bounding box in DC construct
authorJun Lei <Jun.Lei@amd.com>
Thu, 7 Feb 2019 23:54:35 +0000 (18:54 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 5 Mar 2019 20:09:33 +0000 (15:09 -0500)
Add a dc_bounding_box_overrides struct to define bb overrides. It is
loaded in during DC init.

Signed-off-by: Jun Lei <Jun.Lei@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c
drivers/gpu/drm/amd/display/dc/dc.h

index 1bfd9ba18b6dcb10eb9673acadeb79ce09c8b17a..5dfc2e3ede6dc892c8a6c20e9aac23800944d023 100644 (file)
@@ -621,6 +621,8 @@ static bool construct(struct dc *dc,
 #endif
 
        enum dce_version dc_version = DCE_VERSION_UNKNOWN;
+       memcpy(&dc->bb_overrides, &init_params->bb_overrides, sizeof(dc->bb_overrides));
+
        dc_dceip = kzalloc(sizeof(*dc_dceip), GFP_KERNEL);
        if (!dc_dceip) {
                dm_error("%s: failed to create dceip\n", __func__);
index e98e19ca9c1c1fd7395474aa56a04a01cea3ce47..ed11b3c5b98094fabf676e74e62822f587b5fb58 100644 (file)
@@ -268,6 +268,14 @@ struct dc_debug_data {
        uint32_t auxErrorCount;
 };
 
+struct dc_bounding_box_overrides {
+       int sr_exit_time_ns;
+       int sr_enter_plus_exit_time_ns;
+       int urgent_latency_ns;
+       int percent_of_ideal_drambw;
+       int dram_clock_change_latency_ns;
+};
+
 struct dc_state;
 struct resource_pool;
 struct dce_hwseq;
@@ -277,6 +285,7 @@ struct dc {
        struct dc_cap_funcs cap_funcs;
        struct dc_config config;
        struct dc_debug_options debug;
+       struct dc_bounding_box_overrides bb_overrides;
        struct dc_context *ctx;
 
        uint8_t link_count;
@@ -330,6 +339,7 @@ struct dc_init_data {
        struct hw_asic_id asic_id;
        void *driver; /* ctx */
        struct cgs_device *cgs_device;
+       struct dc_bounding_box_overrides bb_overrides;
 
        int num_virtual_links;
        /*