<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vendor_qcom_opensource_power/power-8996.c, branch lineage-17.1</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/'/>
<entry>
<title>power: msm8996: Support power profiles</title>
<updated>2019-10-22T22:12:57+00:00</updated>
<author>
<name>dianlujitao</name>
<email>dianlujitao@lineageos.org</email>
</author>
<published>2018-01-18T15:34:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=d1dd8b97f72f094a6e03f4172a6a5c827848bcb1'/>
<id>d1dd8b97f72f094a6e03f4172a6a5c827848bcb1</id>
<content type='text'>
Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Thu Jan 18 23:34:38 2018 +0800

    power: msm8996: Add support for power profiles

     * We no longer handle POWER_HINT_INTERACTION and POWER_HINT_LAUNCH,
       they're now supported directly by Qualcomm mp-ctl.

    Change-Id: I03a5229fc8b97e8fb593ba831625c001e926e1d6

Author: Zhao Wei Liew &lt;zhaoweiliew@gmail.com&gt;
Date:   Tue Jun 21 10:44:49 2016 +0800

    power: msm8996: Support boost and perf profile hints

    Change-Id: I010d4d1d3fb495e523b065c11ca95c4305530f9f

Author: Ricardo Cerqueira &lt;ricardo@cyngn.com&gt;
Date:   Sat Jul 16 02:15:14 2016 +0100

    power: 8996: Fix only sending the first pair out of every perf profile

    When acquiring the perflock, we were only passing the first pair of
    arguments out of every profile. Because...
    sizeof(*)/sizeof(int) is always 2 on a 64bit arch. There's no
    need to put the profile into a pointer anyway, just pass it directly to
    ARRAY_SIZE (and the lock)

    Change-Id: I25f2a9b059290c3a0b36fc8dc29c711da938430e

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Fri Mar 2 12:40:04 2018 +0800

    power: Don't advertise power profile when interaction boost disabled

     * Power profile is fake news without interaction boost.

    Change-Id: Iceea885e6cb176f0620e76cfc335b7da500a0c2b

Author: Zhao Wei Liew &lt;zhaoweiliew@gmail.com&gt;
Date:   Sun Jun 26 11:37:59 2016 +0800

    power: Use ARRAY_SIZE macro where possible

    The common macro was introduced in the commit:
            8fe35cc7dd88bbb82a7732591fac4b8ecd935970

    So use it.

    Change-Id: Ie47d0e6b91b7bba378b0fdf53a345a021b0c2d48

Author: Michael Bestas &lt;mkbestas@lineageos.org&gt;
Date:   Mon Mar 26 05:21:23 2018 +0300

    power: Consistent skipping of non perf profile hints

    Change-Id: I9129de9046df7b922af7b32eac94167776f820cf

Author: Michael Bestas &lt;mkbestas@lineageos.org&gt;
Date:   Fri May 25 21:30:28 2018 +0300

    power: Spring cleanup

    * Cleanup SoC specific files:
     - Fix code spacing and indentation
     - Remove dead code
     - Remove useless comments
     - Remove useless logs
     - Make code uniform between the files so it's easier to diff
     - Use declared enums when possible for power hints

    Change-Id: Ie1378c94c53b33299927c5eb1bfc19f1a42b8743

Author: Corinna Vinschen &lt;xda@vinschen.de&gt;
Date:   Sun Aug 26 22:11:49 2018 +0200

    power: set_power_profile: handle errors

    * Make sure current_power_profile reflects actual setting.
    * Propagate error condition up to caller.
    * Handle error from set_power_profile in power_hint_override.

    Change-Id: I8518d921a94c912c75f59fbf993a8f44116bdca9
    Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Thu Sep 6 21:43:14 2018 +0800

    power: Clean up hint IDs

     * Group MPCTL v3 opcodes according to major type.
     * Remove some unused/dead opcodes.
     * Rename some misleading/inconsistency names.

    Change-Id: I3a06930c8fff18a50f77cb230951dbd43d62fed3

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Sat Feb 23 20:24:57 2019 +0800

    power: Pass NULL parameter in powerHint if data is zero

     * This restores the behavior in AOSP and CAF power HAL to avoid
       confusion.

    Change-Id: I72f5bb9286e2f57121e39eea82d2fe8854989393

