linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Hector Palacios <hector.palacios@digi.com>
Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree-discuss@lists.ozlabs.org,
	alexandre.belloni@free-electrons.com, lars@metafoo.de,
	fabio.estevam@freescale.com, marex@denx.de
Subject: Re: [PATCH v3 1/5] iio: mxs-lradc: change the realbits to 12
Date: Tue, 13 Aug 2013 22:24:27 +0100	[thread overview]
Message-ID: <520AA40B.9060107@kernel.org> (raw)
In-Reply-To: <1374501843-19651-2-git-send-email-hector.palacios@digi.com>

On 07/22/13 15:03, Hector Palacios wrote:
> The LRADC virtual channels have an 18 bit field to store the sum of up
> to 2^5 accumulated samples. The read_raw function however only operates
> over a single sample (12 bit resolution).
> In order to use this field for scaling operations, we need it to be the
> exact resolution value of the LRADC.
> Besides, the driver was using an 18 bit mask (LRADC_CH_VALUE_MASK) to
> report touch coordinates to userland. A 12 bit mask should be used instead
> or else the touch libraries will expect a coordinates range between 0
> and 0x3ffff (18 bits), instead of between 0 and 0xfff (12 bits).
> 
> Signed-off-by: Hector Palacios <hector.palacios@digi.com>
> Acked-by: Marek Vasut <marex@denx.de>
> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Applied to the togreg branch of iio.git

Thanks,

Jonathan
> ---
>  drivers/staging/iio/adc/mxs-lradc.c | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/staging/iio/adc/mxs-lradc.c b/drivers/staging/iio/adc/mxs-lradc.c
> index 9f52a28..56667da 100644
> --- a/drivers/staging/iio/adc/mxs-lradc.c
> +++ b/drivers/staging/iio/adc/mxs-lradc.c
> @@ -225,6 +225,9 @@ struct mxs_lradc {
>  #define	LRADC_CTRL4_LRADCSELECT_MASK(n)		(0xf << ((n) * 4))
>  #define	LRADC_CTRL4_LRADCSELECT_OFFSET(n)	((n) * 4)
>  
> +#define LRADC_RESOLUTION			12
> +#define LRADC_SINGLE_SAMPLE_MASK		((1 << LRADC_RESOLUTION) - 1)
> +
>  /*
>   * Raw I/O operations
>   */
> @@ -540,9 +543,10 @@ static int mxs_lradc_ts_register(struct mxs_lradc *lradc)
>  	__set_bit(EV_ABS, input->evbit);
>  	__set_bit(EV_KEY, input->evbit);
>  	__set_bit(BTN_TOUCH, input->keybit);
> -	input_set_abs_params(input, ABS_X, 0, LRADC_CH_VALUE_MASK, 0, 0);
> -	input_set_abs_params(input, ABS_Y, 0, LRADC_CH_VALUE_MASK, 0, 0);
> -	input_set_abs_params(input, ABS_PRESSURE, 0, LRADC_CH_VALUE_MASK, 0, 0);
> +	input_set_abs_params(input, ABS_X, 0, LRADC_SINGLE_SAMPLE_MASK, 0, 0);
> +	input_set_abs_params(input, ABS_Y, 0, LRADC_SINGLE_SAMPLE_MASK, 0, 0);
> +	input_set_abs_params(input, ABS_PRESSURE, 0, LRADC_SINGLE_SAMPLE_MASK,
> +			     0, 0);
>  
>  	lradc->ts_input = input;
>  	input_set_drvdata(input, lradc);
> @@ -817,7 +821,7 @@ static const struct iio_buffer_setup_ops mxs_lradc_buffer_ops = {
>  	.channel = (idx),					\
>  	.scan_type = {						\
>  		.sign = 'u',					\
> -		.realbits = 18,					\
> +		.realbits = LRADC_RESOLUTION,			\
>  		.storagebits = 32,				\
>  	},							\
>  }
> 

  reply	other threads:[~2013-08-13 20:24 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-22 14:03 [PATCH v3 0/5] iio: mxs-lradc: add support to optional divider_by_two Hector Palacios
2013-07-22 14:03 ` [PATCH v3 1/5] iio: mxs-lradc: change the realbits to 12 Hector Palacios
2013-08-13 21:24   ` Jonathan Cameron [this message]
2013-07-22 14:04 ` [PATCH v3 2/5] ARM: dts: add reference voltage property for MXS LRADC Hector Palacios
2013-07-22 18:34   ` Lars-Peter Clausen
2013-07-22 22:06     ` Marek Vasut
2013-07-26  9:23       ` Alexandre Belloni
2013-08-13 21:23   ` Jonathan Cameron
2013-08-14 14:44     ` Pawel Moll
2013-08-21 22:13       ` Alexandre Belloni
2013-08-22  6:17         ` Jonathan Cameron
2013-08-22 16:51           ` Pawel Moll
2013-08-23 23:00             ` Jonathan Cameron
2013-09-23 12:47               ` Alexandre Belloni
2013-09-23 13:39                 ` Hector Palacios
2013-08-22  8:05         ` Hector Palacios
2013-08-22 16:50           ` Pawel Moll
2013-08-22 16:41         ` Pawel Moll
2013-08-22 17:00           ` Lars-Peter Clausen
2013-07-22 14:04 ` [PATCH v3 3/5] iio: mxs-lradc: add scale attribute to channels Hector Palacios
2013-07-22 14:04 ` [PATCH v3 4/5] iio: mxs-lradc: add scale_available file " Hector Palacios
2013-07-22 22:36   ` Marek Vasut
2013-07-23  7:00     ` Hector Palacios
2013-07-23  8:46   ` Lars-Peter Clausen
2013-07-23 13:25     ` Hector Palacios
2013-07-26 13:17       ` Alexandre Belloni
2013-07-26 16:13         ` Jonathan Cameron
2013-08-07  7:50           ` Alexandre Belloni
2013-08-13 21:26             ` Jonathan Cameron
2013-07-22 14:04 ` [PATCH v3 5/5] iio: mxs-lradc: add write_raw function to modify scale Hector Palacios
2013-07-22 22:37   ` Marek Vasut
2013-12-06 16:28   ` Harald Geyer
2013-12-06 16:32     ` Alexandre Belloni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=520AA40B.9060107@kernel.org \
    --to=jic23@kernel.org \
    --cc=alexandre.belloni@free-electrons.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=fabio.estevam@freescale.com \
    --cc=hector.palacios@digi.com \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marex@denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).