From: Sakari Ailus <sakari.ailus@iki.fi>
To: Sylwester Nawrocki <snjw23@gmail.com>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Linux Media Mailing List <linux-media@vger.kernel.org>,
Tomasz Stanislawski <t.stanislaws@samsung.com>
Subject: Re: [RFC] subdevice PM: .s_power() deprecation?
Date: Sun, 23 Oct 2011 11:07:36 +0300 [thread overview]
Message-ID: <4EA3CB48.5000203@iki.fi> (raw)
In-Reply-To: <4E9F399B.9080207@gmail.com>
Hi Sylwester,
Sylwester Nawrocki wrote:
...
>> I understand what you're saying, but can you give us a specific example,
>> when a subdev driver (your SoC internal subdev, that is) doesn't have a
>> way to react to an event itself and only the bridge driver gets called
>> into at that time? Something like an interrupt or an internal timer or
>> some other internal event?
>
> 1. The S5P SoC video output subsystem (http://lwn.net/Articles/449661) comprises
> of multiple logical blocks, like Video Processor, Mixer, HDMI, HDMI PHY, SD TV Out.
> For instance the master video clock is during normal operation derived from
> (synchronized to, with PLL,) the HDMI-PHY output clock. The host driver can
> switch to this clock only when the HDMI-PHY (subdev) power and clocks are enabled.
> And it should be done before .s_stream(), to do some H/W configuration earlier
> in the pipeline, before streaming is enabled. Perhaps Tomasz could give some
> further explanation of what the s_power() op does and why in the driver.
>
> 2. In some of our camera pipeline setups - "Sensor - MIPI-CSI receiver - host/DMA",
> the sensor won't boot properly if all MIPI-CSI regulators aren't enabled. So the
> MIPI-CSI receiver must always be powered on before the sensor. With the subdevs
> doing their own magic wrt to power control the situation is getting slightly
> out of control.
How about this: CSI-2 receiver implements a few new regulators which the
sensor driver then requests to be enabled. Would that work for you?
>>> I guess we all agree the power requirements of external subdevs are generally
>>> unknown to the hosts.
>>>
>>> For these it might make lot of sense to let the subdev driver handle the device
>>> power supplies on basis of requests like, s_ctrl, s_stream, etc.
>>
>> Yes, right, so, most "external" (sensor, decoder,...) subdev drivers
>> should never need to implement .s_power(), regardless of whether we decide
>> to keep it or not. Well, ok, no, put it differently - in those drivers
>> .s_power() should only really be called during system-wide suspend /
>> resume.
>
> Yes, I agree with that. But before we attempt to remove .s_power() or deprecate
> it on "external" subdevs, I'd like to get solved the issue with sensor master clock
> provided by the bridge. As these two are closely related - the sensor controller
> won't boot if the clock is disabled. And there are always advantages of not keeping
> the clock always enabled.
I guess we'll need to wait awhile before the clock framework would
support this. I don't know what's the status of this; probably worth
checking.
Regards,
--
Sakari Ailus
sakari.ailus@iki.fi
next prev parent reply other threads:[~2011-10-23 8:07 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-03 10:57 [RFC] subdevice PM: .s_power() deprecation? Guennadi Liakhovetski
2011-10-08 21:36 ` Sakari Ailus
2011-10-17 8:06 ` Guennadi Liakhovetski
2011-10-17 12:12 ` Laurent Pinchart
2011-10-17 12:37 ` Guennadi Liakhovetski
2011-10-17 12:59 ` Sylwester Nawrocki
2011-10-17 13:49 ` Guennadi Liakhovetski
2011-10-17 15:15 ` Sylwester Nawrocki
2011-10-17 15:23 ` Guennadi Liakhovetski
2011-10-17 21:26 ` Sylwester Nawrocki
2011-10-17 23:07 ` Laurent Pinchart
2011-10-18 21:10 ` Sylwester Nawrocki
2011-10-18 21:38 ` Guennadi Liakhovetski
2011-10-19 20:56 ` Sylwester Nawrocki
2011-10-23 8:07 ` Sakari Ailus [this message]
2011-10-23 8:35 ` Sylwester Nawrocki
2011-10-23 8:44 ` Sakari Ailus
2011-10-23 9:01 ` Sylwester Nawrocki
2011-10-23 9:26 ` Laurent Pinchart
2011-10-23 9:53 ` Sylwester Nawrocki
2011-10-20 9:45 ` 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=4EA3CB48.5000203@iki.fi \
--to=sakari.ailus@iki.fi \
--cc=g.liakhovetski@gmx.de \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=snjw23@gmail.com \
--cc=t.stanislaws@samsung.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.