All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Prabhakar Lad <prabhakar.csengg@gmail.com>
Cc: Hans Verkuil <hans.verkuil@cisco.com>,
	Mauro Carvalho Chehab <mchehab@redhat.com>,
	LMML <linux-media@vger.kernel.org>,
	DLOS <davinci-linux-open-source@linux.davincidsp.com>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 9/9] media: davinci: vpif_display: Convert to devm_* api
Date: Wed, 29 May 2013 05:38:38 +0200	[thread overview]
Message-ID: <1915324.uRjOv648gy@avalon> (raw)
In-Reply-To: <1369569612-30915-10-git-send-email-prabhakar.csengg@gmail.com>

On Sunday 26 May 2013 17:30:12 Prabhakar Lad wrote:
> From: Lad, Prabhakar <prabhakar.csengg@gmail.com>
> 
> use devm_request_irq() instead of request_irq(). This ensures
> more consistent error values and simplifies error paths.
> 
> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>

Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

with a small comment below.

> ---
>  drivers/media/platform/davinci/vpif_display.c |   35 ++++++----------------
>  1 files changed, 9 insertions(+), 26 deletions(-)
> 
> diff --git a/drivers/media/platform/davinci/vpif_display.c
> b/drivers/media/platform/davinci/vpif_display.c index 7bcfe7d..e2f080b
> 100644
> --- a/drivers/media/platform/davinci/vpif_display.c
> +++ b/drivers/media/platform/davinci/vpif_display.c
> @@ -1718,15 +1718,14 @@ static __init int vpif_probe(struct platform_device
> *pdev)
> 
>  	while ((res = platform_get_resource(pdev, IORESOURCE_IRQ, res_idx))) {
>  		for (i = res->start; i <= res->end; i++) {
> -			if (request_irq(i, vpif_channel_isr, IRQF_SHARED,
> -					"VPIF_Display", (void *)
> -					(&vpif_obj.dev[res_idx]->channel_id))) {
> -				err = -EBUSY;
> -				for (j = 0; j < i; j++)
> -					free_irq(j, (void *)
> -					(&vpif_obj.dev[res_idx]->channel_id));
> +			err = devm_request_irq(&pdev->dev, i, vpif_channel_isr,
> +					     IRQF_SHARED, "VPIF_Display",
> +					     (void *)(&vpif_obj.dev[res_idx]->
> +					     channel_id));
> +			if (err) {
> +				err = -EINVAL;
>  				vpif_err("VPIF IRQ request failed\n");
> -				goto vpif_int_err;
> +				goto vpif_unregister;
>  			}
>  		}
>  		res_idx++;
> @@ -1744,7 +1743,7 @@ static __init int vpif_probe(struct platform_device
> *pdev) video_device_release(ch->video_dev);
>  			}
>  			err = -ENOMEM;
> -			goto vpif_int_err;
> +			goto vpif_unregister;
>  		}
> 
>  		/* Initialize field of video device */
> @@ -1878,13 +1877,8 @@ vpif_sd_error:
>  		/* Note: does nothing if ch->video_dev == NULL */
>  		video_device_release(ch->video_dev);
>  	}
> -vpif_int_err:
> +vpif_unregister:
>  	v4l2_device_unregister(&vpif_obj.v4l2_dev);
> -	for (i = 0; i < res_idx; i++) {
> -		res = platform_get_resource(pdev, IORESOURCE_IRQ, i);
> -		for (j = res->start; j <= res->end; j++)
> -			free_irq(j, (void *)(&vpif_obj.dev[i]->channel_id));
> -	}
> 
>  	return err;
>  }
> @@ -1894,20 +1888,9 @@ vpif_int_err:
>   */
>  static int vpif_remove(struct platform_device *device)
>  {
> -	struct platform_device *pdev;
>  	struct channel_obj *ch;
> -	struct resource *res;
> -	int irq_num;
>  	int i = 0;

There's no need to initialize i to 0 anymore (same comment for patch 6/9).

> -	pdev = container_of(vpif_dev, struct platform_device, dev);
> -	while ((res = platform_get_resource(pdev, IORESOURCE_IRQ, i))) {
> -		for (irq_num = res->start; irq_num <= res->end; irq_num++)
> -			free_irq(irq_num,
> -				 (void *)(&vpif_obj.dev[i]->channel_id));
> -		i++;
> -	}
> -
>  	v4l2_device_unregister(&vpif_obj.v4l2_dev);
> 
>  	kfree(vpif_obj.sd);
-- 
Regards,

Laurent Pinchart


  reply	other threads:[~2013-05-29  3:38 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-26 12:00 [PATCH v3 0/9] media: davinci: vpif trivial cleanup Prabhakar Lad
2013-05-26 12:00 ` [PATCH v3 1/9] media: davinci: vpif: remove unwanted header mach/hardware.h and sort the includes alphabetically Prabhakar Lad
2013-05-26 12:00 ` [PATCH v3 2/9] media: davinci: vpif: Convert to devm_* api Prabhakar Lad
2013-05-26 14:37   ` Sergei Shtylyov
2013-05-26 12:00 ` [PATCH v3 3/9] media: davinci: vpif: remove unnecessary braces around defines Prabhakar Lad
2013-05-26 12:00 ` [PATCH v3 4/9] media: davinci: vpif_capture: move the freeing of irq and global variables to remove() Prabhakar Lad
2013-05-26 14:47   ` Sergei Shtylyov
2013-05-29  2:32   ` Laurent Pinchart
2013-05-29  4:14     ` Prabhakar Lad
2013-05-26 12:00 ` [PATCH v3 5/9] media: davinci: vpif_capture: use module_platform_driver() Prabhakar Lad
2013-05-29  3:34   ` Laurent Pinchart
2013-05-26 12:00 ` [PATCH v3 6/9] media: davinci: vpif_capture: Convert to devm_* api Prabhakar Lad
2013-05-29  3:37   ` Laurent Pinchart
2013-05-26 12:00 ` [PATCH v3 7/9] media: davinci: vpif_display: move the freeing of irq and global variables to remove() Prabhakar Lad
2013-05-26 12:00 ` [PATCH v3 8/9] media: davinci: vpif_display: use module_platform_driver() Prabhakar Lad
2013-05-29  3:34   ` Laurent Pinchart
2013-05-26 12:00 ` [PATCH v3 9/9] media: davinci: vpif_display: Convert to devm_* api Prabhakar Lad
2013-05-29  3:38   ` Laurent Pinchart [this message]
2013-05-29  4:15     ` Prabhakar Lad

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=1915324.uRjOv648gy@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=hans.verkuil@cisco.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@redhat.com \
    --cc=prabhakar.csengg@gmail.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.