runtime PM and autosuspend

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alan,

i want to clarify some of my doubts for the auto suspend PM run time.

The runtime PM documentation mentions the variable timer_autosuspends
indicating the core to carry out timer based suspends rather than a
normal suspend. For most of the devices, shouldn't I be using the
timer based suspends more? But a quick glance shows me that there isnt
a API to allow the user to explicitly set this mode. Or is it expected
to set this variable in my driver code to signal the PM core to
suspend my device based on a timer?

My interest stems from trying to implement the auto suspends for the
input layer which as discussed previously can be used in lieu of
custom sysfs switches to disable/enable input devices. My
understanding goes for like this:
1. Enable run time PM in the driver initialization.
2. Use pm_runtime_get() in the entry of the ISR to signal resource grab;
3. Use pm_runtime_put() whilst exiting the ISR to decrement usage
count. Once the usage count drops to zero, the PM core on the
expiration of the suspend timer will initiate the suspend. Is this
correct?

Also one more doubt: In order to be available for wakeup via a input
device, I cannot completely put the keypad controller in the lowest
possible state. Does this mean that my driver's suspend call back
would only be effective when I dont want to wakeup via the keypad and
thus can turn off the controller completely? Also, in such a auto
suspend timer initiated suspend, will the device interrupt be the sole
reason for triggering the resume()?

Thanx for the patience to read through the queries.

Cheers!

-- 
---------
The views expressed in this email are personal and do not necessarily
echo my employers'.
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm


[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux