diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/0143-drm-amd-display-Disable-Modules-at-Runtime.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/0143-drm-amd-display-Disable-Modules-at-Runtime.patch | 212 |
1 files changed, 0 insertions, 212 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/0143-drm-amd-display-Disable-Modules-at-Runtime.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/0143-drm-amd-display-Disable-Modules-at-Runtime.patch deleted file mode 100644 index f6d3a01c..00000000 --- a/common/recipes-kernel/linux/linux-yocto-4.14.71/0143-drm-amd-display-Disable-Modules-at-Runtime.patch +++ /dev/null @@ -1,212 +0,0 @@ -From 9ec0f87c6fa853f682aa9d0d5159d188793f9b77 Mon Sep 17 00:00:00 2001 -From: Anthony Koo <Anthony.Koo@amd.com> -Date: Thu, 12 Jan 2017 14:24:11 -0500 -Subject: [PATCH 0143/4131] drm/amd/display: Disable Modules at Runtime - -Add NULL check in modules - -Signed-off-by: Anthony Koo <anthony.koo@amd.com> -Acked-by: Harry Wentland <Harry.Wentland@amd.com> -Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> -Signed-off-by: Alex Deucher <alexander.deucher@amd.com> ---- - .../drm/amd/display/modules/freesync/freesync.c | 94 +++++++++++++++------- - .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 7 -- - 2 files changed, 65 insertions(+), 36 deletions(-) - -diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c -index 6f4d169..e0703c5 100644 ---- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c -+++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c -@@ -205,11 +205,16 @@ static unsigned int map_index_from_stream(struct core_freesync *core_freesync, - bool mod_freesync_add_stream(struct mod_freesync *mod_freesync, - const struct dc_stream *stream, struct mod_freesync_caps *caps) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -- struct core_stream *core_stream = -- DC_STREAM_TO_CORE(stream); -- struct core_dc *core_dc = DC_TO_CORE(core_freesync->dc); -+ struct core_stream *core_stream = NULL; -+ struct core_dc *core_dc = NULL; -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return false; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); -+ core_stream = DC_STREAM_TO_CORE(stream); -+ core_dc = DC_TO_CORE(core_freesync->dc); - - int persistent_freesync_enable = 0; - struct persistent_data_flag flag; -@@ -270,11 +275,16 @@ bool mod_freesync_add_stream(struct mod_freesync *mod_freesync, - bool mod_freesync_remove_stream(struct mod_freesync *mod_freesync, - const struct dc_stream *stream) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -- - int i = 0; -- unsigned int index = map_index_from_stream(core_freesync, stream); -+ struct core_freesync *core_freesync = NULL; -+ unsigned int index = 0; -+ -+ if (mod_freesync == NULL) -+ return false; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); -+ index = map_index_from_stream(core_freesync, stream); -+ - dc_stream_release(core_freesync->map[index].stream); - core_freesync->map[index].stream = NULL; - /* To remove this entity, shift everything after down */ -@@ -621,11 +631,14 @@ static void set_static_ramp_variables(struct core_freesync *core_freesync, - void mod_freesync_handle_v_update(struct mod_freesync *mod_freesync, - const struct dc_stream **streams, int num_streams) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -- - unsigned int index, v_total = 0; - struct freesync_state *state; -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); - - if (core_freesync->num_entities == 0) - return; -@@ -691,11 +704,15 @@ void mod_freesync_update_state(struct mod_freesync *mod_freesync, - const struct dc_stream **streams, int num_streams, - struct mod_freesync_params *freesync_params) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); - bool freesync_program_required = false; - unsigned int stream_index; - struct freesync_state *state; -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); - - if (core_freesync->num_entities == 0) - return; -@@ -762,10 +779,14 @@ bool mod_freesync_get_state(struct mod_freesync *mod_freesync, - const struct dc_stream *stream, - struct mod_freesync_params *freesync_params) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -+ unsigned int index = NULL; -+ struct core_freesync *core_freesync = NULL; - -- unsigned int index = map_index_from_stream(core_freesync, stream); -+ if (mod_freesync == NULL) -+ return false; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); -+ index = map_index_from_stream(core_freesync, stream); - - if (core_freesync->map[index].state.fullscreen) { - freesync_params->state = FREESYNC_STATE_FULLSCREEN; -@@ -794,13 +815,17 @@ bool mod_freesync_set_user_enable(struct mod_freesync *mod_freesync, - const struct dc_stream **streams, int num_streams, - struct mod_freesync_user_enable *user_enable) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -- struct core_dc *core_dc = DC_TO_CORE(core_freesync->dc); -- - unsigned int stream_index, map_index; - int persistent_data = 0; - struct persistent_data_flag flag; -+ struct core_dc *core_dc = NULL; -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return false; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); -+ core_dc = DC_TO_CORE(core_freesync->dc); - - flag.save_per_edid = true; - flag.save_per_link = false; -@@ -842,10 +867,14 @@ bool mod_freesync_get_user_enable(struct mod_freesync *mod_freesync, - const struct dc_stream *stream, - struct mod_freesync_user_enable *user_enable) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -+ unsigned int index = 0; -+ struct core_freesync *core_freesync = NULL; - -- unsigned int index = map_index_from_stream(core_freesync, stream); -+ if (mod_freesync == NULL) -+ return false; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); -+ index = map_index_from_stream(core_freesync, stream); - - *user_enable = core_freesync->map[index].user_enable; - -@@ -855,12 +884,15 @@ bool mod_freesync_get_user_enable(struct mod_freesync *mod_freesync, - void mod_freesync_notify_mode_change(struct mod_freesync *mod_freesync, - const struct dc_stream **streams, int num_streams) - { -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -- - unsigned int stream_index, map_index; - unsigned min_frame_duration_in_ns, max_frame_duration_in_ns; - struct freesync_state *state; -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); - - for (stream_index = 0; stream_index < num_streams; stream_index++) { - -@@ -1121,8 +1153,12 @@ void mod_freesync_pre_update_plane_addresses(struct mod_freesync *mod_freesync, - unsigned int curr_time_stamp_in_us) - { - unsigned int stream_index, map_index, last_render_time_in_us = 0; -- struct core_freesync *core_freesync = -- MOD_FREESYNC_TO_CORE(mod_freesync); -+ struct core_freesync *core_freesync = NULL; -+ -+ if (mod_freesync == NULL) -+ return; -+ -+ core_freesync = MOD_FREESYNC_TO_CORE(mod_freesync); - - for (stream_index = 0; stream_index < num_streams; stream_index++) { - -diff --git a/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h b/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h -index 7abfe34..783ff2e 100644 ---- a/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h -+++ b/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h -@@ -110,13 +110,6 @@ bool mod_freesync_remove_stream(struct mod_freesync *mod_freesync, - const struct dc_stream *stream); - - /* -- * Build additional parameters for dc_stream when creating stream for -- * sink to support freesync -- */ --void mod_freesync_update_stream(struct mod_freesync *mod_freesync, -- struct dc_stream *stream); -- --/* - * Update the freesync state flags for each display and program - * freesync accordingly - */ --- -2.7.4 - |