lkml.org 
[lkml]   [2021]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH V2 2/3] iio: adc: qcom-vadc-common: add reverse scaling for PMIC5 Gen2 ADC_TM
On Tue, 26 Oct 2021 21:34:34 +0530
Jishnu Prakash <quic_jprakash@quicinc.com> wrote:

> Add reverse scaling function for PMIC5 Gen2 ADC_TM, to convert
> temperature to raw ADC code, for setting thresholds for
> thermistor channels.
>
> Signed-off-by: Jishnu Prakash <quic_jprakash@quicinc.com>
This little utility function looks fine to me.

Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

> ---
> drivers/iio/adc/qcom-vadc-common.c | 11 +++++++++++
> include/linux/iio/adc/qcom-vadc-common.h | 2 ++
> 2 files changed, 13 insertions(+)
>
> diff --git a/drivers/iio/adc/qcom-vadc-common.c b/drivers/iio/adc/qcom-vadc-common.c
> index 1472389..194d7c3 100644
> --- a/drivers/iio/adc/qcom-vadc-common.c
> +++ b/drivers/iio/adc/qcom-vadc-common.c
> @@ -677,6 +677,17 @@ u16 qcom_adc_tm5_temp_volt_scale(unsigned int prescale_ratio,
> }
> EXPORT_SYMBOL(qcom_adc_tm5_temp_volt_scale);
>
> +u16 qcom_adc_tm5_gen2_temp_res_scale(int temp)
> +{
> + int64_t resistance;
> +
> + resistance = qcom_vadc_map_temp_voltage(adcmap7_100k,
> + ARRAY_SIZE(adcmap7_100k), temp);
> +
> + return div64_s64(resistance * RATIO_MAX_ADC7, resistance + R_PU_100K);
> +}
> +EXPORT_SYMBOL(qcom_adc_tm5_gen2_temp_res_scale);
> +
> int qcom_adc5_hw_scale(enum vadc_scale_fn_type scaletype,
> unsigned int prescale_ratio,
> const struct adc5_data *data,
> diff --git a/include/linux/iio/adc/qcom-vadc-common.h b/include/linux/iio/adc/qcom-vadc-common.h
> index 33f60f4..598a5d2 100644
> --- a/include/linux/iio/adc/qcom-vadc-common.h
> +++ b/include/linux/iio/adc/qcom-vadc-common.h
> @@ -161,6 +161,8 @@ int qcom_adc5_hw_scale(enum vadc_scale_fn_type scaletype,
> u16 qcom_adc_tm5_temp_volt_scale(unsigned int prescale_ratio,
> u32 full_scale_code_volt, int temp);
>
> +u16 qcom_adc_tm5_gen2_temp_res_scale(int temp);
> +
> int qcom_adc5_prescaling_from_dt(u32 num, u32 den);
>
> int qcom_adc5_hw_settle_time_from_dt(u32 value, const unsigned int *hw_settle);

\
 
 \ /
  Last update: 2021-10-27 19:49    [W:0.099 / U:0.520 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site