All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Sakari Ailus <sakari.ailus@iki.fi>
Cc: linux-media@vger.kernel.org, linux-leds@vger.kernel.org,
	j.anaszewski@samsung.com, cooloney@gmail.com,
	s.nawrocki@samsung.com, mchehab@osg.samsung.com,
	g.liakhovetski@gmx.de
Subject: Re: [PATCH v1.1 1/5] v4l: async: Add a pointer to of_node to struct v4l2_subdev, match it
Date: Tue, 02 Jun 2015 05:47:12 +0300	[thread overview]
Message-ID: <1668366.2mMvbSMUnT@avalon> (raw)
In-Reply-To: <1433111079-22457-1-git-send-email-sakari.ailus@iki.fi>

Hi Sakari,

Thank you for the patch. Please see below for one small comment.

On Monday 01 June 2015 01:24:39 Sakari Ailus wrote:
> V4L2 async sub-devices are currently matched (OF case) based on the struct
> device_node pointer in struct device. LED devices may have more than one
> LED, and in that case the OF node to match is not directly the device's
> node, but a LED's node.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
> ---
> since v1:
> 
> - Move conditional setting of struct v4l2_subdev.of_node from
>   v4l2_device_register_subdev() to v4l2_async_register_subdev.
> 
> - Remove the check for NULL struct v4l2_subdev.of_node from match_of() as
>   it's no longer needed.
> 
> - Unconditionally state in the struct v4l2_subdev.of_node field comment that
> the field contains (a pointer to) the sub-device's of_node.
> 
>  drivers/media/v4l2-core/v4l2-async.c | 34 +++++++++++++++++++++------------
>  include/media/v4l2-subdev.h          |  2 ++
>  2 files changed, 24 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/media/v4l2-core/v4l2-async.c
> b/drivers/media/v4l2-core/v4l2-async.c index 85a6a34..b0badac 100644
> --- a/drivers/media/v4l2-core/v4l2-async.c
> +++ b/drivers/media/v4l2-core/v4l2-async.c

[snip]

> @@ -266,6 +273,9 @@ int v4l2_async_register_subdev(struct v4l2_subdev *sd)
>  {
>  	struct v4l2_async_notifier *notifier;
> 
> +	if (!sd->of_node && sd->dev)
> +		sd->of_node = sd->dev->of_node;
> +

I think we don't need to take a reference to of_node here, as we assume 
there's a reference to dev through the whole life of the subdev, and dev 
should have a reference to of_node, but could you double-check ?

If that's indeed not a problem,

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

(and maybe a small comment in the source code would be useful)

>  	mutex_lock(&list_lock);
> 
>  	INIT_LIST_HEAD(&sd->async_list);
> diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h
> index 8f5da73..8a17c24 100644
> --- a/include/media/v4l2-subdev.h
> +++ b/include/media/v4l2-subdev.h
> @@ -603,6 +603,8 @@ struct v4l2_subdev {
>  	struct video_device *devnode;
>  	/* pointer to the physical device, if any */
>  	struct device *dev;
> +	/* A device_node of the subdev, usually the same as dev->of_node. */
> +	struct device_node *of_node;
>  	/* Links this subdev to a global subdev_list or @notifier->done list. */
>  	struct list_head async_list;
>  	/* Pointer to respective struct v4l2_async_subdev. */

-- 
Regards,

Laurent Pinchart

  reply	other threads:[~2015-06-02  2:46 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-19 23:04 [PATCH 0/5] V4L2 flash API wrapper improvements Sakari Ailus
2015-05-19 23:04 ` [PATCH 1/5] v4l: async: Add a pointer to of_node to struct v4l2_subdev, match it Sakari Ailus
2015-05-20 14:20   ` Jacek Anaszewski
2015-05-23 18:47   ` Laurent Pinchart
2015-05-31 21:54     ` Sakari Ailus
2015-05-31 22:24     ` [PATCH v1.1 " Sakari Ailus
2015-06-02  2:47       ` Laurent Pinchart [this message]
2015-06-09  8:05         ` Sakari Ailus
2015-06-10 21:27         ` [PATCH v1.2 " Sakari Ailus
2015-06-11 19:18           ` [PATCH v1.3 " Sakari Ailus
2015-06-11 19:27             ` Laurent Pinchart
2015-06-12  6:41               ` Sakari Ailus
2015-06-15 18:34                 ` Bryan Wu
2015-05-19 23:04 ` [PATCH 2/5] v4l: flash: Make v4l2_flash_init() and v4l2_flash_release() functions always Sakari Ailus
2015-05-23 18:40   ` Laurent Pinchart
2015-05-19 23:04 ` [PATCH 3/5] v4l: flash: Pass struct device and device_node to v4l2_flash_init() Sakari Ailus
2015-05-19 23:04 ` [PATCH 4/5] leds: aat1290: Pass dev and dev->of_node " Sakari Ailus
2015-05-20  9:47   ` Jacek Anaszewski
2015-05-20 10:19     ` Sakari Ailus
2015-05-20 10:37     ` Jacek Anaszewski
2015-05-20 12:27       ` Sakari Ailus
2015-05-20 13:47         ` Jacek Anaszewski
2015-05-20 14:31           ` Sakari Ailus
2015-05-21  8:54             ` Jacek Anaszewski
2015-05-21 10:06               ` Sakari Ailus
2015-05-21 12:13                 ` Jacek Anaszewski
2015-05-21 13:14                   ` Sakari Ailus
2015-05-19 23:04 ` [PATCH 5/5] leds: max77693: " Sakari Ailus

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=1668366.2mMvbSMUnT@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=cooloney@gmail.com \
    --cc=g.liakhovetski@gmx.de \
    --cc=j.anaszewski@samsung.com \
    --cc=linux-leds@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@osg.samsung.com \
    --cc=s.nawrocki@samsung.com \
    --cc=sakari.ailus@iki.fi \
    /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.