InteractionHandler calls undo_hint_action in a separate thread, where
undo_hint_action manipulates a linklist which is not protected by any
locking method.
std::lock_guard<std::mutex> lk(mLock) protects insides
InteractionHandler class, but the linklist is also used in other places
of PowerHAL such as Encoder hint.
Bug: 71383315
Test: Build
Change-Id: I81e2c79ab78ed7bd13ddc663ddbe86fa08f29337
We handle launch hint end sent from framework on marlin as well.
On wahoo, it is disabled due to launch hint end sent earlier than camera
fully launch.
With more camera related hints linked to PowerHAL, we can do additional
boost for camera launch.
12-07 17:52:27.739 765 765 D QCOM PowerHAL: AUDIO STREAMING ON
// LAUCH ON from framework, boost
12-07 17:52:27.739 765 765 D QCOM PowerHAL: LAUNCH HINT: ON
12-07 17:52:27.741 765 765 D QCOM PowerHAL: Activity launch hint handled
12-07 17:52:27.775 765 765 D QCOM PowerHAL: AUDIO STREAMING OFF
// Do additional 2.5s boost for camera
12-07 17:52:27.784 765 765 D QCOM PowerHAL: CAMERA LAUNCH ON: 1000 MS
12-07 17:52:27.828 765 765 D QCOM PowerHAL: CAMERA STREAMING ON: 1000 MS
12-07 17:52:27.843 765 765 D QCOM PowerHAL: CAMERA STREAMING OFF
// LAUCH ON from framework, deboost
12-07 17:52:27.852 765 765 D QCOM PowerHAL: LAUNCH HINT: OFF
12-07 17:52:27.857 765 765 D QCOM PowerHAL: CAMERA STREAMING ON: 1000 MS
12-07 17:52:28.016 765 765 D QCOM PowerHAL: CAMERA STREAMING OFF
// Additional 2.5s boost for camera still remains
12-07 17:52:28.017 765 765 D QCOM PowerHAL: CAMERA LAUNCH OFF
12-07 17:52:28.017 765 765 D QCOM PowerHAL: Video Encode hint start
Test: monitor cpufreq with camera
Bug: 65034076
Change-Id: I06d6fa18c763f40f1a9d2f77b398c372957bbcd4
* Add dpendency on android.hardware.power@1.0, this is required for
coverage build.
Test: lunch walleye_coverage-userdebug
make android.hardware.power@1.1-service.wahoo
Change-Id: I3424f4052e6927ee3825512cb5ba898345ce275f
To prevent property name collisions between properties of system and
vendor, 'vendor.' prefix must be added to a vendor HAL service name.
You can see the details in http://go/treble-sysprop-compatibility.
Test: succeeded building and tested on a walleye device
Bug: 36796459
Change-Id: I519603b13978567b51dbb2bcb866aa088a1646e4
To prevent property name collisions between properties of system and
vendor, 'vendor.' prefix must be added to a vendor HAL service name.
You can see the details in http://go/treble-sysprop-compatibility.
Test: succeeded building and tested on a walleye device
Bug: 36796459
Change-Id: Idc995c550657feca5e0f934444a31805bc3538f9
Change the launch hint duration to 1.25s and don't end the launch
mode early.
Test: launch camera
bug 63913311
Change-Id: If28129b50bdd5e73aa196bd7079ac847b5621e31
Adds some tracing for the launch hint in the power HAL.
Test: extra trace data confirmed
bug 63913311
Change-Id: I6a207e4a0134650f9d339648a1058ddf5b2e7d9c
Add an async version of powerHint called powerHintAsync.
Bug: 62377008
Test: Take systrace, confirm powerHint is an async HIDL transaction
Change-Id: I481d74e02c51756306400cc19000db644fce6559
This CL removed cameraHAL to perfd interface
Also changed some powerHAL logging level
Bug: 63589458
Test: Build
Change-Id: I4725f45b22bf3a3787dc5d77fc9c6b22a66a21aa
Interaction handler has a check to ignore duplicate interaction requests
if previous covers current one. However the previous request could
finish early if idle is detected, need to account for this condition.
Bug: 63116225
Change-Id: I1a128eb8fe3c2a3daa7f48bc73cd5f07d5b1ae5b
- Hook up Encoder hint with CameraHal
- Remove dead code for EAS kernel for decoder hint and camera preview
This CL will enable powerhint for CameraHal to cap Big CPU
Cluster max freq to 1.958 Ghz.
Bug: 38000354
Bug: 62354242
Bug: 63039461
Test: Build and test camera preview on
Change-Id: I13e93915499f6cc83335b72ab2076d90bc9edfcc
Explicitly include unistd.h since the header is not provided when
building with BOARD_VNDK_VERSION.
Bug: 37342627
Test: BOARD_VNDK_VERSION=current m -j
android.hardware.power@1.1-service.wahoo
Change-Id: Iab69d5deae9faac27338bf8e97e09997775f7461
Allows earlier interaction lock release by polling on display updates to
stop happening (becomes idle) for a programmable amount of time.
Bug: 62110101
Test: Ran UiBench, didn't see regressions
susbset of tests - avg-jank:
testInflatingListViewFling: 0.09
testTrivialListViewFling: 0.15
Change-Id: I83c0fc75a3d7ca5bf76910ebbaeddb69343a7ee2
Power HAL 1.1 support for wahoo based devices was initially introduced in CL
ag/2098359
However, this caused a regression in application startup times due
to a bug in passing parameters for power hints on application launch
Hence, that CL was reverted in CL ag/2270791
This commit brings back the support of the Power Hal 1.1
to wahoo based devices. This includes the changes of the original CL
as will as a fix for the app startup time regression
The fix is similar to that in ag/1767023 (done for power HAL 1.0 default
implementation)
where a NULL is passed to the powerHint function when the passed data is
Zero
(instead of passing a pointer to the data). This enable the App Launch
power hints to work properly
The commit has been tested not to cause that regression
Bug: 62040325
Test: Performance Tests along with other tests
Change-Id: I29ce38b2de92c2b9ad878b0076288b689695b8a0
Signed-off-by: Ahmed ElArabawy <arabawy@google.com>
This reverts commit c043816b3c.
The reason of the revert is to check for the application start time
regression that may have been caused by the CL
Bug: 38317397
Test: None
Change-Id: I7edaf75eeebcecb848b38a9b7eff2bdb1f233cdb
Signed-off-by: Ahmed ElArabawy <arabawy@google.com>
Add a full binderized implementation for Power hal
Many subsystems (e.g.wifi) could be living on an
independent power island (sourced from VBatt directly)
and might even have their own dedicated XTAL to source
their clocks. Since these SOCs are capable of
autonomously operating (while the platform is in one
of the sleep states), they are still drawing power
from the VBatt. Hence it is critical to understand
the (SOC) level low power statistics as well when
the battery level changes and be able to find any
correlation in event of unexpected battery drain.
This commit adds the support of the Power Hal 1.1
to wahoo based devices(that includes Muskie/walleye).
This includes the new api for wlan specific power stats
Bug: 29339696
Test: Manual
Change-Id: Iee4e38f2d9ced31f8b6a333b535fa1d9a302ec26
Signed-off-by: Ahmed ElArabawy <arabawy@google.com>
Make parsing battery stats more extendable and switch to system_stats for
the battery stats.
Bug: 36064954
Test: dumpsys batterystats shows non-zero stats
Change-Id: I39c59f86cbb335da5796d23c0ff4a7435745b31e