Change-Id: I0b58da6f840caf78e79c1a463d4211460be3c02d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Thu Jan 18 23:34:38 2018 +0800

    power: msm8996: Add support for power profiles

     * We no longer handle POWER_HINT_INTERACTION and POWER_HINT_LAUNCH,
       they're now supported directly by Qualcomm mp-ctl.

    Change-Id: I03a5229fc8b97e8fb593ba831625c001e926e1d6

Author: Zhao Wei Liew &lt;zhaoweiliew@gmail.com&gt;
Date:   Tue Jun 21 10:44:49 2016 +0800

    power: msm8996: Support boost and perf profile hints

    Change-Id: I010d4d1d3fb495e523b065c11ca95c4305530f9f

Author: Ricardo Cerqueira &lt;ricardo@cyngn.com&gt;
Date:   Sat Jul 16 02:15:14 2016 +0100

    power: 8996: Fix only sending the first pair out of every perf profile

    When acquiring the perflock, we were only passing the first pair of
    arguments out of every profile. Because...
    sizeof(*)/sizeof(int) is always 2 on a 64bit arch. There's no
    need to put the profile into a pointer anyway, just pass it directly to
    ARRAY_SIZE (and the lock)

    Change-Id: I25f2a9b059290c3a0b36fc8dc29c711da938430e

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Fri Mar 2 12:40:04 2018 +0800

    power: Don't advertise power profile when interaction boost disabled

     * Power profile is fake news without interaction boost.

    Change-Id: Iceea885e6cb176f0620e76cfc335b7da500a0c2b

Author: Zhao Wei Liew &lt;zhaoweiliew@gmail.com&gt;
Date:   Sun Jun 26 11:37:59 2016 +0800

    power: Use ARRAY_SIZE macro where possible

    The common macro was introduced in the commit:
            8fe35cc7dd88bbb82a7732591fac4b8ecd935970

    So use it.

    Change-Id: Ie47d0e6b91b7bba378b0fdf53a345a021b0c2d48

Author: Michael Bestas &lt;mkbestas@lineageos.org&gt;
Date:   Mon Mar 26 05:21:23 2018 +0300

    power: Consistent skipping of non perf profile hints

    Change-Id: I9129de9046df7b922af7b32eac94167776f820cf

Author: Michael Bestas &lt;mkbestas@lineageos.org&gt;
Date:   Fri May 25 21:30:28 2018 +0300

    power: Spring cleanup

    * Cleanup SoC specific files:
     - Fix code spacing and indentation
     - Remove dead code
     - Remove useless comments
     - Remove useless logs
     - Make code uniform between the files so it's easier to diff
     - Use declared enums when possible for power hints

    Change-Id: Ie1378c94c53b33299927c5eb1bfc19f1a42b8743

Author: Corinna Vinschen &lt;xda@vinschen.de&gt;
Date:   Sun Aug 26 22:11:49 2018 +0200

    power: set_power_profile: handle errors

    * Make sure current_power_profile reflects actual setting.
    * Propagate error condition up to caller.
    * Handle error from set_power_profile in power_hint_override.

    Change-Id: I8518d921a94c912c75f59fbf993a8f44116bdca9
    Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Thu Sep 6 21:43:14 2018 +0800

    power: Clean up hint IDs

     * Group MPCTL v3 opcodes according to major type.
     * Remove some unused/dead opcodes.
     * Rename some misleading/inconsistency names.

    Change-Id: I3a06930c8fff18a50f77cb230951dbd43d62fed3

Author: dianlujitao &lt;dianlujitao@lineageos.org&gt;
Date:   Sat Feb 23 20:24:57 2019 +0800

    power: Pass NULL parameter in powerHint if data is zero

     * This restores the behavior in AOSP and CAF power HAL to avoid
       confusion.

    Change-Id: I72f5bb9286e2f57121e39eea82d2fe8854989393

