From: laurent.pinchart@ideasonboard.com (Laurent Pinchart)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v8 1/7] media: V4L2: add temporary clock helpers
Date: Fri, 12 Apr 2013 00:35:38 +0200 [thread overview]
Message-ID: <13951098.tvATHWRRmI@avalon> (raw)
In-Reply-To: <20130411185258.7915.67263@quantum>
Hi Mike,
On Thursday 11 April 2013 11:52:58 Mike Turquette wrote:
> Quoting Barry Song (2013-04-11 01:59:28)
> > 2013/4/11 Guennadi Liakhovetski <g.liakhovetski@gmx.de>:
> > > On Thu, 11 Apr 2013, Barry Song wrote:
> > >> 2013/4/11 Guennadi Liakhovetski <g.liakhovetski@gmx.de>:
> > >> > On Thu, 11 Apr 2013, Barry Song wrote:
> > >> >> Hi Guennadi,
> > >> >>
> > >> >> > Typical video devices like camera sensors require an external
> > >> >> > clock source. Many such devices cannot even access their hardware
> > >> >> > registers without a running clock. These clock sources should be
> > >> >> > controlled by their consumers. This should be performed, using the
> > >> >> > generic clock framework. Unfortunately so far only very few
> > >> >> > systems have been ported to that framework. This patch adds a set
> > >> >> > of temporary helpers, mimicking the generic clock API, to V4L2.
> > >> >> > Platforms, adopting the clock API, should switch to using it.
> > >> >> > Eventually this temporary API should be removed.
> > >> >> >
> > >> >> > Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@xxxxxx>
> > >> >> > ---
> > >> >>
> > >> >> for your patch 1/8 and 3/8, i think it makes a lot of senses to let
> > >> >> the object manages its own clock by itself.
> > >> >> is it possible for us to implement v4l2-clk.c directly as an
> > >> >> instance of standard clk driver for those systems which don't have
> > >> >> generic clock, and remove the V4L2 clock APIs like v4l2_clk_get,
> > >> >> v4l2_clk_enable from the first day? i mean v4l2-clk.c becomes a temp
> > >> >> and fake clock controller driver. finally, after people have
> > >> >> generically clk, remove it.
> > >> >
> > >> > I don't think you can force-enable the CFF on systems, that don't
> > >> > support it, e.g. PXA.
> > >>
> > >> yes. we can. clock is only a framework, has it any limitation to
> > >> implement a driver instance on any platform?
> > >
> > > So, you enable CFF, it provides its own clk_* implementation like
> > > clk_get_rate() etc. Now, PXA already has it defined in
> > > arch/arm/mach-pxa/clock.c. Don't think this is going to fly.
> >
> > agree.
>
> I came into this thread late and don't have the actual patches in my inbox
> for review. That said, I don't understand why V4L2 cares about the clk
> framework *implementation*? The clk.h api is the same for platforms using
> the common struct clk and those still using the legacy method of defining
> their own struct clk. If drivers are only consumers of the clk.h api then
> the implementation underneath should not matter.
The issue on non-CCF systems is that devices usually can't register clocks
dynamically. (Most of) those systems provide system clocks only through their
clock API, without a way for the camera IP core to hook up the clock(s) it can
provide to the camera sensor. On the consumer side we don't care much about
the clock framework implementation, but on the provider side we need a
framework that allows registering non-system clocks at runtime.
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2013-04-11 22:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAGsJ_4zCRBvEX9xEDCr27JLK6wYp_2T_wk2hzVjqpKinbL=9pg@mail.gmail.com>
[not found] ` <Pine.LNX.4.64.1304110921480.23859@axis700.grange>
2013-04-11 8:22 ` [PATCH v8 1/7] media: V4L2: add temporary clock helpers Barry Song
2013-04-11 8:36 ` Guennadi Liakhovetski
2013-04-11 8:59 ` Barry Song
2013-04-11 18:52 ` Mike Turquette
2013-04-11 20:14 ` Sylwester Nawrocki
2013-04-11 22:35 ` Laurent Pinchart [this message]
2013-04-11 23:19 ` Mike Turquette
2013-04-12 8:22 ` Laurent Pinchart
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=13951098.tvATHWRRmI@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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).