From: Radhesh Fadnis Date: Wed, 19 Sep 2012 17:07:49 +0000 (+0300) Subject: staging: omap-thermal: bandgap: fix setting of alert thresholds X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=463bf503bdab90bf269ad2a70656fe8536ff4933;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git staging: omap-thermal: bandgap: fix setting of alert thresholds There was an error in check for the valid temperature in function temp_to_adc_conversion. The temperature value was compared with higher limit for less than condition as well, resulting in returning -EINVAL. Corrected the check condition to properly check for lower and higher temperature limits. Signed-off-by: Radhesh Fadnis Signed-off-by: Eduardo Valentin Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/omap-thermal/omap-bandgap.c b/drivers/staging/omap-thermal/omap-bandgap.c index ff93c15d349b..368a2e19b2d4 100644 --- a/drivers/staging/omap-thermal/omap-bandgap.c +++ b/drivers/staging/omap-thermal/omap-bandgap.c @@ -157,7 +157,7 @@ static int temp_to_adc_conversion(long temp, struct omap_bandgap *bg_ptr, int i, high = ts_data->adc_end_val - ts_data->adc_start_val; mid = (high + low) / 2; - if (temp < bg_ptr->conv_table[high] || temp > bg_ptr->conv_table[high]) + if (temp < bg_ptr->conv_table[low] || temp > bg_ptr->conv_table[high]) return -EINVAL; while (low < high) {