Change-Id: I0b58da6f840caf78e79c1a463d4211460be3c02d
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Handle launch and interaction hints for perf HAL platforms</title>
<updated>2019-10-22T22:12:57+00:00</updated>
<author>
<name>BeYkeRYkt</name>
<email>beykerykt@gmail.com</email>
</author>
<published>2018-12-12T21:42:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=ef7a7ed7e04d113afdbe96ca07f55dd74111cc3c'/>
<id>ef7a7ed7e04d113afdbe96ca07f55dd74111cc3c</id>
<content type='text'>
Author: BeYkeRYkt &lt;beykerykt@gmail.com&gt;
Date:   Thu Dec 13 06:42:35 2018 +0900

    power: Handle launch and interaction hints for perf HAL platforms

     * MP-CTL does not handle POWER_HINT_INTERACTION and POWER_HINT_LAUNCH
       directly. Requests for processing are sent by Qualcomm BoostFramework
       (QPerformance) at the framework service level. Since we do not have
       BoostFramework, process POWER_HINT_INTERACTION and POWER_HINT_LAUNCH
       in PowerHAL to ensure a sufficient level of performance.
     * For proper operation, perfboostsconfig.xml file is required.

    Change-Id: I4c67d886c9dd74ae07094d32bdffc8ef403e04e7

Author: tomascus &lt;arbiter1000@gmail.com&gt;
Date:   Wed Feb 13 14:42:27 2019 +1100

    power: don't use SCROLL_PREFILING

    The current use of the SCROLL_PREFILING hint hurts scroll performance
    and results in a lot of dropped frames.

    The hint ID corresponding to SCROLL_PREFILING only takes into effect for
    a default timeout value of 80 ms (as found in perfboostsconfig.xml),
    while the duration value in the process_interaction_hint function runs
    for a much longer time, from 1500 ms up to 5000 ms (bounds of
    kMinFlingDuration and kMaxInteractiveDuration). During the period
    of time, when the timeout value has elapsed and current time is less
    than duration, another interaction hint cannot be processed. Therefore,
    if the user decides to scroll during this period, high frame drops can be
    experienced as the CPU freq isn't raised by processing another hint to
    account for this additional scrolling.
    By only using SCROLL_VERTICAL, fluidity can be maintained, improving user
    experience.

    Furthmore, kMinInteractiveDuration has been lowered to 400 ms for some
    platforms as it is more than sufficient to maintain fluidity (minimal
    frames dropped) while scrolling.

    Change-Id: I42edd07a67c7dca43a10ae2fa1b44b64b7794b43

commit e9063a6956974a2e33652e2df0ecac991ee84c80
Author: tomascus &lt;arbiter1000@gmail.com&gt;
Date:   Tue Feb 19 17:15:58 2019 +1100

    power: Release launch boost perflock when launch is completed

    Currently, the launch boost perflock is held for a fixed duration, either
    specified in perfboostsconfig.xml for perf HAL platforms or hardcoded in the
    powerHAL for non-perf HAL platforms.

    Using a fixed duration for this perflock has two shortcomings:
    * perflock can be held for too long, causing the CPU freq and other resources
      to be boosted for too long even if the application has finished launching,
      resulting in excessive battery drainage
    * perflock can be held not long enough if it takes more than the timeout
      time to finish launch

    The framework sends out a powerhint for both when launch starts and when
    launch ends. The launch finish hint can be used to signal when to release the
    perflock.

    Reference: Wahoo power-libperfmgr

    Change-Id: I405cc453c5f58d9fb2583b9c6017f3964a0ce024

Change-Id: I8ef6a890bc191f9504980707107750a720b50da3
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Author: BeYkeRYkt &lt;beykerykt@gmail.com&gt;
Date:   Thu Dec 13 06:42:35 2018 +0900

    power: Handle launch and interaction hints for perf HAL platforms

     * MP-CTL does not handle POWER_HINT_INTERACTION and POWER_HINT_LAUNCH
       directly. Requests for processing are sent by Qualcomm BoostFramework
       (QPerformance) at the framework service level. Since we do not have
       BoostFramework, process POWER_HINT_INTERACTION and POWER_HINT_LAUNCH
       in PowerHAL to ensure a sufficient level of performance.
     * For proper operation, perfboostsconfig.xml file is required.

    Change-Id: I4c67d886c9dd74ae07094d32bdffc8ef403e04e7

