drm/amd/display: Bunch of smatch error and warning fixes in DC
drivers/gpu/drm/amd/amdgpu/../display/dc/basics/log_helpers.c:79 dc_conn_log() error: buffer overflow 'signal_type_info_tbl' 10 <= 10 drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:266 bios_parser_get_dst_obj() error: uninitialized symbol 'id'. drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_audio.c:357 dce_aud_az_enable() warn: inconsistent indenting drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_resource.c:958 dcn10_acquire_idle_pipe_for_layer() error: we previously assumed 'head_pipe' could be null (see line 952) Signed-off-by: Harry Wentland <harry.wentland@amd.com> Reviewed-by: Sun peng Li <Sunpeng.Li@amd.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
70e8ffc55b
commit
a8f9764731
|
@ -75,6 +75,9 @@ void dc_conn_log(struct dc_context *ctx,
|
|||
if (signal == signal_type_info_tbl[i].type)
|
||||
break;
|
||||
|
||||
if (i == NUM_ELEMENTS(signal_type_info_tbl))
|
||||
goto fail;
|
||||
|
||||
dm_logger_append(&entry, "[%s][ConnIdx:%d] ",
|
||||
signal_type_info_tbl[i].name,
|
||||
link->link_index);
|
||||
|
@ -96,6 +99,8 @@ void dc_conn_log(struct dc_context *ctx,
|
|||
|
||||
dm_logger_append(&entry, "^\n");
|
||||
dm_helpers_dc_conn_log(ctx, &entry, event);
|
||||
|
||||
fail:
|
||||
dm_logger_close(&entry);
|
||||
|
||||
va_end(args);
|
||||
|
|
|
@ -249,7 +249,7 @@ static enum bp_result bios_parser_get_dst_obj(struct dc_bios *dcb,
|
|||
struct graphics_object_id *dest_object_id)
|
||||
{
|
||||
uint32_t number;
|
||||
uint16_t *id;
|
||||
uint16_t *id = NULL;
|
||||
ATOM_OBJECT *object;
|
||||
struct bios_parser *bp = BP_FROM_DCB(dcb);
|
||||
|
||||
|
@ -260,7 +260,7 @@ static enum bp_result bios_parser_get_dst_obj(struct dc_bios *dcb,
|
|||
|
||||
number = get_dest_obj_list(bp, object, &id);
|
||||
|
||||
if (number <= index)
|
||||
if (number <= index || !id)
|
||||
return BP_RESULT_BADINPUT;
|
||||
|
||||
*dest_object_id = object_id_from_bios_object_id(id[index]);
|
||||
|
|
|
@ -352,11 +352,11 @@ void dce_aud_az_enable(struct audio *audio)
|
|||
uint32_t value = AZ_REG_READ(AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL);
|
||||
|
||||
set_reg_field_value(value, 1,
|
||||
AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL,
|
||||
CLOCK_GATING_DISABLE);
|
||||
set_reg_field_value(value, 1,
|
||||
AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL,
|
||||
AUDIO_ENABLED);
|
||||
AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL,
|
||||
CLOCK_GATING_DISABLE);
|
||||
set_reg_field_value(value, 1,
|
||||
AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL,
|
||||
AUDIO_ENABLED);
|
||||
|
||||
AZ_REG_WRITE(AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL, value);
|
||||
value = AZ_REG_READ(AZALIA_F0_CODEC_PIN_CONTROL_HOT_PLUG_CONTROL);
|
||||
|
|
|
@ -912,11 +912,13 @@ static struct pipe_ctx *dcn10_acquire_idle_pipe_for_layer(
|
|||
struct pipe_ctx *head_pipe = resource_get_head_pipe_for_stream(res_ctx, stream);
|
||||
struct pipe_ctx *idle_pipe = find_idle_secondary_pipe(res_ctx, pool);
|
||||
|
||||
if (!head_pipe)
|
||||
if (!head_pipe) {
|
||||
ASSERT(0);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!idle_pipe)
|
||||
return false;
|
||||
return NULL;
|
||||
|
||||
idle_pipe->stream = head_pipe->stream;
|
||||
idle_pipe->stream_res.tg = head_pipe->stream_res.tg;
|
||||
|
|
Loading…
Reference in New Issue