input: touch: raydium: Boost CPU only while leaving idle mode
authorYogish Kulkarni <yogishk@nvidia.com>
Sun, 20 Jan 2013 07:15:45 +0000 (12:15 +0530)
committerMandar Padmawar <mpadmawar@nvidia.com>
Mon, 28 Jan 2013 07:52:00 +0000 (23:52 -0800)
commit9b6b5e13eff90ff25292e99a92f2a6ea4050770a
tree0e199f39e910fd56a8e5c2ecdb92f2aad0f41770
parent558a32fde1dce6f34d379da0f33477b5992c1963
input: touch: raydium: Boost CPU only while leaving idle mode

Raydium driver puts panel into idle mode after TimeToIdle period
which is calculated as,

TimeToIdle = (Firmware configurable param) * 10 * (panel scan rate);

Presently value of firmware configurable param is 5 for all
platforms. For 298Hz panel, idle will be invoked when no touch
activity is detected for ~168ms. During this time interval panel
will keep on raising IRQ at scan rate. Current CPU boosting logic
will keep on sending PM QoS request to boost CPU during this
interval, which can result to increased power numbers.

To boost CPU we can use the fact that raydium driver puts panel
into autoscan-mode after TimeToIdle, the mode where panel will
not send IRQ's unless it detects touch. This will result into
better power numbers as well serve the purpose to boost CPU only
on first touch IRQ.

If autoscan mode or idle mode is disabled, CPU won't be boosted.
undef NV_ENABLE_CPU_BOOST to disable CPU boosting.

Bug 1221911

Change-Id: Ibb6b4775039cc211fec33c2dde715454293bfdec
Signed-off-by: Yogish Kulkarni <yogishk@nvidia.com>
Reviewed-on: http://git-master/r/192939
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
GVS: Gerrit_Virtual_Submit
drivers/input/touchscreen/rm31080a_ts.c