Author: tomascus &lt;arbiter1000@gmail.com&gt;
Date:   Wed Feb 13 14:42:27 2019 +1100

    power: don't use SCROLL_PREFILING

    The current use of the SCROLL_PREFILING hint hurts scroll performance
    and results in a lot of dropped frames.

    The hint ID corresponding to SCROLL_PREFILING only takes into effect for
    a default timeout value of 80 ms (as found in perfboostsconfig.xml),
    while the duration value in the process_interaction_hint function runs
    for a much longer time, from 1500 ms up to 5000 ms (bounds of
    kMinFlingDuration and kMaxInteractiveDuration). During the period
    of time, when the timeout value has elapsed and current time is less
    than duration, another interaction hint cannot be processed. Therefore,
    if the user decides to scroll during this period, high frame drops can be
    experienced as the CPU freq isn't raised by processing another hint to
    account for this additional scrolling.
    By only using SCROLL_VERTICAL, fluidity can be maintained, improving user
    experience.

    Furthmore, kMinInteractiveDuration has been lowered to 400 ms for some
    platforms as it is more than sufficient to maintain fluidity (minimal
    frames dropped) while scrolling.

    Change-Id: I42edd07a67c7dca43a10ae2fa1b44b64b7794b43

commit e9063a6956974a2e33652e2df0ecac991ee84c80
Author: tomascus &lt;arbiter1000@gmail.com&gt;
Date:   Tue Feb 19 17:15:58 2019 +1100

    power: Release launch boost perflock when launch is completed

    Currently, the launch boost perflock is held for a fixed duration, either
    specified in perfboostsconfig.xml for perf HAL platforms or hardcoded in the
    powerHAL for non-perf HAL platforms.

    Using a fixed duration for this perflock has two shortcomings:
    * perflock can be held for too long, causing the CPU freq and other resources
      to be boosted for too long even if the application has finished launching,
      resulting in excessive battery drainage
    * perflock can be held not long enough if it takes more than the timeout
      time to finish launch

    The framework sends out a powerhint for both when launch starts and when
    launch ends. The launch finish hint can be used to signal when to release the
    perflock.

    Reference: Wahoo power-libperfmgr

    Change-Id: I405cc453c5f58d9fb2583b9c6017f3964a0ce024

Change-Id: I8ef6a890bc191f9504980707107750a720b50da3
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Use declared enums where possible</title>
<updated>2019-10-22T22:12:57+00:00</updated>
<author>
<name>Michael Bestas</name>
<email>mkbestas@lineageos.org</email>
</author>
<published>2019-10-15T16:24:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=662bc2c978dafd4a804e68fa94712565fa121472'/>
<id>662bc2c978dafd4a804e68fa94712565fa121472</id>
<content type='text'>
Change-Id: I079490f8ff61bf278dd69eb89b9dae5ce42e6052
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I079490f8ff61bf278dd69eb89b9dae5ce42e6052
</pre>
</div>
</content>
</entry>
<entry>
<title>power: msm8996: Support VR + Sustained performance mode</title>
<updated>2019-10-22T22:12:57+00:00</updated>
<author>
<name>dianlujitao</name>
<email>dianlujitao@lineageos.org</email>
</author>
<published>2018-01-20T11:00:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=1c98cc356188d92ab176a43222cd27f49f379cbd'/>
<id>1c98cc356188d92ab176a43222cd27f49f379cbd</id>
<content type='text'>
Change-Id: I2eabcf48eac01d2f06050dea2392a8b853fc3129
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I2eabcf48eac01d2f06050dea2392a8b853fc3129
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Clean up and fix video encode/decode hint handling</title>
<updated>2019-10-22T22:12:57+00:00</updated>
<author>
<name>Michael Bestas</name>
<email>mkbestas@lineageos.org</email>
</author>
<published>2019-10-05T23:05:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=7af0fea40b41e90123908e0ea104f70dfc370edb'/>
<id>7af0fea40b41e90123908e0ea104f70dfc370edb</id>
<content type='text'>
* Unify code style for non legacy SoCs
* Restore legacy SoC handling which used to live in power-common.c
  but was removed in commit 561cffcbfa66192e839e040d2da3bff2ecf8dcac

Change-Id: Ieb84e6d6c8d762614e21267e81e6057aa64b36dd
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Unify code style for non legacy SoCs
* Restore legacy SoC handling which used to live in power-common.c
  but was removed in commit 561cffcbfa66192e839e040d2da3bff2ecf8dcac

