Commit Graph

51 Commits

Author SHA1 Message Date
Dilip Gudlur 8de574b286 power: update powerhal to remove deprecated calls
Updates powerhal hint to avoid calling deprecated nodes.

Change-Id: Id0fe83d375e9867d1806f1ee5b86d2b521d0bba4
2015-01-08 20:26:48 -08:00
Linux Build Service Account 230424d0d7 Merge "power: Introduce specific handling for encode use case" 2014-11-12 09:49:36 -08:00
Linux Build Service Account a4d538c47c Merge "power: introduce 8994-specific handling" 2014-11-12 09:49:36 -08:00
Dilip Gudlur 1352facd49 power: Introduce specific handling for encode use case
Adds ability to modify cpufreq/sched params for encode use case
specific to 8994.

Change-Id: I96b8b7e4246eaf870a4f8b6b947a2b24af1a515c
2014-11-10 16:30:29 -08:00
Dilip Gudlur 6306bb4dc1 power: introduce 8994-specific handling
Creates framework for handling special cases like
display off, video encode differently for 8994.

Change-Id: Ib4c2cf1d6b4a615d70c92a9f54665e2ba0895adb
2014-11-10 12:52:14 -08:00
Vince Leung b103dd8d6a common: update enum value for disabling PC
Update enum value used to disable PC via PerfLock

Change-Id: I14cb3292b94db90d592905fb344c942e7d61c4f8
2014-10-29 17:40:13 -07:00
Pracheer cd15b0b776 power: add sched boost enum.
Add enum for enabling sched boost and
core 4-8 in perflock

Change-Id: I049c44d18045d9ab2dce7a96cf73207357e63a18
2014-09-10 16:46:32 +05:30
Vince Leung 8d4cfd3782 common: add sched boost enum
Add enum for enabling sched boost in PerfLock

Change-Id: I252953c79a5194f75384140c20dd413e7518c14e
2014-08-15 08:39:28 -07:00
Shashank Mittal 4e89496b59 Power: Fix module path
Use LOCAL_MODULE_RELATIVE_PATH for 64bit compilation.

Change-Id: I27a437e8e63ffdadb699d5324d223537675e38e3
2014-05-21 18:33:02 -07:00
Vince Leung 4a6faafa5f common: add CPU max cores online enums
Previously the enums to limit the maximum number
of cores online were using the same resource as
minimum number of cores. Separate the min and max
to each have their own resource.

Change-Id: I3d2e8ebe1bba61a0d63ee79972cbe78c972b2bd8
2014-03-13 12:30:10 -07:00
Linux Build Service Account 286a4d0210 Merge "common: add CPU max freq enums" 2014-03-12 14:23:25 -07:00
Vince Leung 061f27df7b common: add CPU max freq enums
Add the enums for CPU max freq limit
Remove unsupported enum for all cpus freq

Change-Id: I8720c22f6aadaa8ced2a5917aa97f568d94f2f93
2014-03-10 13:55:37 -07:00
Dilip Gudlur 66757bd2e6 power: Modify power HAL hint for Interactive governor
Currently power HAL sets display off hint to 500ms for
Interactive Governor, this change modifies the hint to 50ms
to enable CPU to sample and scale better.

Change-Id: I611f7d318c78f85fb345852b8e2c82ec1cbda006
2014-02-25 12:32:37 -08:00
Linux Build Service Account 29292942c3 Merge "power: Add apq8084 specific changes" 2014-01-18 07:39:12 -08:00
Linux Build Service Account 227c094873 Merge "power: keep two cores online when display is on" 2014-01-18 07:39:11 -08:00
Dilip Gudlur 14f858aa20 power: Add apq8084 specific changes
Added compilation flag for power-8084.c in
makefile and detection of apq8084 soc id in
power.c.

Change-Id: I00e8e18f6de4ee7b38269e4bf565954db46148c5
2014-01-16 17:10:15 -08:00
Dilip Gudlur 5b339aae29 power: keep two cores online when display is on
This change is specific to 8084 and has been
modeled based on 8974 pro changes. Use PerfLock
to keep two cores online when the display is on.

Change-Id: Iffea0f9afbb3743cec2804da5884ec6d977b662a
2014-01-14 15:41:50 -08:00
Anurag Singh c2140b83b8 power: vote to turn off io_is_busy for interactive governor
If the interactive governor is being used, vote to turn off
io_is_busy when video encode starts to reduce power consumption.

