lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201129131233.4a8f7119@archlinux>
Date:   Sun, 29 Nov 2020 13:12:33 +0000
From:   Jonathan Cameron <jic23@...nel.org>
To:     kholk11@...il.com
Cc:     agross@...nel.org, bjorn.andersson@...aro.org, robh+dt@...nel.org,
        marijns95@...il.com, konradybcio@...il.com,
        martin.botka1@...il.com, linux-arm-msm@...r.kernel.org,
        phone-devel@...r.kernel.org, linux-kernel@...r.kernel.org,
        linux-iio@...r.kernel.org
Subject: Re: [RESEND] [PATCH 1/2] iio: adc: qcom-spmi-vadc: Use right
 ratiometric range for 8998,660,845

On Sat, 26 Sep 2020 19:18:34 +0200
kholk11@...il.com wrote:

> From: AngeloGioacchino Del Regno <kholk11@...il.com>
> 
> The ratiometric range for MSM8998, SDM630/636/660 and SDM845 is 1875mV
> instead of the standard 1800mV: address this by adding a new compatible
> "qcom,spmi-vadc-8998" and assigning the different range to the machines
> declaring this one.
> 
> Signed-off-by: AngeloGioacchino Del Regno <kholk11@...il.com>

@Bjorn

Could you take a quick look at this pair of patches.  It's been sat in
my queue waiting for appropriate review for rather too long!
(mainly because I've been rather lax in checking on status of older
series really - sorry about that :(

Thanks

Jonathan

> ---
>  drivers/iio/adc/qcom-spmi-vadc.c   | 10 +++++++++-
>  drivers/iio/adc/qcom-vadc-common.h |  1 +
>  2 files changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/adc/qcom-spmi-vadc.c b/drivers/iio/adc/qcom-spmi-vadc.c
> index b0388f8a69f4..59a94ea7bf78 100644
> --- a/drivers/iio/adc/qcom-spmi-vadc.c
> +++ b/drivers/iio/adc/qcom-spmi-vadc.c
> @@ -101,6 +101,7 @@ struct vadc_channel_prop {
>   * @dev: pointer to struct device.
>   * @base: base address for the ADC peripheral.
>   * @nchannels: number of VADC channels.
> + * @ratio_range: ratiometric range for ref points.
>   * @chan_props: array of VADC channel properties.
>   * @iio_chans: array of IIO channels specification.
>   * @are_ref_measured: are reference points measured.
> @@ -114,6 +115,7 @@ struct vadc_priv {
>  	struct device		 *dev;
>  	u16			 base;
>  	unsigned int		 nchannels;
> +	unsigned int		 ratio_range;
>  	struct vadc_channel_prop *chan_props;
>  	struct iio_chan_spec	 *iio_chans;
>  	bool			 are_ref_measured;
> @@ -355,7 +357,7 @@ static int vadc_measure_ref_points(struct vadc_priv *vadc)
>  	u16 read_1, read_2;
>  	int ret;
>  
> -	vadc->graph[VADC_CALIB_RATIOMETRIC].dx = VADC_RATIOMETRIC_RANGE;
> +	vadc->graph[VADC_CALIB_RATIOMETRIC].dx = vadc->ratio_range;
>  	vadc->graph[VADC_CALIB_ABSOLUTE].dx = VADC_ABSOLUTE_RANGE_UV;
>  
>  	prop = vadc_get_channel(vadc, VADC_REF_1250MV);
> @@ -885,6 +887,11 @@ static int vadc_probe(struct platform_device *pdev)
>  	if (ret)
>  		return ret;
>  
> +	if (of_device_is_compatible(node, "qcom,spmi-vadc-8998"))
> +		vadc->ratio_range = VADC_RATIOMETRIC_RANGE_8998;
> +	else
> +		vadc->ratio_range = VADC_RATIOMETRIC_RANGE;
> +
>  	irq_eoc = platform_get_irq(pdev, 0);
>  	if (irq_eoc < 0) {
>  		if (irq_eoc == -EPROBE_DEFER || irq_eoc == -EINVAL)
> @@ -918,6 +925,7 @@ static int vadc_probe(struct platform_device *pdev)
>  
>  static const struct of_device_id vadc_match_table[] = {
>  	{ .compatible = "qcom,spmi-vadc" },
> +	{ .compatible = "qcom-spmi-vadc-8998" },
>  	{ }
>  };
>  MODULE_DEVICE_TABLE(of, vadc_match_table);
> diff --git a/drivers/iio/adc/qcom-vadc-common.h b/drivers/iio/adc/qcom-vadc-common.h
> index 17b2fc4d8bf2..b10d5fd59034 100644
> --- a/drivers/iio/adc/qcom-vadc-common.h
> +++ b/drivers/iio/adc/qcom-vadc-common.h
> @@ -16,6 +16,7 @@
>  
>  #define VADC_ABSOLUTE_RANGE_UV			625000
>  #define VADC_RATIOMETRIC_RANGE			1800
> +#define VADC_RATIOMETRIC_RANGE_8998		1875
>  
>  #define VADC_DEF_PRESCALING			0 /* 1:1 */
>  #define VADC_DEF_DECIMATION			0 /* 512 */

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