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
- (unnamed) [application/pgp-signature] 836 bytes