External devices

AYAN KUMAR HALDER ayankumarh at gmail.com
Sun Sep 7 16:22:41 EDT 2014


>
> I am required to put some external device (led brightness) into
> minimal brightness when the system gets to idle.
Please elaborate on "System gets to idle state."
Do you mean the system is suspended ? ------- case 1
or the device has moved to idle state?     ------- case 2

> The control on led brightness value is done as part of dedicated
> character device which was written for the purpose of brightness
> control (which uses i2c bus)
> I wander if this is possible using the linux PM capabilities, and how
> this should be done.
In either case it should be possible as per my understanding. You need
to implement
it in the appropriate PM handlers.
case1 ----> write the appropriate code in driver->pm->suspend
case2 ----> write the appropriate code in driver->pm->runtime_idle

Regards,
Ayan Kumar Halder

> Thanks,
> Ran
>
> On Fri, Sep 5, 2014 at 7:13 PM, AYAN KUMAR HALDER <ayankumarh at gmail.com> wrote:
>>> When adding some external device to power management, doesn't it need
>>> to belong to power domain  ( /debug/pm_debug/count ).
>>
>> Power Domains are decided by system designer. A board can be divided
>> into multiple power domains which can be powered on/off or
>> voltage/current regulated independently as each power domain is
>> controlled by a power regulator.
>>
>>> What is the power domain of external device ?
>> The right person to answer this question will be your system designer.
>> You may look into the board schematics to find out power regulator of
>> your external device. Each power domain is controlled by a power
>> regulator.
>>
>> It is not necessary for you to consider power domains if you do not
>> wish to power up/down or regulate the voltage /current while running
>> Linux on the board. Another generic way to do runtime-power management
>> of various devices would be to perform clock scaling/gating (assuming
>> you know the clock domains of your system).



More information about the Kernelnewbies mailing list