Skip to contentSkip to conversation

amdgpu/dc: make timing generator constructor return void.

PATCH In review Dave Airlie 2 participants 7 messages Sep 29, 2017 2 messages not in the archive

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/6 amdgpu/dc: make timing generator constructor return void.

From: Dave Airlie <[email protected]>

This can't fail as is.

---
 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c         | 9 ++-------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c         | 8 ++------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c | 7 +------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.h | 2 +-
 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c         | 8 ++------
 5 files changed, 8 insertions(+), 26 deletions(-)
drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +2 -7
index 9a75bde..6765162 100644
@@ -375,13 +375,8 @@ static struct timing_generator *dce100_timing_generator_create(
 	if (!tg110)
 		return NULL;
 
-	if (dce110_timing_generator_construct(tg110, ctx, instance,
-			offsets))
-		return &tg110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(tg110);
-	return NULL;
+	dce110_timing_generator_construct(tg110, ctx, instance, offsets);
+	return &tg110->base;
 }
 
 static struct stream_encoder *dce100_stream_encoder_create(
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +2 -6
index 787e20e..3d91f2a 100644
@@ -410,12 +410,8 @@ static struct timing_generator *dce110_timing_generator_create(
 	if (!tg110)
 		return NULL;
 
-	if (dce110_timing_generator_construct(tg110, ctx, instance, offsets))
-		return &tg110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(tg110);
-	return NULL;
+	dce110_timing_generator_construct(tg110, ctx, instance, offsets);
+	return &tg110->base;
 }
 
 static struct stream_encoder *dce110_stream_encoder_create(
drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c +1 -6
index 7f93d6d..bcd544d 100644
@@ -1941,15 +1941,12 @@ static const struct timing_generator_funcs dce110_tg_funcs = {
 		.arm_vert_intr = dce110_arm_vert_intr,
 };
 
-bool dce110_timing_generator_construct(
+void dce110_timing_generator_construct(
 	struct dce110_timing_generator *tg110,
 	struct dc_context *ctx,
 	uint32_t instance,
 	const struct dce110_timing_generator_offsets *offsets)
 {
-	if (!tg110)
-		return false;
-
 	tg110->controller_id = CONTROLLER_ID_D0 + instance;
 	tg110->base.inst = instance;
 
@@ -1966,6 +1963,4 @@ bool dce110_timing_generator_construct(
 	tg110->min_h_blank = 56;
 	tg110->min_h_front_porch = 4;
 	tg110->min_h_back_porch = 4;
-
-	return true;
 }
drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.h +1 -1
index a5d63c6..bd8d0ab 100644
@@ -118,7 +118,7 @@ struct dce110_timing_generator {
 #define DCE110TG_FROM_TG(tg)\
 	container_of(tg, struct dce110_timing_generator, base)
 
-bool dce110_timing_generator_construct(
+void dce110_timing_generator_construct(
 	struct dce110_timing_generator *tg,
 	struct dc_context *ctx,
 	uint32_t instance,
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +2 -6
index 4e2ed34..a06a685 100644
@@ -415,12 +415,8 @@ static struct timing_generator *dce112_timing_generator_create(
 	if (!tg110)
 		return NULL;
 
-	if (dce110_timing_generator_construct(tg110, ctx, instance, offsets))
-		return &tg110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(tg110);
-	return NULL;
+	dce110_timing_generator_construct(tg110, ctx, instance, offsets);
+	return &tg110->base;
 }
 
 static struct stream_encoder *dce112_stream_encoder_create(
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

A message that is not in the archive (sent off-list or not yet received): 20170929031600.9312-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org

#2 lore raw

PATCH 2/6 amdgpu/dc: make stream encoder constructor return void.

From: Dave Airlie <[email protected]>

The checks weren't useful here really.

---
 drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.c |  9 +--------
 drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.h |  2 +-
 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c | 11 +++--------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 12 ++++--------
 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 14 +++++---------
 drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 12 ++++--------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c   | 12 ++++--------
 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c   | 12 ++++--------
 8 files changed, 26 insertions(+), 58 deletions(-)
drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.c +1 -8
index 532c6e6..b2add58 100644
@@ -1605,7 +1605,7 @@ static const struct stream_encoder_funcs dce110_str_enc_funcs = {
 
 };
 
-bool dce110_stream_encoder_construct(
+void dce110_stream_encoder_construct(
 	struct dce110_stream_encoder *enc110,
 	struct dc_context *ctx,
 	struct dc_bios *bp,
@@ -1614,11 +1614,6 @@ bool dce110_stream_encoder_construct(
 	const struct dce_stream_encoder_shift *se_shift,
 	const struct dce_stream_encoder_mask *se_mask)
 {
-	if (!enc110)
-		return false;
-	if (!bp)
-		return false;
-
 	enc110->base.funcs = &dce110_str_enc_funcs;
 	enc110->base.ctx = ctx;
 	enc110->base.id = eng_id;
@@ -1626,6 +1621,4 @@ bool dce110_stream_encoder_construct(
 	enc110->regs = regs;
 	enc110->se_shift = se_shift;
 	enc110->se_mask = se_mask;
-
-	return true;
 }
drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.h +1 -1
index ff8ca12..6c28229 100644
@@ -697,7 +697,7 @@ struct dce110_stream_encoder {
 	const struct dce_stream_encoder_mask *se_mask;
 };
 
-bool dce110_stream_encoder_construct(
+void dce110_stream_encoder_construct(
 	struct dce110_stream_encoder *enc110,
 	struct dc_context *ctx,
 	struct dc_bios *bp,
drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +3 -8
index 6765162..7596133 100644
@@ -389,14 +389,9 @@ static struct stream_encoder *dce100_stream_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id], &se_shift, &se_mask);
+	return &enc110->base;
 }
 
 #define SRII(reg_name, block, id)\
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +4 -8
index 3d91f2a..9faf2fe 100644
@@ -424,14 +424,10 @@ static struct stream_encoder *dce110_stream_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id],
+					&se_shift, &se_mask);
+	return &enc110->base;
 }
 
 #define SRII(reg_name, block, id)\
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +5 -9
index a06a685..0011dd7 100644
@@ -428,15 +428,11 @@ static struct stream_encoder *dce112_stream_encoder_create(
 
 	if (!enc110)
 		return NULL;
-
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id],
+					&se_shift, &se_mask);
+	return &enc110->base;
 }
 
 #define SRII(reg_name, block, id)\
drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +4 -8
index a6f93a42..a631939 100644
@@ -585,14 +585,10 @@ static struct stream_encoder *dce120_stream_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id],
+					&se_shift, &se_mask);
+	return &enc110->base;
 }
 
 #define SRII(reg_name, block, id)\
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +4 -8
index 170509a..0b309ac 100644
@@ -441,14 +441,10 @@ static struct stream_encoder *dce80_stream_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id],
+					&se_shift, &se_mask);
+	return &enc110->base;
 }
 
 #define SRII(reg_name, block, id)\
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c +4 -8
index e21ba8c..5d6dd7f 100644
@@ -627,14 +627,10 @@ static struct stream_encoder *dcn10_stream_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_stream_encoder_construct(
-			enc110, ctx, ctx->dc_bios, eng_id,
-			&stream_enc_regs[eng_id], &se_shift, &se_mask))
-		return &enc110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_stream_encoder_construct(enc110, ctx, ctx->dc_bios, eng_id,
+					&stream_enc_regs[eng_id],
+					&se_shift, &se_mask);
+	return &enc110->base;
 }
 
 static const struct dce_hwseq_registers hwseq_reg = {
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
#3 lore raw

PATCH 3/6 amdgpu/dc: make link encoder construct void.

In reply to a message not in the archive

From: Dave Airlie <[email protected]>

This only ever returned true.

---
 .../gpu/drm/amd/display/dc/dce/dce_link_encoder.c   |  4 +---
 .../gpu/drm/amd/display/dc/dce/dce_link_encoder.h   |  2 +-
 .../gpu/drm/amd/display/dc/dce100/dce100_resource.c | 21 +++++++--------------
 .../gpu/drm/amd/display/dc/dce110/dce110_resource.c | 21 +++++++--------------
 .../gpu/drm/amd/display/dc/dce112/dce112_resource.c | 21 +++++++--------------
 .../gpu/drm/amd/display/dc/dce120/dce120_resource.c | 20 +++++++-------------
 .../gpu/drm/amd/display/dc/dce80/dce80_resource.c   | 21 +++++++--------------
 .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c   | 20 +++++++-------------
 8 files changed, 44 insertions(+), 86 deletions(-)
drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c +1 -3
index 2ce730d..37aeddf 100644
@@ -914,7 +914,7 @@ bool dce110_link_encoder_validate_dp_output(
 	return false;
 }
 
-bool dce110_link_encoder_construct(
+void dce110_link_encoder_construct(
 	struct dce110_link_encoder *enc110,
 	const struct encoder_init_data *init_data,
 	const struct encoder_feature_support *enc_features,
@@ -1013,8 +1013,6 @@ bool dce110_link_encoder_construct(
 				bp_cap_info.DP_HBR3_EN;
 		enc110->base.features.flags.bits.HDMI_6GB_EN = bp_cap_info.HDMI_6GB_EN;
 	}
-
-	return true;
 }
 
 bool dce110_link_encoder_validate_output_with_stream(
drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h +1 -1
index 5960fb9..be0a45b 100644
@@ -168,7 +168,7 @@ struct dce110_link_encoder {
 };
 
 
-bool dce110_link_encoder_construct(
+void dce110_link_encoder_construct(
 	struct dce110_link_encoder *enc110,
 	const struct encoder_init_data *init_data,
 	const struct encoder_feature_support *enc_features,
drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +7 -14
index 7596133..0084645 100644
@@ -528,20 +528,13 @@ struct link_encoder *dce100_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
+	return &enc110->base;
 }
 
 struct output_pixel_processor *dce100_opp_create(
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +7 -14
index 9faf2fe..2c24f2b 100644
@@ -567,20 +567,13 @@ static struct link_encoder *dce110_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
+	return &enc110->base;
 }
 
 static struct output_pixel_processor *dce110_opp_create(
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +7 -14
index 0011dd7..7aac8fd 100644
@@ -552,20 +552,13 @@ struct link_encoder *dce112_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
+	return &enc110->base;
 }
 
 static struct input_pixel_processor *dce112_ipp_create(
drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +7 -13
index a631939..7de99c4 100644
@@ -544,20 +544,14 @@ static struct link_encoder *dce120_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
 
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	return &enc110->base;
 }
 
 static struct input_pixel_processor *dce120_ipp_create(
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +7 -14
index 0b309ac..3603ae9 100644
@@ -567,20 +567,13 @@ struct link_encoder *dce80_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
+	return &enc110->base;
 }
 
 struct clock_source *dce80_clock_source_create(
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c +7 -13
index 5d6dd7f..c2df57b 100644
@@ -563,20 +563,14 @@ struct link_encoder *dcn10_link_encoder_create(
 	if (!enc110)
 		return NULL;
 
-	if (dce110_link_encoder_construct(
-			enc110,
-			enc_init_data,
-			&link_enc_feature,
-			&link_enc_regs[enc_init_data->transmitter],
-			&link_enc_aux_regs[enc_init_data->channel - 1],
-			&link_enc_hpd_regs[enc_init_data->hpd_source])) {
-
-		return &enc110->base;
-	}
+	dce110_link_encoder_construct(enc110,
+				      enc_init_data,
+				      &link_enc_feature,
+				      &link_enc_regs[enc_init_data->transmitter],
+				      &link_enc_aux_regs[enc_init_data->channel - 1],
+				      &link_enc_hpd_regs[enc_init_data->hpd_source]);
 
-	BREAK_TO_DEBUGGER();
-	kfree(enc110);
-	return NULL;
+	return &enc110->base;
 }
 
 struct clock_source *dcn10_clock_source_create(
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
#4 lore raw

PATCH 4/6 amdgpu/dc: make opp construct void.

In reply to a message not in the archive

From: Dave Airlie <[email protected]>

This doesn't return anything except true.

---
 drivers/gpu/drm/amd/display/dc/dce/dce_opp.c            |  4 +---
 drivers/gpu/drm/amd/display/dc/dce/dce_opp.h            |  2 +-
 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c | 10 +++-------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 10 +++-------
 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 10 +++-------
 drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 10 +++-------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c   | 10 +++-------
 7 files changed, 17 insertions(+), 39 deletions(-)
drivers/gpu/drm/amd/display/dc/dce/dce_opp.c +1 -3
index c0736ae..3931412 100644
@@ -540,7 +540,7 @@ static const struct opp_funcs funcs = {
 	.opp_program_bit_depth_reduction = dce110_opp_program_bit_depth_reduction
 };
 
-bool dce110_opp_construct(struct dce110_opp *opp110,
+void dce110_opp_construct(struct dce110_opp *opp110,
 	struct dc_context *ctx,
 	uint32_t inst,
 	const struct dce_opp_registers *regs,
@@ -556,8 +556,6 @@ bool dce110_opp_construct(struct dce110_opp *opp110,
 	opp110->regs = regs;
 	opp110->opp_shift = opp_shift;
 	opp110->opp_mask = opp_mask;
-
-	return true;
 }
 
 void dce110_opp_destroy(struct output_pixel_processor **opp)
drivers/gpu/drm/amd/display/dc/dce/dce_opp.h +1 -1
index 0874c22..2ab0147 100644
@@ -272,7 +272,7 @@ struct dce110_opp {
 	const struct dce_opp_mask *opp_mask;
 };
 
-bool dce110_opp_construct(struct dce110_opp *opp110,
+void dce110_opp_construct(struct dce110_opp *opp110,
 	struct dc_context *ctx,
 	uint32_t inst,
 	const struct dce_opp_registers *regs,
drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +3 -7
index 0084645..729d82e 100644
@@ -547,13 +547,9 @@ struct output_pixel_processor *dce100_opp_create(
 	if (!opp)
 		return NULL;
 
-	if (dce110_opp_construct(opp,
-			ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask))
-		return &opp->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(opp);
-	return NULL;
+	dce110_opp_construct(opp,
+			     ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask);
+	return &opp->base;
 }
 
 struct clock_source *dce100_clock_source_create(
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +3 -7
index 2c24f2b..8e3f365 100644
@@ -586,13 +586,9 @@ static struct output_pixel_processor *dce110_opp_create(
 	if (!opp)
 		return NULL;
 
-	if (dce110_opp_construct(opp,
-				ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask))
-		return &opp->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(opp);
-	return NULL;
+	dce110_opp_construct(opp,
+			     ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask);
+	return &opp->base;
 }
 
 struct clock_source *dce110_clock_source_create(
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +3 -7
index 7aac8fd..3cb18ce 100644
@@ -586,13 +586,9 @@ struct output_pixel_processor *dce112_opp_create(
 	if (!opp)
 		return NULL;
 
-	if (dce110_opp_construct(opp,
-			ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask))
-		return &opp->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(opp);
-	return NULL;
+	dce110_opp_construct(opp,
+			     ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask);
+	return &opp->base;
 }
 
 struct clock_source *dce112_clock_source_create(
drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +3 -7
index 7de99c4..ea23437 100644
@@ -356,13 +356,9 @@ struct output_pixel_processor *dce120_opp_create(
 	if (!opp)
 		return NULL;
 
-	if (dce110_opp_construct(opp,
-			ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask))
-		return &opp->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(opp);
-	return NULL;
+	dce110_opp_construct(opp,
+			     ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask);
+	return &opp->base;
 }
 
 static const struct bios_registers bios_regs = {
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +3 -7
index 3603ae9..71f265b6 100644
@@ -422,13 +422,9 @@ static struct output_pixel_processor *dce80_opp_create(
 	if (!opp)
 		return NULL;
 
-	if (dce110_opp_construct(opp,
-			ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask))
-		return &opp->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(opp);
-	return NULL;
+	dce110_opp_construct(opp,
+			     ctx, inst, &opp_regs[inst], &opp_shift, &opp_mask);
+	return &opp->base;
 }
 
 static struct stream_encoder *dce80_stream_encoder_create(
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
#5 lore raw

PATCH 5/6 amdgpu/dc: make dce transform constructor void

In reply to a message not in the archive

From: Dave Airlie <[email protected]>

This never returns anything but true.

---
 drivers/gpu/drm/amd/display/dc/dce/dce_transform.c      |  4 +---
 drivers/gpu/drm/amd/display/dc/dce/dce_transform.h      |  2 +-
 drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c | 11 +++--------
 drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 10 +++-------
 drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 13 ++++---------
 drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 13 ++++---------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c   | 13 ++++---------
 7 files changed, 20 insertions(+), 46 deletions(-)
drivers/gpu/drm/amd/display/dc/dce/dce_transform.c +1 -3
index a8f60d7..c40d2e9 100644
@@ -1437,7 +1437,7 @@ static const struct transform_funcs dce_transform_funcs = {
 /* Constructor, Destructor               */
 /*****************************************/
 
-bool dce_transform_construct(
+void dce_transform_construct(
 	struct dce_transform *xfm_dce,
 	struct dc_context *ctx,
 	uint32_t inst,
@@ -1462,6 +1462,4 @@ bool dce_transform_construct(
 
 	xfm_dce->lb_bits_per_entry = LB_BITS_PER_ENTRY;
 	xfm_dce->lb_memory_size = LB_TOTAL_NUMBER_OF_ENTRIES; /*0x6B0*/
-
-	return true;
 }
drivers/gpu/drm/amd/display/dc/dce/dce_transform.h +1 -1
index 805bb9c..e1f1e51 100644
@@ -481,7 +481,7 @@ struct dce_transform {
 	bool prescaler_on;
 };
 
-bool dce_transform_construct(struct dce_transform *xfm_dce,
+void dce_transform_construct(struct dce_transform *xfm_dce,
 	struct dc_context *ctx,
 	uint32_t inst,
 	const struct dce_transform_registers *regs,
drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +3 -8
index 729d82e..1caf298 100644
@@ -486,14 +486,9 @@ static struct transform *dce100_transform_create(
 	if (!transform)
 		return NULL;
 
-	if (dce_transform_construct(transform, ctx, inst,
-			&xfm_regs[inst], &xfm_shift, &xfm_mask)) {
-		return &transform->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(transform);
-	return NULL;
+	dce_transform_construct(transform, ctx, inst,
+				&xfm_regs[inst], &xfm_shift, &xfm_mask);
+	return &transform->base;
 }
 
 static struct input_pixel_processor *dce100_ipp_create(
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +3 -7
index 8e3f365..45c5fac 100644
@@ -526,13 +526,9 @@ static struct transform *dce110_transform_create(
 	if (!transform)
 		return NULL;
 
-	if (dce_transform_construct(transform, ctx, inst,
-			&xfm_regs[inst], &xfm_shift, &xfm_mask))
-		return &transform->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(transform);
-	return NULL;
+	dce_transform_construct(transform, ctx, inst,
+				&xfm_regs[inst], &xfm_shift, &xfm_mask);
+	return &transform->base;
 }
 
 static struct input_pixel_processor *dce110_ipp_create(
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +4 -9
index 3cb18ce..251e4a2 100644
@@ -521,15 +521,10 @@ static struct transform *dce112_transform_create(
 	if (!transform)
 		return NULL;
 
-	if (dce_transform_construct(transform, ctx, inst,
-			&xfm_regs[inst], &xfm_shift, &xfm_mask)) {
-		transform->lb_memory_size = 0x1404; /*5124*/
-		return &transform->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(transform);
-	return NULL;
+	dce_transform_construct(transform, ctx, inst,
+				&xfm_regs[inst], &xfm_shift, &xfm_mask);
+	transform->lb_memory_size = 0x1404; /*5124*/
+	return &transform->base;
 }
 
 static const struct encoder_feature_support link_enc_feature = {
drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +4 -9
index ea23437..13d75df 100644
@@ -662,15 +662,10 @@ static struct transform *dce120_transform_create(
 	if (!transform)
 		return NULL;
 
-	if (dce_transform_construct(transform, ctx, inst,
-			&xfm_regs[inst], &xfm_shift, &xfm_mask)) {
-		transform->lb_memory_size = 0x1404; /*5124*/
-		return &transform->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(transform);
-	return NULL;
+	dce_transform_construct(transform, ctx, inst,
+				&xfm_regs[inst], &xfm_shift, &xfm_mask);
+	transform->lb_memory_size = 0x1404; /*5124*/
+	return &transform->base;
 }
 
 static void dce120_destroy_resource_pool(struct resource_pool **pool)
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +4 -9
index 71f265b6..db8afb6 100644
@@ -535,15 +535,10 @@ static struct transform *dce80_transform_create(
 	if (!transform)
 		return NULL;
 
-	if (dce_transform_construct(transform, ctx, inst,
-			&xfm_regs[inst], &xfm_shift, &xfm_mask)) {
-		transform->prescaler_on = false;
-		return &transform->base;
-	}
-
-	BREAK_TO_DEBUGGER();
-	kfree(transform);
-	return NULL;
+	dce_transform_construct(transform, ctx, inst,
+				&xfm_regs[inst], &xfm_shift, &xfm_mask);
+	transform->prescaler_on = false;
+	return &transform->base;
 }
 
 static const struct encoder_feature_support link_enc_feature = {
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
#6 lore raw

PATCH 6/6 amdgpu/dc: make dce80 timing generator construct return void.

In reply to a message not in the archive

From: Dave Airlie <[email protected]>

---
 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c         | 8 ++------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.c | 7 +------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h | 2 +-
 3 files changed, 4 insertions(+), 13 deletions(-)
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +2 -6
index db8afb6..5e00ca6 100644
@@ -404,12 +404,8 @@ static struct timing_generator *dce80_timing_generator_create(
 	if (!tg110)
 		return NULL;
 
-	if (dce80_timing_generator_construct(tg110, ctx, instance, offsets))
-		return &tg110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(tg110);
-	return NULL;
+	dce80_timing_generator_construct(tg110, ctx, instance, offsets);
+	return &tg110->base;
 }
 
 static struct output_pixel_processor *dce80_opp_create(
drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.c +1 -6
index 179a6d6..2658948 100644
@@ -152,15 +152,12 @@ static const struct timing_generator_funcs dce80_tg_funcs = {
 				dce80_timing_generator_enable_advanced_request,
 };
 
-bool dce80_timing_generator_construct(
+void dce80_timing_generator_construct(
 	struct dce110_timing_generator *tg110,
 	struct dc_context *ctx,
 	uint32_t instance,
 	const struct dce110_timing_generator_offsets *offsets)
 {
-	if (!tg110)
-		return false;
-
 	tg110->controller_id = CONTROLLER_ID_D0 + instance;
 	tg110->base.inst = instance;
 	tg110->offsets = *offsets;
@@ -177,8 +174,6 @@ bool dce80_timing_generator_construct(
 	tg110->min_h_blank = 56;
 	tg110->min_h_front_porch = 4;
 	tg110->min_h_back_porch = 4;
-
-	return true;
 }
 
 void dce80_timing_generator_enable_advanced_request(
drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h +1 -1
index 6e4722a..9cebb24 100644
@@ -30,7 +30,7 @@
 #include "../include/grph_object_id.h"
 
 /* DCE8.0 implementation inherits from DCE11.0 */
-bool dce80_timing_generator_construct(
+void dce80_timing_generator_construct(
 	struct dce110_timing_generator *tg,
 	struct dc_context *ctx,
 	uint32_t instance,
Signature · 6 lines
2.9.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

A message that is not in the archive (sent off-list or not yet received): 20170929031600.9312-6-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org

Reviewed-by
#8 lore raw

Re: [PATCH 6/6] amdgpu/dc: make dce80 timing generator construct return void.

Quoted 3 lines · Dave Airlie

From: Dave Airlie <[email protected]>

Series is

Harry

Quoted 61 lines
---
 drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c         | 8 ++------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.c | 7 +------
 drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h | 2 +-
 3 files changed, 4 insertions(+), 13 deletions(-)
drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +2 -6
index db8afb6..5e00ca6 100644
@@ -404,12 +404,8 @@ static struct timing_generator *dce80_timing_generator_create(
 	if (!tg110)
 		return NULL;
 
-	if (dce80_timing_generator_construct(tg110, ctx, instance, offsets))
-		return &tg110->base;
-
-	BREAK_TO_DEBUGGER();
-	kfree(tg110);
-	return NULL;
+	dce80_timing_generator_construct(tg110, ctx, instance, offsets);
+	return &tg110->base;
 }
 
 static struct output_pixel_processor *dce80_opp_create(
drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.c +1 -6
index 179a6d6..2658948 100644
@@ -152,15 +152,12 @@ static const struct timing_generator_funcs dce80_tg_funcs = {
 				dce80_timing_generator_enable_advanced_request,
 };
 
-bool dce80_timing_generator_construct(
+void dce80_timing_generator_construct(
 	struct dce110_timing_generator *tg110,
 	struct dc_context *ctx,
 	uint32_t instance,
 	const struct dce110_timing_generator_offsets *offsets)
 {
-	if (!tg110)
-		return false;
-
 	tg110->controller_id = CONTROLLER_ID_D0 + instance;
 	tg110->base.inst = instance;
 	tg110->offsets = *offsets;
@@ -177,8 +174,6 @@ bool dce80_timing_generator_construct(
 	tg110->min_h_blank = 56;
 	tg110->min_h_front_porch = 4;
 	tg110->min_h_back_porch = 4;
-
-	return true;
 }
 
 void dce80_timing_generator_enable_advanced_request(
drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h +0 -0
index 6e4722a..9cebb24 100644

drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h line 36

Quoted 8 lines
drivers/gpu/drm/amd/display/dc/dce80/dce80_timing_generator.h +1 -1
@@ -30,7 +30,7 @@
 #include "../include/grph_object_id.h"
 
 /* DCE8.0 implementation inherits from DCE11.0 */
-bool dce80_timing_generator_construct(
+void dce80_timing_generator_construct(
 	struct dce110_timing_generator *tg,
 	struct dc_context *ctx,
 	uint32_t instance,

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx