All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Lars-Peter Clausen <lars@metafoo.de>
Cc: Jonathan Cameron <jic23@cam.ac.uk>,
	linux-iio@vger.kernel.org,
	Maxime Ripard <maxime.ripard@free-electrons.com>
Subject: Re: [PATCH 2/9] iio:adc:at91: Use new triggered buffer setup helper
Date: Thu, 07 Jun 2012 21:02:09 +0100	[thread overview]
Message-ID: <4FD108C1.3020405@kernel.org> (raw)
In-Reply-To: <1338983756-31243-3-git-send-email-lars@metafoo.de>

On 06/06/2012 12:55 PM, Lars-Peter Clausen wrote:
> Use the new triggered buffer setup helper function to allocate and register
> buffer and pollfunc.
> 
Other than dropping IIO_TRIGGER select this is fine.
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Jonathan Cameron <jic23@kernel.org>
> ---
>  drivers/iio/adc/Kconfig    |    2 +-
>  drivers/iio/adc/at91_adc.c |   49 +++-----------------------------------------
>  2 files changed, 4 insertions(+), 47 deletions(-)
> 
> diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
> index 9a0df81..bbd2291 100644
> --- a/drivers/iio/adc/Kconfig
> +++ b/drivers/iio/adc/Kconfig
> @@ -7,7 +7,7 @@ config AT91_ADC
>  	tristate "Atmel AT91 ADC"
>  	depends on ARCH_AT91
>  	select IIO_BUFFER
> -	select IIO_KFIFO_BUF
> +	select IIO_TRIGGERED_BUFFER
>  	select IIO_TRIGGER
given IIO_TRIGGERED_BUFFER selects IIO_TRIGGER, drop that as well.
>  	select SYSFS
>  	help
> diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c
> index f18a95d..ad2934a 100644
> --- a/drivers/iio/adc/at91_adc.c
> +++ b/drivers/iio/adc/at91_adc.c
> @@ -318,58 +318,15 @@ static void at91_adc_trigger_remove(struct iio_dev *idev)
>  	}
>  }
>  
> -static const struct iio_buffer_setup_ops at91_adc_buffer_ops = {
> -	.preenable = &iio_sw_buffer_preenable,
> -	.postenable = &iio_triggered_buffer_postenable,
> -	.predisable = &iio_triggered_buffer_predisable,
> -};
> -
>  static int at91_adc_buffer_init(struct iio_dev *idev)
>  {
> -	int ret;
> -
> -	idev->buffer = iio_kfifo_allocate(idev);
> -	if (!idev->buffer) {
> -		ret = -ENOMEM;
> -		goto error_ret;
> -	}
> -
> -	idev->pollfunc = iio_alloc_pollfunc(&iio_pollfunc_store_time,
> -					    &at91_adc_trigger_handler,
> -					    IRQF_ONESHOT,
> -					    idev,
> -					    "%s-consumer%d",
> -					    idev->name,
> -					    idev->id);
> -	if (idev->pollfunc == NULL) {
> -		ret = -ENOMEM;
> -		goto error_pollfunc;
> -	}
> -
> -	idev->setup_ops = &at91_adc_buffer_ops;
> -	idev->modes |= INDIO_BUFFER_TRIGGERED;
> -
> -	ret = iio_buffer_register(idev,
> -				  idev->channels,
> -				  idev->num_channels);
> -	if (ret)
> -		goto error_register;
> -
> -	return 0;
> -
> -error_register:
> -	iio_dealloc_pollfunc(idev->pollfunc);
> -error_pollfunc:
> -	iio_kfifo_free(idev->buffer);
> -error_ret:
> -	return ret;
> +	return iio_triggered_buffer_setup(idev, &iio_pollfunc_store_time,
> +		&at91_adc_trigger_handler, NULL);
>  }
>  
>  static void at91_adc_buffer_remove(struct iio_dev *idev)
>  {
> -	iio_buffer_unregister(idev);
> -	iio_dealloc_pollfunc(idev->pollfunc);
> -	iio_kfifo_free(idev->buffer);
> +	iio_triggered_buffer_cleanup(idev);
>  }
>  
>  static int at91_adc_read_raw(struct iio_dev *idev,

  reply	other threads:[~2012-06-07 20:02 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-06 11:55 [PATCH 0/9] iio: Add helper function for initializing triggered buffers Lars-Peter Clausen
2012-06-06 11:55 ` [PATCH 1/9] staging:iio: " Lars-Peter Clausen
2012-06-07 19:09   ` Jonathan Cameron
2012-06-08  7:47     ` Lars-Peter Clausen
2012-06-06 11:55 ` [PATCH 2/9] iio:adc:at91: Use new triggered buffer setup helper Lars-Peter Clausen
2012-06-07 20:02   ` Jonathan Cameron [this message]
2012-06-08  7:57     ` Lars-Peter Clausen
2012-06-08  7:59       ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 3/9] staging:iio:adc:ad7192: Use new triggered buffer setup helper function Lars-Peter Clausen
2012-06-07 20:06   ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 4/9] staging:iio:adc:ad7298: " Lars-Peter Clausen
2012-06-07 20:11   ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 5/9] staging:iio:adc:ad7476: " Lars-Peter Clausen
2012-06-07 20:12   ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 6/9] staging:iio:adc:ad7606: " Lars-Peter Clausen
2012-06-07 20:13   ` Jonathan Cameron
2012-06-07 20:14     ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 7/9] staging:iio:adc:ad7793: " Lars-Peter Clausen
2012-06-07 20:14   ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 8/9] staging:iio:adc:ad7887: " Lars-Peter Clausen
2012-06-07 20:15   ` Jonathan Cameron
2012-06-06 11:55 ` [PATCH 9/9] staging:iio:adc:ad799x: " Lars-Peter Clausen
2012-06-07 20:18   ` Jonathan Cameron

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=4FD108C1.3020405@kernel.org \
    --to=jic23@kernel.org \
    --cc=jic23@cam.ac.uk \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=maxime.ripard@free-electrons.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.