Change-Id: Ieb84e6d6c8d762614e21267e81e6057aa64b36dd
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Remove unused camera_hint_ref_count</title>
<updated>2019-10-22T22:12:56+00:00</updated>
<author>
<name>Michael Bestas</name>
<email>mkbestas@lineageos.org</email>
</author>
<published>2018-05-25T18:33:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=c0c5b02c1fb92a59f3a285ad6183e28e4bad107a'/>
<id>c0c5b02c1fb92a59f3a285ad6183e28e4bad107a</id>
<content type='text'>
* These were part of the commit that added mutex locks
  for camera hints. We have now removed the locks so
  this is no longer necessary

Change-Id: I38b91ce4e8fc811b8d9a04e6ec20521adde1b264
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* These were part of the commit that added mutex locks
  for camera hints. We have now removed the locks so
  this is no longer necessary

Change-Id: I38b91ce4e8fc811b8d9a04e6ec20521adde1b264
</pre>
</div>
</content>
</entry>
<entry>
<title>power: msm8996: Remove dead code</title>
<updated>2019-10-22T22:12:56+00:00</updated>
<author>
<name>Michael Bestas</name>
<email>mkbestas@lineageos.org</email>
</author>
<published>2018-03-26T00:26:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=7dbfef3f4f963a5b05655346d0b4db2a0d27044a'/>
<id>7dbfef3f4f963a5b05655346d0b4db2a0d27044a</id>
<content type='text'>
Change-Id: Ia26e5989a7063baad048e017715fe0f31332fb75
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ia26e5989a7063baad048e017715fe0f31332fb75
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Use ARRAY_SIZE macro where possible</title>
<updated>2019-10-22T22:12:56+00:00</updated>
<author>
<name>Zhao Wei Liew</name>
<email>zhaoweiliew@gmail.com</email>
</author>
<published>2016-06-26T03:37:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=ee9bd619746cb0425905baf354e7f52130bb2ef8'/>
<id>ee9bd619746cb0425905baf354e7f52130bb2ef8</id>
<content type='text'>
Change-Id: Ie47d0e6b91b7bba378b0fdf53a345a021b0c2d48
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ie47d0e6b91b7bba378b0fdf53a345a021b0c2d48
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Simplify display_hint_sent</title>
<updated>2019-10-22T22:12:56+00:00</updated>
<author>
<name>Zhao Wei Liew</name>
<email>zhaoweiliew@gmail.com</email>
</author>
<published>2016-06-26T13:29:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=85e00bf2ce6aa080a42ad6f8dd47733b514cceac'/>
<id>85e00bf2ce6aa080a42ad6f8dd47733b514cceac</id>
<content type='text'>
Check for whether the display hint has been sent at the start
of the set_interactive() function in the common powerHAL.

This gets rid of the need to replicate the same variable in
every target-specific powerHAL that implements the
set_interactive_override() function.

Change-Id: If7dd11fcb578211f4f83847f9257232c4138ce53
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Check for whether the display hint has been sent at the start
of the set_interactive() function in the common powerHAL.

This gets rid of the need to replicate the same variable in
every target-specific powerHAL that implements the
set_interactive_override() function.

Change-Id: If7dd11fcb578211f4f83847f9257232c4138ce53
</pre>
</div>
</content>
</entry>
<entry>
<title>power: Use is_interactive_governor/is_schedutil_governor</title>
<updated>2019-10-22T22:12:56+00:00</updated>
<author>
<name>Ethan Chen</name>
<email>intervigil@gmail.com</email>
</author>
<published>2018-03-02T05:41:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/vendor_qcom_opensource_power/commit/?id=689414dbd0c18379144f96e3bde393b259d541cd'/>
<id>689414dbd0c18379144f96e3bde393b259d541cd</id>
<content type='text'>
 * Don't copy paste the same governor check code multiple times

Change-Id: I2258553deb02a5ae149b0a96aca5fe5584f0ea14
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Don't copy paste the same governor check code multiple times

Change-Id: I2258553deb02a5ae149b0a96aca5fe5584f0ea14
</pre>
</div>
</content>
</entry>
</feed>
