When SurfaceFlinger detects a secure surface, it can call this
api to inform HWC to start HDCP negotiations.
Bug: 369161085
Test: manual
Change-Id: I08bd7180dd0a557826a496be02a949321f064779
* troika/kane need the new constructor but none of the other changes that come with >=11
* also guard the AppMarkerWriter changes as they also cause issues on kane/troika
Change-Id: I69915574001a6ac1b0904002b893aa0fd33e36ae
This reverts commit 9d129e62e6.
Reason for revert: CFLAG handling is more complex than anticipated.
Change-Id: I7c8f01e9d89a9aec55109b8c97b45162fbb1ff63
This reverts commit c8d290c932.
Reason for revert: Google finally fixed the issue in skiaglthreaded.
Change-Id: Id07a664e8c74a2d401297865c3b91e239c041abb
* Fix: expression does not compute the number of elements in this array; element type is 'const size_t' (aka 'const unsigned long'), not 'uint32_t' (aka 'unsigned int')
Change-Id: Ic5447e1deb3fee89de014afa8094309a9a843ecf
Signed-off-by: Francescodario Cuzzocrea <bosconovic@gmail.com>
In PresentOrValidateDisplay, SF expects HWC to either already call
presentDisplay or just call validateDisplay. If HWC fallback to
validateDisplay and there's no change, we should call
presentDisplay directly to reduce unnecessary binder transaction.
Bug: 295447985
Test: scrolling youtube and check traces
Change-Id: I7195ede2a4915f63114bbedad5e768debfb6d4dd
Add -Wthread-safety compilation flag and fix the build break.
Bug: 285487960
Test: Build pass
Change-Id: I78ec84779aedfa2b8943c8266d43e7a41d54cbb6
Signed-off-by: Leo Chen <yinchiuan@google.com>
Add -Wthread-safety compilation flag and fix the build break.
Bug: 285487960
Test: Build pass
Change-Id: Id5314c7c14a2c24ab2dedddd424a895945fb355c
Signed-off-by: Leo Chen <yinchiuan@google.com>
This feature isn't yet used, so remove it until we actually use it in
the next release.
Bug: 274954820
Test: make
Change-Id: I960b3cce292e07b3b7e601e2bdd5019acf34dafc
SKIP_VALIDATE is deprecated in HWC3, so we don't need to check it when
executing PresentOrValidateDisplay.
Bug: 271531314
Test: scroll
Change-Id: Iebc97333d773943a3c89b1756743d0459c66129d
Use "hwc-" log tag prefix for all HWC subcomponents.
Bug: 266842425
Test: boot to home, check logcat logs
Change-Id: I25efdf56da4c9de6ccbced641c952b1c550bdd50
To support debugging and tracing for multi-displays, it would be easier
if we include the display parameter in function traces and debug logs.
Bug: 245533789
Test: Perfetto trace and logcat
Change-Id: I783937175ff1de84d7139acba04676fa31408cc8
After primary displays supports this capability, SurfaceFlinger can run
executeCommands(presentDisplay) for this display concurrently with other
displays with the same capability.
[Linux4: Adapt to linaro T BSP]
Bug: 247074458
Test: switch applications
Change-Id: I55c4fe2d38f412f0e98b46502a99c90943cefbcc
A race condition exists because HWC uses only one
ComposerCommandEngine::Writer for all displays.
The writer takes responsibility to package AIDL functions’ return
values and deliver the package to SF. When a thread is packaging
the return value of the inner display by Writer, another
thread may call Writer::reset() for the outer display.
Bug: 247074458
Test: switch applications
Change-Id: I7393bd6d01008b09ac4f4a733fc7d024aaf05352
* this function is used to send a VIDEO_DECODE hint to power HAL,
however VIDEO_DECODE hint has been deprecated after power hal HIDL
version 1.0
* Digging into linaro sources, what stock power hal was doing on this
hint was to set the property vendor.light.video.status to 1
* We do not use HIDL power hal anyway on AOSP/Lineage as we are using
the AIDL libperfmgr one based on top of the pixel one
Change-Id: I4103bdab560848a2df9c9ca63489712ebbd44386
Signed-off-by: Francescodario Cuzzocrea <bosconovic@gmail.com>
* keep style consistent with general bsp one
* also pass to kernel driver information about groupid
Change-Id: I1dcc7f93d08ff6bc238d9a21b86a668765f6ff0c
Signed-off-by: Francescodario Cuzzocrea <bosconovic@gmail.com>
as legacy_libscaler and legacy_libgscaler and put them behind a flag,
BOARD_USES_LEGACY_LIBSCALER.
The new libscaler heavily depends on libacryl. On some older devices,
which will be relevant when HWC1 support will be brought back, libacryl
isn't used, and when it is present, it's just there as a dummy blob
without a scaler/compositor/blter set as per decompilations, and
attempts at setting them and trying to use libacryl in any real way
don't work. The old libscaler remains relevant to them and properly
working.
Also, on 7885/7904 devices with the new libscaler, after ending a screen
recording:
libacryl: Failed VIDIOC_S_FMT .type=10, .width=1008, .height=2160, .pixelformat=0x34424752 [Inappropriate ioctl for device]
This error doesn't occur with the old libscaler.
Note also that the libacryl config (scaler/compositor) matches stock
blobs as per decompilations, and it otherwise works.
As for libgscaler, Android 10 and older camera blobs depend on it, and
later on, when again also bringing back HWC1 support, it will also
depend on it.
Change-Id: Id0f159504c08821328e6cdf1daae61b2e590cbc1
Based on the exynos3830 configuration.
This configuration seems to work perfectly fine, with no issues to speak
of.
Change-Id: Ida005e220c231e90c9b2e2699d3c4715185b9aaa