devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Philipp Zabel <p.zabel@pengutronix.de>
To: Rob Herring <robherring2@gmail.com>
Cc: Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Mauro Carvalho Chehab <m.chehab@samsung.com>,
	Grant Likely <grant.likely@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Sylwester Nawrocki <s.nawrocki@samsung.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Tomi Valkeinen <tomi.valkeinen@ti.com>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Philipp Zabel <philipp.zabel@gmail.com>
Subject: Re: [RFC PATCH] [media]: of: move graph helpers from drivers/media/v4l2-core to drivers/of
Date: Tue, 11 Feb 2014 16:27:45 +0100	[thread overview]
Message-ID: <1392132465.6943.19.camel@pizza.hi.pengutronix.de> (raw)
In-Reply-To: <CAL_Jsq+U9zU1i+STLHMBjY5BeEP6djYnJVE5X1ix-D2q_zWztQ@mail.gmail.com>

Hi Rob,

Am Dienstag, den 11.02.2014, 07:56 -0600 schrieb Rob Herring:
> On Tue, Feb 11, 2014 at 5:45 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> > From: Philipp Zabel <philipp.zabel@gmail.com>
> >
> > This patch moves the parsing helpers used to parse connected graphs
> > in the device tree, like the video interface bindings documented in
> > Documentation/devicetree/bindings/media/video-interfaces.txt, from
> > drivers/media/v4l2-core to drivers/of.
> 
> This is the opposite direction things have been moving...

I understand subsystem specific functionality is moving from drivers/of
into the subsystems. In this case three subsystems all could benefit
from the same set of parsing functions, so it is not clear to me where
if not drivers/of would be the correct place for this code.

