[PATCH] ARM: SAMSUNG: Add suspend/resume support for S3C PWM driver

Lars-Peter Clausen lars at metafoo.de
Mon Mar 15 16:32:06 EDT 2010

Hash: SHA1

Vasily Khoruzhick wrote:
> В сообщении от 15 марта 2010 21:36:05 автор Lars-Peter Clausen
> написал:
>> Hi
>> There is still one big issue left regarding pwm suspend/resume.
>> If the invert bit is not set, the pwm will generate a HIGH signal
>> when being inactive, when the bit is set it will generate a HIGH
>> signal when active. As a result any pin to which the pwm signal
>> is routed will appear as active until the pwm resume handler is
>> called. This usually takes a few 100 ms seconds and so for a
>> short period of time we'll get the wrong signal on pwm pins. For
>> correct behavior the pwm driver would have to check all pins to
>> which it's signal might be routed and if it's actually is
>> configure the pin as LOW output. Upon resume the pin then has to
>> be reconfigured as a pwm pin, only after the invert bit has been
>> set.
>> I know that it previously has been stated, that it is not desired
>> for the pwm driver to know about gpio pins. But in my opinion to
>> ensure correct behavior it is unavoidable.
>> - Lars

> Hi, why not to leave this job for driver that use PWM? This driver
> should disable PWM before going to suspend and ensure that GPIO pin
> is in right state. (For example, I'm using pwm-bl callbacks to
> manage gpio pin state when PWM is disabled).

Because it would require to implement the same functionality over and
over again. Furthermore it would require each generic driver using the
pwm api to provide such callbacks.
And you - as a user of the api - will have to know about this oddity.
In my opinion it is a detail specific to the samsung platform and
should be hidden behind the common interface.

- - Lars
> Regards Vasily
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org


More information about the linux-arm-kernel mailing list