Change-Id: I69738b989af3d6e0f1a708c21875b935b435cd91
2014-01-07 14:11:01 -08:00
Zhoulu Luo fe60d0ef70 Revert "Revert "power: keep two cores online when display is on""
This reverts commit 1b147f354e.
2013-12-06 16:32:10 -08:00
Shruthi Krishna 1b147f354e Revert "power: keep two cores online when display is on"
This reverts commit 3427f3ef2a

Change-Id: Ib55ad4bd1ea9a4e0790705018dfd1d187522f450
2013-11-24 14:46:48 -08:00
Vince Leung 3427f3ef2a power: keep two cores online when display is on
This change is specific to 8974 Pro only.
Use PerfLock to keep two cores online
when the display is on.

Change-Id: I6c694df43ad884f00209b5afa6ed862357312261
2013-11-22 20:33:04 -08:00
Vince Leung 5c8bcb9b46 power: add input arguments to interaction function
Change the method signature of interaction function
to allow input arguments for the optimizations
requested and the duration.
Add msm8226 and msm8610 specific power files for
interaction power hint override.

Change-Id: Iac6762d2864021d35981fee11496bda39f8f82fe
2013-09-10 14:45:38 -07:00
Linux Build Service Account 712296d594 Merge "powerhal: Remove PWR_CLPS_ENA for display_off scenario" 2013-07-26 17:43:00 -07:00
Badhri Jagan Sridharan 1201b922a8 powerhal: Remove PWR_CLPS_ENA for display_off scenario
Mutlicore SPC is enabled for both display_on and display_off
scenarios. Hence removing the PWR_CLPS_ENA flag from display_off
hints list.

Change-Id: I4a6794b540dba5c619f069b346720332fd3369f4
2013-07-24 09:52:51 -07:00
Vince Leung 391d561530 power: add feature for interaction
Add compile time feature to improve UX when
interaction hint is received in the powerhal.

Change-Id: I987d2fb2d529019931d4787250bc03d21a820c6f
2013-07-16 16:47:00 -07:00
Anurag Singh 186e7e0ebe power: Ignore consecutive display off hints
It is possible, although very unusual, for more
than one display off events to reach the power HAL
without any intervening display on events. In
this case, do not perform any actions. Multiple
consecutive display on events are already handled.

Change-Id: Id7cd51c2fdc804aa7ebb8322a236077b1785f45f
2013-06-08 17:14:54 -07:00
Vince Leung 6af746075f powerhal: add opcode to disable sync on thread migration
Add and use the opcode to disable synchronization
of cores on foreground thread migration.
Synchronization of cores on foreground thread migration
feature is on by default so we will disable
when the display is off and encode/decode hints.

Change-Id: Ib52b894059b030b9a711c98e0dab41793c99276f
2013-05-17 14:05:33 -07:00
Dilip Gudlur 08d0fda2f6 powerhal: add display off hints to improve power
Change needed during display off use cases to improve
power with specific hints to enable power collapse and
set sync/optimal frequency to 650 Mhz

Change-Id: I44442779310aee316b0175478629bd92741f17f0
2013-05-13 17:59:06 -07:00
Linux Build Service Account 790f98ac2c Merge "Revert "powerhal: Add display off and power collapse enable hint"" 2013-05-01 20:56:58 -07:00
Vishwanatha Kumar Ulthur d54e31e44a Revert "powerhal: Add display off and power collapse enable hint"
This reverts commit daafb89446

Change-Id: Ib0ee83cf8443fc697ff4b80ea53898dd2346b2ff
2013-05-01 12:38:10 -07:00
Linux Build Service Account 8be4ee9f93 Merge "powerhal: Add display off and power collapse enable hint" 2013-04-30 01:32:03 -07:00
Linux Build Service Account fb6a73b2d7 Merge "power: add display off and power collapse enable opcodes." 2013-04-30 01:32:02 -07:00
Linux Build Service Account 442fd104ce Merge "common: Add comments for CPU_MIN_FREQ usage" 2013-04-26 13:53:05 -07:00
Linux Build Service Account 52d7614c11 Merge "common: Add opcodes to lock the maximum number of cores" 2013-04-26 13:52:52 -07:00
Dilip Gudlur daafb89446 powerhal: Add display off and power collapse enable hint
Change needed by powerhal to be able to send display off hint
to perflock to enable power collapse for all cores

