drm/i915/dp: Simplify input BPP checks in intel_dp_dsc_compute_pipe_bpp()
authorJani Nikula <jani.nikula@intel.com>
Fri, 31 Jan 2025 12:50:03 +0000 (14:50 +0200)
committerJani Nikula <jani.nikula@intel.com>
Mon, 3 Feb 2025 14:31:39 +0000 (16:31 +0200)
Drop the extra local variables and simplify the conditions. We don't
have to try to special case the loop condition and break in the validity
checks.

Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/5559b14d6af4e001677f23454d6bd8b3606b3d7a.1738327620.git.jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_dp.c

index 8175ac0eb80257482c0893309345763afce42ce1..22b69c02c13eb5e5ae917f7a2a58a2518db3b9c4 100644 (file)
@@ -2202,8 +2202,6 @@ static int intel_dp_dsc_compute_pipe_bpp(struct intel_dp *intel_dp,
 {
        const struct intel_connector *connector =
                to_intel_connector(conn_state->connector);
-       int dsc_max_bpp;
-       int dsc_min_bpp;
        u8 dsc_bpc[3] = {};
        int forced_bpp, pipe_bpp;
        int num_bpc, i, ret;
@@ -2219,9 +2217,6 @@ static int intel_dp_dsc_compute_pipe_bpp(struct intel_dp *intel_dp,
                }
        }
 
-       dsc_max_bpp = limits->pipe.max_bpp;
-       dsc_min_bpp = limits->pipe.min_bpp;
-
        /*
         * Get the maximum DSC bpc that will be supported by any valid
         * link configuration and compressed bpp.
@@ -2229,10 +2224,9 @@ static int intel_dp_dsc_compute_pipe_bpp(struct intel_dp *intel_dp,
        num_bpc = drm_dp_dsc_sink_supported_input_bpcs(connector->dp.dsc_dpcd, dsc_bpc);
        for (i = 0; i < num_bpc; i++) {
                pipe_bpp = dsc_bpc[i] * 3;
-               if (pipe_bpp < dsc_min_bpp)
-                       break;
-               if (pipe_bpp > dsc_max_bpp)
+               if (pipe_bpp < limits->pipe.min_bpp || pipe_bpp > limits->pipe.max_bpp)
                        continue;
+
                ret = dsc_compute_compressed_bpp(intel_dp, connector, pipe_config,
                                                 limits, pipe_bpp, timeslots);
                if (ret == 0) {