> > This allows to reuse the same parser code from outside the V4L2 framework,
> > most importantly from display drivers. There have been patches that duplicate
> > the code (and I am going to send one of my own), such as
> > http://lists.freedesktop.org/archives/dri-devel/2013-August/043308.html
> > and others that parse the same binding in a different way:
> > https://www.mail-archive.com/linux-omap@vger.kernel.org/msg100761.html
> >
> > I think that all common video interface parsing helpers should be moved to a
> > single place, outside of the specific subsystems, so that it can be reused
> > by all drivers.
> 
> Perhaps that should be done rather than moving to drivers/of now and
> then again to somewhere else.
>
> > I moved v4l2_of_get_next_endpoint, v4l2_of_get_remote_port,
> > and v4l2_of_get_remote_port_parent. They are renamed to
> > of_graph_get_next_endpoint, of_graph_get_remote_port, and
> > of_graph_get_remote_port_parent, respectively.
> >
> > Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> > ---
> >  drivers/media/Kconfig             |   1 +
> >  drivers/media/v4l2-core/v4l2-of.c | 117 ---------------------------------
> >  drivers/of/Kconfig                |   3 +
> >  drivers/of/Makefile               |   1 +
> >  drivers/of/of_graph.c             | 133 ++++++++++++++++++++++++++++++++++++++
> >  include/linux/of_graph.h          |  23 +++++++
> >  include/media/v4l2-of.h           |  16 ++---
> >  7 files changed, 167 insertions(+), 127 deletions(-)
> >  create mode 100644 drivers/of/of_graph.c
> >  create mode 100644 include/linux/of_graph.h
> 
> [snip]
> 
> > diff --git a/include/media/v4l2-of.h b/include/media/v4l2-of.h
> > index 541cea4..404a493 100644
> > --- a/include/media/v4l2-of.h
> > +++ b/include/media/v4l2-of.h
> > @@ -17,6 +17,7 @@
> >  #include <linux/list.h>
> >  #include <linux/types.h>
> >  #include <linux/errno.h>
> > +#include <linux/of_graph.h>
> >
> >  #include <media/v4l2-mediabus.h>
> >
> > @@ -72,11 +73,6 @@ struct v4l2_of_endpoint {
> >  #ifdef CONFIG_OF
> >  int v4l2_of_parse_endpoint(const struct device_node *node,
> >                            struct v4l2_of_endpoint *endpoint);
> > -struct device_node *v4l2_of_get_next_endpoint(const struct device_node *parent,
> > -                                       struct device_node *previous);
> > -struct device_node *v4l2_of_get_remote_port_parent(
> > -                                       const struct device_node *node);
> > -struct device_node *v4l2_of_get_remote_port(const struct device_node *node);
> >  #else /* CONFIG_OF */
> >
> >  static inline int v4l2_of_parse_endpoint(const struct device_node *node,
> > @@ -85,25 +81,25 @@ static inline int v4l2_of_parse_endpoint(const struct device_node *node,
> >         return -ENOSYS;
> >  }
> >
> > +#endif /* CONFIG_OF */
> > +
> >  static inline struct device_node *v4l2_of_get_next_endpoint(
> >                                         const struct device_node *parent,
> >                                         struct device_node *previous)
> >  {
> > -       return NULL;
> > +       return of_graph_get_next_endpoint(parent, previous);
> 
> Won't this break for !OF?

It will. The of_graph_* functions should get their own stubs for that
case.

regards
Philipp

  parent reply	other threads:[~2014-02-11 15:27 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-11 11:45 [RFC PATCH] [media]: of: move graph helpers from drivers/media/v4l2-core to drivers/of Philipp Zabel
     [not found] ` < 20140310145815.17595C405FA@trevor.secretlab.ca>
     [not found] ` < CAL_Jsq+U9zU1i+STLHMBjY5BeEP6djYnJVE5X1ix-D2q_zWztQ@mail.gmail.com>
     [not found]   ` < 20140217181451.7EB7FC4044D@trevor.secretlab.ca>
     [not found] ` < 4339286.FzhQ2m6hoA@avalon>
     [not found] ` < 20140320153804.35d5b835@samsung.com>
2014-02-11 13:56 ` Rob Herring
2014-02-11 14:52   ` Russell King - ARM Linux
2014-02-11 15:23     ` Laurent Pinchart
2014-02-11 16:36       ` Philipp Zabel
     [not found]         ` <1392136617.6943.33.camel-/rZezPiN1rtR6QfukMTsflXZhhPuCNm+@public.gmane.org>
2014-02-11 17:22           ` Sylwester Nawrocki
2014-02-11 17:41             ` Mauro Carvalho Chehab
2014-02-11 21:00               ` Guennadi Liakhovetski
2014-02-11 21:46             ` Philipp Zabel
2014-02-11 17:24           ` Laurent Pinchart
2014-02-11 16:30     ` Rob Herring
2014-02-11 15:27   ` Philipp Zabel [this message]
2014-02-17 18:14   ` Grant Likely
2014-02-18  7:06     ` Sascha Hauer
2014-02-18 16:26       ` Grant Likely
     [not found]         ` < 1393263389.3091.82.camel@pizza.hi.pengutronix.de>
     [not found]           ` <20140226110114. CF2C7C40A89@trevor.secretlab.ca>
     [not found]         ` <20140218162627.32BA4C40517-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-02-24 17:36           ` Philipp Zabel
2014-02-26 11:01             ` Grant Likely
2014-02-26 14:48               ` Philipp Zabel
     [not found]                 ` <1393426129.3248.64.camel-+qGW7pzALmz7o/J7KWpOmN53zsg1cpMQ@public.gmane.org>
2014-02-27  8:36                   ` Tomi Valkeinen
2014-03-07 17:06                     ` Grant Likely
2014-03-08 10:57                       ` Tomi Valkeinen
2014-03-07 17:05                 ` Grant Likely
2014-03-08 10:33                   ` Tomi Valkeinen
2014-03-08 11:41                     ` Grant Likely
2014-03-08 23:25                       ` Sylwester Nawrocki
2014-03-10 10:18                       ` Tomi Valkeinen
     [not found]                         ` <531D916C.2010903-l0cyMroinI0@public.gmane.org>
2014-03-10 13:52                           ` Laurent Pinchart
2014-03-10 14:10                             ` Tomi Valkeinen
2014-03-10 14:58                             ` Grant Likely
2014-03-10 15:15                               ` Laurent Pinchart
2014-03-10 15:40                                 ` Philipp Zabel
2014-03-11 11:43                                   ` Laurent Pinchart
2014-03-11 12:59                                     ` Tomi Valkeinen
     [not found]                                       ` <1883687.VdfitvQEN3@samsung.com>
     [not found]                                         ` <avalon@samsung.com>
     [not found]                                       ` <531F08A8.300-l0cyMroinI0@public.gmane.org>
2014-03-11 13:16                                         ` Laurent Pinchart
2014-03-11 13:27                                           ` Tomi Valkeinen
2014-03-11 13:44                                             ` Philipp Zabel
2014-03-20 17:23                                           ` Grant Likely
2014-03-21 10:44                                             ` Andrzej Hajda
2014-03-21 11:47                                               ` Grant Likely
2014-03-21 12:16                                                 ` Tomi Valkeinen
     [not found]                                                   ` <532C2D94.4020705-l0cyMroinI0@public.gmane.org>
2014-03-21 14:33                                                     ` Grant Likely
2014-03-20 17:09                                     ` Grant Likely
2014-03-11 13:04                                 ` Andrzej Hajda
     [not found]                                   ` <531F09E2.3070407-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-03-20 17:33                                     ` Grant Likely
2014-03-20 17:01                                 ` Grant Likely
2014-03-21 12:10                                   ` Tomi Valkeinen
2014-03-11 15:07                               ` Philipp Zabel
     [not found]                                 ` <1394550420.3772.29.camel-+qGW7pzALmz7o/J7KWpOmN53zsg1cpMQ@public.gmane.org>
2014-03-11 15:21                                   ` Laurent Pinchart
2014-03-11 18:52                                     ` Philipp Zabel
2014-03-20 17:53                                     ` Grant Likely
2014-03-20 17:36                                   ` Grant Likely
2014-03-12 10:25                             ` Russell King - ARM Linux
2014-03-12 10:47                               ` Tomi Valkeinen
     [not found]                                 ` <53203B2D.6080201-l0cyMroinI0@public.gmane.org>
2014-03-12 11:21                                   ` Laurent Pinchart
2014-03-20 17:54                               ` Grant Likely
     [not found]                                 ` <20140320175432.0559CC4067A-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-03-20 18:16                                   ` Laurent Pinchart
2014-03-20 18:18                                     ` Russell King - ARM Linux
     [not found]                                       ` <20140320181820.GY7528-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-03-20 18:50                                         ` Laurent Pinchart
2014-03-20 19:27                                       ` Laurent Pinchart
2014-03-20 18:38                                   ` Mauro Carvalho Chehab
2014-03-20 18:43                                     ` Russell King - ARM Linux
2014-03-20 18:49                                       ` Laurent Pinchart
2014-03-21  8:20                                         ` Tomi Valkeinen
     [not found]                                 ` <20140320153804.35d5b835@ samsung.com>
     [not found]                                   ` <20140320153804.35d5b835-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-03-20 18:48                                     ` Grant Likely
     [not found]                                       ` <20140320184816.7AB02C4067A-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-03-20 18:52                                         ` Laurent Pinchart
2014-03-20 23:12                                           ` Grant Likely
     [not found]                                             ` <20140320231250.8F0E0C412EA-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-03-20 23:26                                               ` Laurent Pinchart
2014-03-21  8:15                                                 ` Grant Likely
2014-03-21 12:44                                                   ` Laurent Pinchart
2014-03-21 13:26                                                     ` Grant Likely
2014-03-10 14:41                           ` Grant Likely
2014-03-08 11:54                   ` Russell King - ARM Linux
     [not found]     ` <20140217181451.7EB7FC4044D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-02-18 10:43       ` Sylwester Nawrocki
2014-02-18 13:41     ` Philipp Zabel

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=1392132465.6943.19.camel@pizza.hi.pengutronix.de \
    --to=p.zabel@pengutronix.de \
    --cc=devicetree@vger.kernel.org \
    --cc=grant.likely@linaro.org \
    --cc=kyungmin.park@samsung.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=m.chehab@samsung.com \
    --cc=philipp.zabel@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=robherring2@gmail.com \
    --cc=s.nawrocki@samsung.com \
    --cc=tomi.valkeinen@ti.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 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).