[Intel-gfx] [PATCH 03/13] drm/i915: Don't copy the DP source rates arrays

Todd Previte tprevite at gmail.com
Fri Mar 13 16:04:23 PDT 2015



On 3/12/2015 8:10 AM, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> The source rates don't change, so we can just point the caller at the
> const arrays.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>   drivers/gpu/drm/i915/intel_dp.c | 24 ++++++++++--------------
>   1 file changed, 10 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index d638f5e..537f1d0 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -1157,22 +1157,18 @@ intel_read_sink_rates(struct intel_dp *intel_dp, int *sink_rates)
>   }
>   
>   static int
> -intel_read_source_rates(struct intel_dp *intel_dp, int *source_rates)
> +intel_dp_source_rates(struct intel_dp *intel_dp, const int **source_rates)
>   {
>   	struct drm_device *dev = intel_dp_to_dev(intel_dp);
> -	int i;
> -	int max_default_rate;
>   
> -	if (INTEL_INFO(dev)->gen >= 9 && intel_dp->supported_rates[0]) {
> -		for (i = 0; i < ARRAY_SIZE(gen9_rates); ++i)
> -			source_rates[i] = gen9_rates[i];
> -	} else {
> -		/* Index of the max_link_bw supported + 1 */
> -		max_default_rate = (intel_dp_max_link_bw(intel_dp) >> 3) + 1;
> -		for (i = 0; i < max_default_rate; ++i)
> -			source_rates[i] = default_rates[i];
> +	if (INTEL_INFO(dev)->gen >= 9) {
> +		*source_rates = gen9_rates;
> +		return ARRAY_SIZE(gen9_rates);
>   	}
> -	return i;
> +
> +	*source_rates = default_rates;
> +
> +	return (intel_dp_max_link_bw(intel_dp) >> 3) + 1;
>   }
>   
>   static void
> @@ -1269,12 +1265,12 @@ intel_dp_compute_config(struct intel_encoder *encoder,
>   	int link_avail, link_clock;
>   	int sink_rates[8];
>   	int supported_rates[8] = {0};
> -	int source_rates[8];
> +	const int *source_rates;
>   	int source_len, sink_len, supported_len;
>   
>   	sink_len = intel_read_sink_rates(intel_dp, sink_rates);
>   
> -	source_len = intel_read_source_rates(intel_dp, source_rates);
> +	source_len = intel_dp_source_rates(intel_dp, &source_rates);
>   
>   	supported_len = intel_supported_rates(source_rates, source_len,
>   				sink_rates, sink_len, supported_rates);
Looks like it's good to go.

Reviewed-by: Todd Previte <tprevite at gmail.com>



More information about the Intel-gfx mailing list