Change-Id: I79cabc469055fe263b4b702f8d28263f2de36778
2013-04-25 13:09:46 -07:00
Vince Leung 735a2f98c5 power: add display off and power collapse enable opcodes.
Display off opcode used to inform PerfLock the display is off.
Power collapse enable opcode allows users to enable power collapse
modes on all cpus.

Change-Id: I5dc01f47c9df0aa70d34bb8519de115e8c12588a
2013-04-23 23:50:54 -07:00
Vince Leung a9d32c5034 common: Add comments for CPU_MIN_FREQ usage
Add comments to inform users on how
PerfLock supports CPU min frequencies

Change-Id: I13046c9bff8108a7d43405ca08070be853d1d84b
2013-04-23 13:57:34 -07:00
Vince Leung eb3eea131c common: Add opcodes to lock the maximum number of cores
Add opcodes for PerfLock to support locking of
maximum number of cores online.

Change-Id: Idb4b8313f8518cc5f322d0a7f483922737a3502b
2013-04-22 18:05:25 -07:00
Anurag Singh daa8f718d8 power: introduce 8974-specific handling
When the display turns off, the MSM8974
needs to set ondemand governor's sync_freq
and optimal_freq parameters to values different
from other targets. To accomplish this, override
the handling for set_interactive. Also refactor
power HAL to remove unnecessary macros.

Change-Id: I009ee88886abfb4f8423de3b2d85549fd0e65205
2013-04-22 13:43:38 -07:00
Anurag Singh ffe0b51549 power: Use a constructor for initialization.
Perform initialization (or cleanup) in a special
constructor (or destructor) function that gets
invoked when the power HAL library is loaded
(or unloaded). Remove code that is made redundant
by doing this. Also remove other parts of the code
which are no longer used.

Change-Id: I6a08c998c32fb57d0c7975bc814f7d87cd1104d1
2013-03-27 19:20:30 -07:00
Duy Truong 0c0744e022 Update copyright to The Linux Foundation
Change-Id: Id084b09bf3a083ea5c0389900bbeb5ef149b3108
2013-02-10 06:35:11 -08:00
Vince Leung c44f88778b common: Add opcodes for sync_freq and optimal_freq
Add opcodes for synchronous freq and optimal freq
into PerfLock.

Change-Id: Idb4d4f2194cb34fee5e76614ae1cbe3938534100
2013-02-07 18:15:30 -08:00
Anurag Singh da28cce5a9 power: Use macros instead of string literals.
Replace multiple instances of string literals with
macros so as to minimize the risk of typos. Also fix
a check for max/min DCVS slack node values.

Change-Id: I9fa80a41dffba88d144d100d146726f2c18e7540
2013-01-15 17:30:32 -08:00
Anurag Singh 317051e7be power: Build the power module for QCOM targets
Allow the power module (power.qcom.so) to be built
for Qualcomm targets.

Change-Id: I7b671225a54e1a67bffdd2e71f9380a3d4db91e1
2013-01-15 15:40:52 -08:00
Anh Nguyen 7ffc571f20 Initial JB MR1 bring-up support
Change-Id: I312af7ba7e843e5748ffc8eb42494cb33afd95d1
2012-12-05 17:52:39 -08:00
Anurag Singh 1306363584 power: Change ondemand sampling rate when dipslay state changes.
When the display turns off, set the ondemand sampling rate
to 500ms. Restore it to whatever it was when it turns back on.

Change-Id: I5cab3cbb993fae1aafb8323a3b47d0569badb9ee
2012-11-09 17:53:00 -08:00
Anurag Singh 79ab543c4c power: Process video decode and screen off hints.
Process video decode hints and display-off hints
in the power HAL. Also move to using the perflock
API to request system-level parameter changes.

Change-Id: I42e33d6d22016b02d85572a69fee64aadf36da58
2012-10-11 18:56:35 -07:00
Linux Build Service Account 9dd462d9d3 Merge "common: Add performance header file." 2012-10-10 18:14:09 -07:00
Vince Leung eaf7493615 common: Add performance header file.
Add performance header file that includes
opcodes required to use PerfLock.

Change-Id: I2b26673499f8427e8db40baf6784b85baddbe869
2012-10-09 18:05:01 -07:00
Anurag Singh 7accfc5c5a power: Change MP/DCVS slack nodes with display state.
Set values on DCVS and mpdecision slack nodes when
display state changes.

Change-Id: Ic39c3d3f209b6a7daee77fce180d45a83a0871d2
2012-10-09 17:17:48 -07:00