801ad647015810abc856f93ff1e90bb930714ec9 |
|
22-Jun-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: discard stale commands When we skip validate, we may have stale commands on the command buffer. They should be discarded. Bug: 62906801 Test: manual Change-Id: Ie7921ba75ab2252b834cda6924e1fcfdf236f759 (cherry picked from commit 0c6ce4608fc022608537162dd919e7f729b9cb77)
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
249c0ae80a6e5690d091294c4447cb3facafbc37 |
|
20-Jun-2017 |
Fabien Sanglard <sanglardf@google.com> |
Skip Validate b/37474580 b/62806392 Test: marlin, ryu Change-Id: I09e0c52cb7c914dcd883dc771d97a365c89f7037
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
c175253b6d0738aec6235ef1c2e723ad36fcd346 |
|
08-Jun-2017 |
Alistair Strachan <alistair.strachan@imgtec.com> |
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode. When HWC2 mode is enabled in SurfaceFlinger, the getDisplayInfo() function would fail to return the correct active mode in some cases. This bug was only noticable if you had more than one mode registered by the HWC2 backend. The SurfaceComposerClient::getDisplayInfo() function works by calling getDisplayConfigs(), and de-referencing the config at the index returned by getActiveConfig(). The active config returned was correct, but the getDisplayConfigs() array was not properly sorted. Tracing this back, this problem occurs because the configId is stored alongside the config in an unordered_map, so when this is converted to a vector and the configId is discarded, the conversion must be sorted correctly; it can't just be the hash order returned from the unordered_map. There are a few ways to fix this problem, but the easiest was to nip the problem in the bud by not allowing an unsorted list of configs to exist on the base HWC2 class. It may be better still to just get rid of the map and go back to a vector, as this data is more often used as an array than it is indexed by configId, so the use of an unordered_map was probably overkill. Change-Id: Ibfb015a6d9b49c870f37a1c892f15f90abbd1e2c Bug: 62617569 Test: ./cts-tradefed run cts -m CtsViewTestCases -t android.view.cts.DisplayRefreshRateTest#testRefreshRate
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
5b3cf0576d91358cb850945d89382938ff8dc5ed |
|
04-May-2017 |
Fabien Sanglard <sanglardf@google.com> |
Delete SurfaceFlinger BYPASS codepath Test: AUPT, Manual Change-Id: I8d6139fbb8a3ec113d7cb973420a5874d3e31030 Merged-Id: I8d6139fbb8a3ec113d7cb973420a5874d3e31030
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
6d957ec3732dd1c30b00e738ebb38d01118f9fd6 |
|
12-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes Ia1fa4a32,I2a4c3d9f into oc-dev * changes: hwc2: Remove Display::{mIsVirtual,setVirtual} hwc2: Cache display type at construction
|
ceb67d1f8f61e15e2c752d15c4077e5194118d1c |
|
11-Apr-2017 |
Chris Forbes <chrisforbes@google.com> |
hwc2: Remove Display::{mIsVirtual,setVirtual} Trivial cleanup. Now that mType is available, we don't need a separate flag for whether the display is virtual. The remaining effect of setVirtual was to set the display connected, so just use setConnected. Bug: b/36597125 Test: build Change-Id: Ia1fa4a324cc07b0d6c124f4f50966c8b0cbe4827
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
016d73c2d8f8fae544f09a6eebe827791f499470 |
|
11-Apr-2017 |
Chris Forbes <chrisforbes@google.com> |
hwc2: Cache display type at construction The display type is constant for the life of the display. Query it upfront to avoid the binder transaction later. V2: fixup HWC1 path Test: boot to launcher on bullhead; build on fugu for HWC1 path Bug: b/36597125 Change-Id: I2a4c3d9ff449960957376afef78f424261fcc282
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
1f42e3a02c4f9a1ba1916a2f0e47082bedb73e41 |
|
10-Apr-2017 |
Daniel Nicoara <dnicoara@google.com> |
VR: Update VR HWC to use buffer metadata passed by SurfaceFlinger Without gralloc1 support, need to pass buffer metadata in order to import native buffers and used them as graphic buffers. Bug: 36481301 Test: Compiled and ran on device; Verified VR Window Manager properly displays SurfaceFlinger buffers. Change-Id: I8426be1d79dcc2fbd631c399427ae03cb2afc21d
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
1d77b719d51a01cbd6954a048fb64e79d50a950e |
|
18-Feb-2017 |
Mathias Agopian <mathias@google.com> |
move vector math out of libui created a new header-only static libmath lib Test: built & ran Bug: n/a Change-Id: Ic63ef5f54d9a0de07a9ab9e4d67be01ab6169fc0
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
5a423eaa86f4c990afcef8c55e3949d0872068b4 |
|
16-Feb-2017 |
Dan Stoza <stoza@google.com> |
Move FloatRect from libgfx to libui Moves FloatRect from libgfx (which is being disintegrated) to libui Test: Builds and sailfish boots Change-Id: I68c1b7d86a363066fe4d6f0c038ca9d92d7ab9c7
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
87670ffe26079eb50b62f698eb0f7bfa8ee51deb |
|
01-Feb-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Allow surfaceflinger to run vrflinger * Allows surface flinger to switch in and out of vr mode Bug: None Test: Manually ran various vr test programs. Change-Id: I15fbba0eb67cbcffeef41be31429550448a1db9c
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
06d63de03cb2a551ca99608f5aa0c4f3e200b0fc |
|
04-Jan-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: cache HWC client targets and buffers Remember HWC client targets and buffers, and make sure we send each unique slot/handle pair only once. This allows the composer to clone/register/retain each buffer only once. Test: builds and boots Change-Id: Ib485189043a9c132031e82d4d7380ace3bf9453d
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
2f5f8a51f5994cf14837030d4b3b252a9d1b950b |
|
20-Dec-2016 |
Daniel Nicoara <dnicoara@google.com> |
VR: Add ability to pass layer info through SurfaceFlinger Updates SurfaceFlinger to connect to the VR HWC service and pass additional layer information. For now VR mode is enabled at build time. Bug: 33297385 Test: Ran on device and verified the IVrComposerClient::setLayerInfo() call is done successfully. Change-Id: I9dea2451a3a2aa1919395d3785ae00446ba51f26
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
71bded513d37a6c1260b4a62c69ecc0d24be95f7 |
|
19-Oct-2016 |
Dan Stoza <stoza@google.com> |
Create libgfx, starting with FloatRect Creates libgfx, the future home of everything currently in libui and libgui, which will be rigorously checked with -Weverything (with a few common-sense exceptions) and clang-tidy and formatted using the included .clang-format file. Starts by moving FloatRect out of services/surfaceflinger since it will be used by other libgfx primitives later. Test: m Change-Id: I5045ac089020e6ee380e81e8735117c500264b37
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
100a437706d5a2750ab384d79588411f875a13be |
|
15-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Document HWC2to1Adapter"
|
339607072fbc0ca39e6e13ce197cb720ef971d91 |
|
30-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Document HWC2to1Adapter Change-Id: I1ba60143b74e886f132136c7ecc13fd89c349dd4
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
11d0fc38ad8d2e5bb5bc0a282336cabe28dbf9d6 |
|
02-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Rename "retire" to "present" for consistency The HWC2 model has no concept of retire fence beyond HWC2to1Adapter All references to "retire" fence should be called "present" Change-Id: I26540aad9e65f138a4df60a34eaee030f1c17567
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
b7432cc57cd957fb18f68d7976c5829b3a3a7751 |
|
11-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Fix HWC2to1Adapter crashing dragon at startup Some devices such a dragon(ryu) do not start with a valid active configuration id (e.g: -1). This is unexpected from HWC2to1Adapter and resulted in crash at startup when switching the device from HWC1 to HWC2 with adapter. This patch detects this at startup and put the device in an expected configutation using the first configuration index (0). Test: Tested on ryu Change-Id: If2bb258d12636f1b2ebe8c7b167708dbf572fbe8
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
aab99f576b205114eaa5399c8f97b9e175a1c698 |
|
04-Oct-2016 |
Chia-I Wu <olv@google.com> |
surfaceflinger: add support for android.hardware.graphics This adds a new path to HWC2 to use android.hardware.graphics.composer@2.1::IComposer instead of hwcomposer2. Which path to use is determined by whether BYPASS_IHWC is set at compile time. When it is set, the old path, kept for HWC2On1Adapter, is used. When it is not set, the new path is taken. BYPASS_IHWC2 is set when TARGET_USES_HWC2 is not. Test: Maps, Camera, YouTube, etc. Change-Id: I37aceafd1733fa9f76e7f7db4f59ad4776415306
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
9a9816ad3f3e2ee0d52a21e742d9bbdc3ddf25ff |
|
12-Sep-2016 |
Chih-Hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in surfaceflinger." am: 5e703a6ad0 am: 101b4cc9d7 am: 32db2f3c9f Change-Id: Ie75a9e21c634691243d4f5c972f2f2879c48a76e
|
342b760763300593cd20b01dac8cef61e7b25b86 |
|
01-Sep-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix google-explicit-constructor warnings in surfaceflinger. * Add explicit keyword to conversion constructors, or use NOLINT for implicit converters. Bug: 28341362 Test: build with WITH_TIDY=1 Change-Id: I94f511c3be31dc22022db6466ee9ed0c6be2bc8e
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
28f24d0ab481bd9c6fd5618414fee694e837c5c6 |
|
12-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Color transforms are now color modes. Rename color transforms to color modes for all interfaces exposed to surfaceflinger clients. Also split it out to be a separate configuration value from display modes. Bug: 29044347 Change-Id: I87e937f7c954a50c946e8e2c606797caa416c5d8
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
9f26a9c8be6f00f55cbc30b93adf4895c6a093aa |
|
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add support for color transforms Adds support for color transforms using the setColorTransform method of HWC2. This means that instead of always falling back to client composition when applying a transform, SurfaceFlinger will allow the device to make that decision. If all layers fall back to client composition, the SKIP_CLIENT_COLOR_TRANSFORM capability allows the device greater control over whether SF should apply the transform or whether it should allow the device to apply it to the client target buffer. Bug: 19539930 Change-Id: I47a3d5453a3c47a8dd105ab77cce7f9c9687e925
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
38628986f2bb3b392dd4b519aacb9354320e409f |
|
14-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Fix virtual displays Close the output buffer release fence per the contract in hwcomposer2.h. Also changes the HWC2 device to hold a weak pointer to the display, which allows it to properly remove it when it gets torn down. Bug: 29945684 Change-Id: Ib1b5d81e42a63d0e65b189f7c6c62e661e0ab6ae
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
5cf424bc129f01ee12c7a4fbea1664276d29f970 |
|
20-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Fix breakage from header change Updates the shim and adapter to handle the header changes introduced by "HWC2: Add format to VD create, surface damage" in libhardware. Bug: 22767098 Change-Id: I8142301c121d9b5602a4455f3fbadefefd685cf0
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
076ac670262e448c531e6db7727cfade325866ca |
|
14-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add support for color modes Adds support for setting color modes through HWC2On1Adapter and the HWC2 C++ shim Bug: 22767098 Change-Id: I0b7300093ab427be7105a2535fc9db4953b8af1c
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
5df2a86063c6a83813fc1aa3d8938a82f7ff8f14 |
|
25-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up setColorTransform/setLayerDataspace Plumbs the setColorTransform and setLayerDataspace calls through the HWC2 C++ shim and implements a trivial versions in the adapter, which drops non-HAL_DATASPACE_UNKNOWN layers to client composition, and which drops all layers to client composition if a color transform is applied. Bug: 22767098 Change-Id: Ifffd19b77cf3b33ec86fde3f72257f6b97b4dd79
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
09e7a27fabde3da99ba6dfd2fd20be7d1425a9ad |
|
14-Apr-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Check SidebandStream capability on load Checks whether the HWC2 device has the SidebandStream capability before attempting to load the corresponding function pointer Bug: 28161394 Change-Id: I6407d61a1b23138781e57213bcb868be46609018
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
7d7ae7345abfb91be55c4aed6c9be9d09a144e4c |
|
16-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add getHdrCapabilities to C++ shim Adds support for the getHdrCapabilities call to the HWC2 C++ shim. Bug: 25684127 Change-Id: Ib4635ee437a06b48945e7f0328492c1e74e27aaa
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|
651bf314a6a1a77e4cbb66ffb81221200f918290 |
|
24-Oct-2015 |
Dan Stoza <stoza@google.com> |
SF: HWC2 C++ shim Provides an object-based C++ interface to the HWC 2.0 HAL Change-Id: Ie1a7bfd2f6faa548bc45da845a4f50f1915b5806
/frameworks/native/services/surfaceflinger/DisplayHardware/HWC2.h
|