Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c8a8f847 authored by Eduardo Valentin's avatar Eduardo Valentin Committed by Greg Kroah-Hartman
Browse files

staging: omap-thermal: Remove double conv_table reference



This patch removes from data structure the double reference of
the conversion table. It keeps the reference coming from bandgap
data definition. The patch also adapts the code accordingly.

Signed-off-by: default avatarEduardo Valentin <eduardo.valentin@ti.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent efba1194
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -179,7 +179,7 @@ int adc_to_temp_conversion(struct omap_bandgap *bg_ptr, int id, int adc_val,
	if (adc_val < ts_data->adc_start_val || adc_val > ts_data->adc_end_val)
		return -ERANGE;

	*t = bg_ptr->conv_table[adc_val - ts_data->adc_start_val];
	*t = bg_ptr->conf->conv_table[adc_val - ts_data->adc_start_val];

	return 0;
}
@@ -188,17 +188,18 @@ static int temp_to_adc_conversion(long temp, struct omap_bandgap *bg_ptr, int i,
				  int *adc)
{
	struct temp_sensor_data *ts_data = bg_ptr->conf->sensors[i].ts_data;
	const int *conv_table = bg_ptr->conf->conv_table;
	int high, low, mid;

	low = 0;
	high = ts_data->adc_end_val - ts_data->adc_start_val;
	mid = (high + low) / 2;

	if (temp < bg_ptr->conv_table[low] || temp > bg_ptr->conv_table[high])
	if (temp < conv_table[low] || temp > conv_table[high])
		return -EINVAL;

	while (low < high) {
		if (temp < bg_ptr->conv_table[mid])
		if (temp < conv_table[mid])
			high = mid - 1;
		else
			low = mid + 1;
@@ -911,7 +912,6 @@ int omap_bandgap_probe(struct platform_device *pdev)
		goto free_irqs;
	}

	bg_ptr->conv_table = bg_ptr->conf->conv_table;
	for (i = 0; i < bg_ptr->conf->sensor_count; i++) {
		struct temp_sensor_registers *tsr;
		u32 val;
+0 −1
Original line number Diff line number Diff line
@@ -369,7 +369,6 @@ struct omap_bandgap {
	struct omap_bandgap_data	*conf;
	struct clk			*fclock;
	struct clk			*div_clk;
	const int			*conv_table;
	struct mutex			bg_mutex; /* Mutex for irq and PM */
	int				irq;
	int				tshut_gpio;