projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3194102
)
drm/i915/dp: return errors from rate_to_index()
author
Jani Nikula
<jani.nikula@intel.com>
Tue, 28 Mar 2017 14:59:02 +0000
(17:59 +0300)
committer
Jani Nikula
<jani.nikula@intel.com>
Thu, 6 Apr 2017 11:33:37 +0000
(14:33 +0300)
We shouldn't silently use the first element if we can't find the rate
we're looking for. Make rate_to_index() more generally useful, and
fallback to the first element in the caller, with a big warning.
Cc: Manasi Navare <manasi.d.navare@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Manasi Navare <manasi.d.navare@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link:
http://patchwork.freedesktop.org/patch/msgid/8a6e83b7bf35da0cbbc703ae157944107ff145be.1490712890.git.jani.nikula@intel.com
drivers/gpu/drm/i915/intel_dp.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/intel_dp.c
b/drivers/gpu/drm/i915/intel_dp.c
index 88c708b07c70f6bf684673238b2f197396364869..0e200a37b75b91b82122e0c73e18793537539b53 100644
(file)
--- a/
drivers/gpu/drm/i915/intel_dp.c
+++ b/
drivers/gpu/drm/i915/intel_dp.c
@@
-1544,9
+1544,9
@@
static int rate_to_index(const int *rates, int len, int rate)
for (i = 0; i < len; i++)
if (rate == rates[i])
-
break
;
+
return i
;
- return
i
;
+ return
-1
;
}
int
@@
-1564,8
+1564,13
@@
intel_dp_max_link_rate(struct intel_dp *intel_dp)
int intel_dp_rate_select(struct intel_dp *intel_dp, int rate)
{
- return rate_to_index(intel_dp->sink_rates, intel_dp->num_sink_rates,
- rate);
+ int i = rate_to_index(intel_dp->sink_rates, intel_dp->num_sink_rates,
+ rate);
+
+ if (WARN_ON(i < 0))
+ i = 0;
+
+ return i;
}
void intel_dp_compute_rate(struct intel_dp *intel_dp, int port_clock,