Thread (63 messages) 63 messages, 11 authors, 2012-08-07

Re: [RFC][PATCH v3 1/3] runtime interpreted power sequences

From: Thierry Reding <hidden>
Date: 2012-08-01 07:17:57
Also in: linux-devicetree, linux-tegra, lkml

On Wed, Aug 01, 2012 at 11:50:35AM +0900, Alex Courbot wrote:
On 07/31/2012 07:19 PM, Thierry Reding wrote:
quoted
* PGP Signed by an unknown key

On Tue, Jul 31, 2012 at 06:51:03PM +0900, Alex Courbot wrote:
quoted
I would like to do that actually. The issue is that it did not work
go well with the legacy pwm_backlight behavior: a power sequence
needs to be constructed out of a PWM obtained through
pwm_request(int pwm_id, char *label) and this behavior cannot be
emulated using the new platform data interface (which only works
with pwm_get()). But if I remove this old behavior, then I could
make power_seq opaque. I don't think many drivers are using it. What
do you think?
I don't see how that is relevant here, since this power-sequencing code
is supposed to be generic and not tied to any specific implementation.
Can you explain further?

In any case you shouldn't be using pwm_request() in new code.
Power sequences only rely on pwm_get, and never call pwm_request
since it is, as you stated, deprecated. However there are still
boards that use the old pwm_id member of the
pwm_backlight_platform_data. For these, we must call pwm_request
from the pwm_backlight driver in order to resolve the PWM (see
pwm_backlight_legacy_probe of the seconds patch). As the PWM is
being resolved by the backlight driver, and not within the power
sequences parser, the resolved data structure must be visible to
pwm_backlight so it can construct it. There are two ways to solve
this and keep the power sequences structure private:

1) Add a way to resolve a PWM by id using pwm_request in the power
sequences (we probably should not do that)
No. But I think we don't need that either. If you use power sequences,
then you shouldn't be using the pwm_id member. Both methods should be
exclusive.
2) Port the old platform pwm_request code to use pwm_add_table and
pwm_get instead.
In the long term, every PWM user should move to pwm_add_table() and
pwm_get(), but there are quite a lot of boards that need conversion.
Do I get points if I do 2)? :)
Yes. =) I have a sample patch for PXA EZX, but as I said, many more
boards need conversion.

Thierry

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help