On Thu, Dec 19, 2024 at 11:33:53PM +0200, Jani Nikula wrote: > The callers of mst_stream_find_vcpi_slots_for_bpp() don't need the > returned slots for anything. On the contrary, they need to jump through > hoops to just distinguish between success and failure. Just return 0 > instead of slots from mst_stream_find_vcpi_slots_for_bpp() for success, > and simplify the callers. > > There's a pointless ret local variable that we can drop in the process. > > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> Reviewed-by: Imre Deak <imre.deak@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_dp_mst.c | 52 +++++++-------------- > 1 file changed, 18 insertions(+), 34 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c > index f52f9c968adb..f7b91cf32b5b 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c > +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c > @@ -226,7 +226,6 @@ static int mst_stream_find_vcpi_slots_for_bpp(struct intel_dp *intel_dp, > int bpp, slots = -EINVAL; > int dsc_slice_count = 0; > int max_dpt_bpp; > - int ret = 0; > > mst_state = drm_atomic_get_mst_topology_state(state, &intel_dp->mst_mgr); > if (IS_ERR(mst_state)) > @@ -340,23 +339,21 @@ static int mst_stream_find_vcpi_slots_for_bpp(struct intel_dp *intel_dp, > } > } > > - /* We failed to find a proper bpp/timeslots, return error */ > - if (ret) > - slots = ret; > - > if (slots < 0) { > drm_dbg_kms(display->drm, "failed finding vcpi slots:%d\n", > slots); > - } else { > - if (!dsc) > - crtc_state->pipe_bpp = bpp; > - else > - crtc_state->dsc.compressed_bpp_x16 = fxp_q4_from_int(bpp); > - drm_dbg_kms(display->drm, "Got %d slots for pipe bpp %d dsc %d\n", > - slots, bpp, dsc); > + return slots; > } > > - return slots; > + if (!dsc) > + crtc_state->pipe_bpp = bpp; > + else > + crtc_state->dsc.compressed_bpp_x16 = fxp_q4_from_int(bpp); > + > + drm_dbg_kms(display->drm, "Got %d slots for pipe bpp %d dsc %d\n", > + slots, bpp, dsc); > + > + return 0; > } > > static int mst_stream_compute_link_config(struct intel_dp *intel_dp, > @@ -364,22 +361,15 @@ static int mst_stream_compute_link_config(struct intel_dp *intel_dp, > struct drm_connector_state *conn_state, > struct link_config_limits *limits) > { > - int slots = -EINVAL; > - > /* > * FIXME: allocate the BW according to link_bpp, which in the case of > * YUV420 is only half of the pipe bpp value. > */ > - slots = mst_stream_find_vcpi_slots_for_bpp(intel_dp, crtc_state, > - fxp_q4_to_int(limits->link.max_bpp_x16), > - fxp_q4_to_int(limits->link.min_bpp_x16), > - limits, > - conn_state, 2 * 3, false); > - > - if (slots < 0) > - return slots; > - > - return 0; > + return mst_stream_find_vcpi_slots_for_bpp(intel_dp, crtc_state, > + fxp_q4_to_int(limits->link.max_bpp_x16), > + fxp_q4_to_int(limits->link.min_bpp_x16), > + limits, > + conn_state, 2 * 3, false); > } > > static int mst_stream_dsc_compute_link_config(struct intel_dp *intel_dp, > @@ -389,7 +379,6 @@ static int mst_stream_dsc_compute_link_config(struct intel_dp *intel_dp, > { > struct intel_display *display = to_intel_display(intel_dp); > struct intel_connector *connector = to_intel_connector(conn_state->connector); > - int slots = -EINVAL; > int i, num_bpc; > u8 dsc_bpc[3] = {}; > int min_bpp, max_bpp, sink_min_bpp, sink_max_bpp; > @@ -451,14 +440,9 @@ static int mst_stream_dsc_compute_link_config(struct intel_dp *intel_dp, > min_compressed_bpp = intel_dp_dsc_nearest_valid_bpp(display, min_compressed_bpp, > crtc_state->pipe_bpp); > > - slots = mst_stream_find_vcpi_slots_for_bpp(intel_dp, crtc_state, max_compressed_bpp, > - min_compressed_bpp, limits, > - conn_state, 1, true); > - > - if (slots < 0) > - return slots; > - > - return 0; > + return mst_stream_find_vcpi_slots_for_bpp(intel_dp, crtc_state, max_compressed_bpp, > + min_compressed_bpp, limits, > + conn_state, 1, true); > } > > static int mst_stream_update_slots(struct intel_dp *intel_dp, > -- > 2.39.5 >