9640da6f89e18e095ff4e1d21feb812a24fd1a32 |
27-Jun-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Last minute log removal. Whoops. Test: Log removed! Change-Id: I4593352cf565603a4507c6ef13504b167d882eec (cherry picked from commit 4e10a52dc5da22b5617069999c9986c59357e2a7)
ayer.cpp
|
65bee228207da4064b09abc4c2b88cd7b797890b |
26-Jun-2017 |
Dan Stoza <stoza@google.com> |
libgui: New mutex for ConsumerBase frame callbacks Adds a new mutex to protect ConsumerBase's mFrameAvailableListener separately from the main mMutex. This prevents deadlocks when trying to perform callbacks in response to other calls that come through ConsumerBase. Bug: 62915791 Test: EncodeVirtualDisplayWithCompositionTest# testRenderingMaxResolutionRemotely Change-Id: I244dc2d83488e452d9690c0d7847c9ff15a95dbb (cherry picked from commit 95971c8172495f7b6a0ede1a3508472b9a4e7b36)
urfaceFlingerConsumer.cpp
|
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)
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
|
c6bf49a946d93d4c2f8e693fb974024ba6bbe9c0 |
22-Jun-2017 |
Fabien Sanglard <sanglardf@google.com> |
Disable skip Validate on client composition SurfaceFlinger should not skip validate when GLComposition is needed. This can happen when SF decides to force GLComposition (like when a screen rotation occurs). Bug: 62906801 Test: Manual Change-Id: I248146eade395a124cb149773287abd88ae36511 (cherry picked from commit 269c2361096cb8a17ea5fedbd20f800cd1b65d05)
isplayHardware/HWComposer.cpp
|
249c0ae80a6e5690d091294c4447cb3facafbc37 |
20-Jun-2017 |
Fabien Sanglard <sanglardf@google.com> |
Skip Validate b/37474580 b/62806392 Test: marlin, ryu Change-Id: I09e0c52cb7c914dcd883dc771d97a365c89f7037
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
fae51c438827ae0a55c1b83c0e9be348254bfbd4 |
15-Jun-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: fix a potential child layer leak We should not remove a child layer from its already removed parent. Call p->removeChild only after we've checked that the ancestor is alive. Apply e6b63e1ae12692327f7e46d5f10d6ade5a7bf192 and this fix to SurfaceFlinger_hwc1.cpp as well. Bug: 37121786 Test: manual stress test Change-Id: I7b811450a998acc4ad9690bd4eda058ce6588e14
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
515dc9c538b8206b746eeb4906ac0b8aed1fb497 |
15-Jun-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: Layer::getParent requires state lock held We rely on mStateLock to synchronize accesses to Layer::mCurrentParent. Bug: 38505866 Test: manual stress test Change-Id: I5f8ec358ed7e35df28f8c6aec31ae6ee51cb5b93
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
e41dbe6ab1d412efd67fdc8344be8da8b19426d2 |
13-Jun-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: distinguish mCurrentParent/mDrawingParent Updates to wp<> is not atomic. We cannot use/update it at the same time from the main thread and a binder thread. With this change, binder threads use mCurrentParent with the external state lock held. The main thread uses mDrawingParent. This is also an alternative fix to bug 62099658 and allows us to revert "SurfaceFlinger: Update parent pointer while performing transaction." Bug: 38505866 Bug: 62099658 Test: boots and no repro (but I can never repro) Change-Id: Id286a437537daaeec5eee5de62b1d9df245ece53
ayer.cpp
ayer.h
|
f456f32e0f9292d71b57b3255cde416b677faac2 |
15-Jun-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: protect Client::mParentLayer with a lock Updates to wp<> is not atomic. Use Client::mLock to protect mParentLayer. Bug: 38505866 Test: camera and youtube work Change-Id: I2739382d5bb99961a47c1011963b6f676d34eec6
lient.cpp
lient.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
isplayHardware/HWC2.h
|
aaef0983baf38bd59b4129dd37e4cd21b73d92ad |
09-Jun-2017 |
Jorim Jaggi <jjaggi@google.com> |
Fix build Test: builds Bug: 36631902 Change-Id: Iec23f8ab2b16c923f07d1857aa3471cfefc057dd
urfaceFlinger_hwc1.cpp
|
b1e2f8deb38353e4bcc9d3ef06bc15bd5e417425 |
09-Jun-2017 |
Jorim Jaggi <jjaggi@google.com> |
Properly run window animations at vsync-sf (2/2) - Add new Choreographer instance that runs on vsync-sf - Use this new Choreographer for WindowAnimator, and remove all the hacks around it Test: Open apps and close apps, notice no stutter Test: Screen zoom animations Test: go/wm-smoke Bug: 36631902 Change-Id: I72a8b39709303a38fc077100229b8a81a153ba3e
urfaceFlinger.cpp
urfaceFlinger.h
|
e6b63e1ae12692327f7e46d5f10d6ade5a7bf192 |
30-May-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: fix layer count When a layer is removed, mLayerCount is always decremented by 1 even though the layer has children. This commit fixes that by making sure mLayerCount is properly decremented, and makes sure that a parent layer must be a valid layer in mCurrentState. Bug: 37121786 Test: manually open and close Camera app Change-Id: I5a3e18be41646b167b4d361dfe08db4d06e1c2d0 (cherry picked from commit 98f1c108b016dda77c808f3d099e7a45bdd70768)
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
41b08b5e97b04d726fb8bbacddbce563a1c890f9 |
02-Jun-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Fix final cropping of child layers. Straightforward mistake documented by the test case. Not sure how it made it this long. Test: Included in Transaction_test.cpp. Manual from bug. go/wm-smoke. Bug: 37511473 Change-Id: I87a57825cca879c5519fe72fef199168f7c23479
ayer.cpp
ests/Transaction_test.cpp
|
98b0fd5fc28b07b6b488bc599a3448ebcacb6acc |
01-Jun-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Update parent pointer while performing transaction. To understand the change at a high level, notice that all the usage of getParent() is assosciated with the drawing state. We see in this way that the parent is a part of the drawing state and should only be updated when transactions occurs. More specifically we can consider the following scenario: 1. Imagine that we have a visible surface, with a visible child surface 2. Now imagine we create a new surface, which is hidden, and post a buffer to it. It is configured such that it would be visible if it were not hidden. 3. We open a transaction 4. We reparent the child from the old surface to the new one 5. We show the new surface 6. We close the transaction At this point we would expect the child to remain visible, as it is atomically reparented with the visibility change of the parent. However prior to this CL we see a flash, as the sequence can continue as follows: 7. Closing the transaction triggers setClientState, causing Layer::reparentChildren which would call setParent updating the parent pointer. 8. setClientState updates the current but not drawing visibility of the new parent and marks a transaction to occur. 9. We return to the main thread, MESSAGE_REFRESH occurs before MESSAGE_TRANSACTION and we render a frame 10. We observe the child window as invisible, as it has the new parent but it's new parent is not yet visible. We simply have to ensure the parent pointer is updated at transaction time. I chose a location in commitChildList where mDrawingChildren was copied from mCurrentChildren as it seemed to express the intent well. Test: Difficult to automatically test. Manually try resizing Chrome/Youtube/etc in docked stack before flicker should be ~1/10 after flicker should be <1/100 (I haven't seen one yet) Bug: 62099658 Change-Id: I3721d16361b53128146510d3fda43e1c12f93223
ayer.cpp
|
d8ac4fd17a71b8b523121186b8a03212cd5122fe |
25-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete SurfaceFlinger BYPASS codepath" into oc-dev
|
5b3cf0576d91358cb850945d89382938ff8dc5ed |
04-May-2017 |
Fabien Sanglard <sanglardf@google.com> |
Delete SurfaceFlinger BYPASS codepath Test: AUPT, Manual Change-Id: I8d6139fbb8a3ec113d7cb973420a5874d3e31030 Merged-Id: I8d6139fbb8a3ec113d7cb973420a5874d3e31030
ndroid.mk
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposerBufferCache.cpp
|
e2fad8108e8b266efc446a9a348b6cb5d8eaebe8 |
23-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes." into oc-dev
|
df8ca52d130dcaa3b2c586570a525ae54622f9f6 |
19-May-2017 |
Logan Chien <loganchien@google.com> |
Merge changes from topic 'move-hwc2on1' into oc-dev * changes: libhwc2on1adapter: Move to vendor partition Remove stale dependency to libhwc2on1adaptor.so.
|
7bf247e2db180da661b18084d50e0b389686fc0c |
18-May-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes. The same sort of thing we had with setPosition...not sure why I didn't realize we would need the fixes here too! In particular we need to ensure the following scenarios work: 1. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize state are eventually applied. 2. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize state are not immediately applied. 3. In LayerRejector.cpp we have to be sure we are not just latching a buffer at the old size, which we still allow. This is the correct time to latch the transparentRegion as it is content dependent, but doesn't represent a size changing. The difference between this and the original CL which was reverted has to do with point 3. The original CL tried to solve point 3 by moving the latching logic from the LayerRejecter in to Layer::doTransaction. However, in general doTransaction will not be called in between Latching the buffer and drawing the frame, so this introduced errors. The new test "FinalCropLatchingBufferOldSize" encapsulates this. Bug: 37621737 Bug: 37531386 Test: Included in Transaction_test.cpp Change-Id: I14bd09d01ac6b85895caa1b707d6fa7dac962074
ayer.cpp
ayer.h
ayerRejecter.cpp
ayerRejecter.h
ests/Transaction_test.cpp
|
3851225fddb6f1755a8034aa7a9f9ae7397b56a9 |
17-May-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: clear HWC layers in Layer::onRemoved v2 Explicitly destroy HWC layers in Layer::onRemoved rather than doing that implicitly in the destructor. The layer may be destructed by any thread that holds a sp<Layer>, but only the main thread should talk to the composer. v2 fixes build breakage for non-HWC2 targets. Bug: 38151478 Bug: 37978067 Test: manual Change-Id: I8858fc46de1fc6facded219740b931c6486e317e
ayer.cpp
|
fb8cedea2730603d6bf95dd10466b2f2660ade9d |
18-May-2017 |
Przemyslaw Szczepaniak <pszczepaniak@google.com> |
Merge "Revert "surfaceflinger: clear HWC layers in Layer::onRemoved"" into oc-dev
|
900e6fc9b9c7353ad919e44e1a45a67426d115c4 |
18-May-2017 |
Przemyslaw Szczepaniak <pszczepaniak@google.com> |
Revert "surfaceflinger: clear HWC layers in Layer::onRemoved" Causing failures due to lack of clearHwcLayers in git_master and few other branches/builds. Looks like clearHwcLayers needs USE_HWC2 to be defined, seems to be not defined in few branches/builds? This reverts commit 06837418fe9fb0c6deeab7d62ac5bf65c7bb2b98. Change-Id: Ic0e3a99b45543503d5fa8a90f3569764ebe922e3
ayer.cpp
|
23429778c41bb54cbbc0067f2151049488554bcf |
16-May-2017 |
Logan Chien <loganchien@google.com> |
Remove stale dependency to libhwc2on1adaptor.so. This commit removes stale dependency to libhwc2on1adaptor. Since commit 831d48ed, mAdapter has become an unused private member. In addition, this unused unique_ptr leads to an unnecessary symbol reference to the destructor of HWC2on1Adaptor. This commit removes them completely. Bug: 38302528 Test: Sailfish builds and boots. Change-Id: I0208d7fb21ff2f5d59d367162bc5f982f1515982 Merged-In: I479f12ddbae91282a13464159f00513aa7cb3208
ndroid.mk
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
e256ecb511720a81870aee3cee8d4c4a6135bf47 |
18-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "surfaceflinger: clear HWC layers in Layer::onRemoved" into oc-dev
|
5c580eaeb6510fee596825d2435182cf9895ae10 |
18-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "surfaceflinger: fix a release fence leak" into oc-dev
|
06837418fe9fb0c6deeab7d62ac5bf65c7bb2b98 |
17-May-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: clear HWC layers in Layer::onRemoved Explicitly destroy HWC layers in Layer::onRemoved rather than doing that implicitly in the destructor. The layer may be destructed by any thread that holds a sp<Layer>, but only the main thread should talk to the composer. Bug: 38151478 Bug: 37978067 Test: manual Change-Id: If6fcfaa5a70d247b751f2b4d9aec9eca890e3aa5
ayer.cpp
|
5e74c65a55e2297228e1c8cf7885420d6a946e80 |
17-May-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: fix a release fence leak We leak release fence fds when we believe hwcomposer2 gives us any invalid layer and return early. Bug: 38151478 Test: boots Change-Id: I299721eca8bc7927052170fe87ee51e9b91006aa
isplayHardware/HWC2.cpp
|
6ad20f7271c05bfa1e7bb4b67a8fa72f4a08756a |
17-May-2017 |
Steven Moreland <smoreland@google.com> |
Add displayservice. This hidl service provides information about vsync and hotplug to vendor services which is required by at least some camera hal implementations. Test: VtsFwkDisplayServiceV1_0TargetTest Bug: 38311538 Change-Id: Ifc344c11ca4b3c8cebc6f0145f506d1aa774506d
ndroid.mk
ain_surfaceflinger.cpp
|
cbcefae07ad1c13f771054dcd769e923ee88a88f |
16-May-2017 |
Rob Carr <racarr@google.com> |
Merge "Revert "SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes."" into oc-dev
|
a3ed032256c475ce13c52b0261da6a5e2ffa77be |
16-May-2017 |
Rob Carr <racarr@google.com> |
Revert "SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes." This reverts commit 1e079c2804edfae77925150280fe79418e58750b. Bug: 38331032 Change-Id: Ib703b7b80a940550487a80d8ad62947e4becae93
ayer.cpp
ayer.h
ayerRejecter.cpp
ayerRejecter.h
ests/Transaction_test.cpp
|
83c9468c809cb0460e4d3de49973265eaabf0a4f |
16-May-2017 |
Rob Carr <racarr@google.com> |
Merge "SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes." into oc-dev
|
1e079c2804edfae77925150280fe79418e58750b |
09-May-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes. The same sort of thing we had with setPosition...not sure why I didn't realize we would need the fixes here too! In particular we need to ensure the following scenarios work: 1. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize state are eventually applied. 2. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize state are not immediately applied. 3. When we latch the buffer completing the resize...current hasn't been swapped to drawing...which means our location in LayerRejector.cpp was the wrong place to update the crop. This raises questions about whether the Transparent region latching works. Bug: 37531386 Test: Included in Transaction_test. Change-Id: I5140d44fd5e591a4afe5bddc201db45f7bcb5674
ayer.cpp
ayer.h
ayerRejecter.cpp
ayerRejecter.h
ests/Transaction_test.cpp
|
15b27e0e63dc1528ab2ddf1875f4d5a029059e5a |
12-May-2017 |
Chia-I Wu <olv@google.com> |
Revert "surfaceflinger: work around dumpsys lockup" This reverts commit 843460d1d8ced54ed224cff2b3fad703b6ea98c4. Bug: 38183197 Test: manual while running dumpDebugInfo continuously in the background Change-Id: Ife3fb2970f58b8c8049bbe878c6a7728d1299d57
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
252e52aa06df85fd93804aa2b7b3e24702b47205 |
11-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Apply correct SELinux labels to PDX endpoint and channel sockets." into oc-dev
|
4ba6f990703f6bd83c5e8557951b9f01c77e0fd8 |
11-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Surfaceflinger: Propagate type & UID from parent layers" into oc-dev
|
2a58963cd96546bc645d05c3d1421a506f42bb64 |
04-May-2017 |
Albert Chaulk <achaulk@google.com> |
Surfaceflinger: Propagate type & UID from parent layers Bug: 36589137 Test: Launch chrome in VR (surfaceview has a parent) Change-Id: I9320a8df249d1d5790323b22f0ba88a792f9468f
ayer.cpp
|
2e252c93ac02ec7a6bfeab69ac2c200c53f35486 |
10-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SF: Use last call time to rate limit resyncs" into oc-dev
|
4a7762afb4fa8495e711fcc2da322fc388e700bc |
02-May-2017 |
Alex Vakulenko <avakulenko@google.com> |
Apply correct SELinux labels to PDX endpoint and channel sockets. Bug: 37646189 Test: Compiled for sailfish-eng Device booted, normal 2D UI works as before Was able to run Daydream app and CubeSea (before O1 VR rendering path was disabled by recent change in HW composer). Change-Id: I1f7040324992d3c784f072ea6b64a65fa7ed0589
urfaceflinger.rc
|
95d4e522448618edb42701f755e0ed768c13fa76 |
09-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Prevent buggy display orientation when exiting vr" into oc-dev
|
57164302da664fc58c3fd3c1ed9980bc1c9bdf1f |
08-May-2017 |
Dan Stoza <stoza@google.com> |
SF: Use last call time to rate limit resyncs SurfaceFlinger has a method which tells it to resync to hardware vsync as long as it hasn't resynced too recently. This is used when we receive a request for a Choreographer wakeup since if it has been a while since we animated, we have likely drifted. To determine whether we should actually resync or whether we should instead rate-limit the call, we compare the current time to the last time we drew, but this is problematic. When we first start animating after a period of inactivity, this triggers a resync every time the method is called until we receive the first frame and draw it, even if we are already mid-resync, which delays the time until we can lock onto the hardware vsync phase and has the side-effect of causing weird wakeup times in both Choreographer and SurfaceFlinger. This change instead keeps a local timestamp which is updated every time the method is called and therefore effectively rate limits even before the first frame is received. Bug: 38117777 Test: ApiDemos/ListView + manual inspection of systraces Change-Id: I7210594f9ed6ed5397bb0f3f14a8966503454643
urfaceFlinger.cpp
|
0e04fe47130add878c12ee4db3c8cf1931efdda8 |
05-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes from topic 'o-compositor-unification' into oc-dev * changes: Remove the VR compositor from the framework. Remove unnecessary clients and rename files. Support multiple consumer queues. Return pdx::Status<T> from BufferHubQueue::Dequeue. Add support for consumer queue initial import and hangup.
|
2251d822dac2a96aad4184a6fdc2690f0a58af7c |
21-Apr-2017 |
Corey Tabaka <eieio@google.com> |
Remove the VR compositor from the framework. Remove the VR compositor framework and enable out-of-process VR composition in VrCore. This CL seems large due to the ripple effect of changing the VrFlinger API and protocol types. There are three major modules that require concurrent changes: 1. Protocol definitions and low-level VrFlinger API in libdisplay. * Additional changes needed to keep old interfaces working for a short time while replacing the dependent code (dvrGraphics*). 2. VrFlinger service implementation changes to support VrCore compositor and the removal of the internal compositor. 3. Changes to libdvr platform library API due to changes in #1 and #2. Because of the nature of the interdependence of types and other defs it is difficult to break this CL into smaller chunks. However, review of the three major modules (libdisplay, libdvr, and libvrflinger) may be done separately to ease the mental burden on reviewers. Change Summary: - Remove obsolete screenshot service. VR screenshots will be implemented by VrCore. - Update display protocol definitions for changes in VrFlinger service requirements. The majority of the changes in libdisplay are a consequence of these protocol and service changes. - Update VrFlinger to support two kinds of surfaces: 1. Application - use by VR apps. 2. Direct - used by VrCore (protected by permission check). - Remove VrFlinger internal compositor and GL context. - Remove obsolete debug console. - Update VrFlinger hardware composer interface to handle direct surfaces only, removing the concept of GPU (compositor) layers. - Update display manager to expose access to application surface info to VrCore (protected by permission check). - Update libdvr platform library interfaces for changes to VrFlinger API / protocol. - Clean up libdvr API struct setup using a common include. - Add C++ header-only helpers for DVR platform library opaque types. Bug: 36401174 Test: Build; run VrFlinger display test tool. Change-Id: I15abfde5f72dbb3725a3f58621486afba6b64902
urfaceFlinger.cpp
urfaceflinger.rc
|
22752851180b26f8d797b3fe5f7e99ad0eeaf7ee |
04-May-2017 |
Tim Murray <timmurray@google.com> |
surfaceflinger: make EventThread FIFO Jitter in EventThread scheduling was contributing to SystemUI jank. Test: thread is FIFO bug 36631902 Change-Id: I930c729b27403ef8941e9a1e0ef8ec57a3d323a0
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
412903fce3a93f411c85c54375a1851bfb370400 |
27-Apr-2017 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Select which layer state to visit Modifies the traverseIn[Reverse]ZOrder methods to also take an enum value specifying whether to traverse the current state or the drawing state. This has the effect of fixing a bug where we weren't performing transactions on a child layer because its parent was only visiting its drawing layers (rather than its current layers) and was thus skipping the child, which had not yet been moved from current to drawing. Bug: 36858924 Test: ChildLayerTest.Bug36858924 doesn't hang Change-Id: I1959f40bc07e77864ba024511d429592a398a67a
ayer.cpp
ayer.h
ayerVector.cpp
ayerVector.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
urfaceInterceptor.cpp
ests/Transaction_test.cpp
|
949c9ce51adbcbdb25d78ee700fd731aa941d577 |
01-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Call validateDisplay() when skipping frames" into oc-dev
|
1725eeeb7db8a2c933dcc9d01cce14e17c76c6e6 |
27-Apr-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Correct extra parent scaling with buffer transforms. We need to account for the buffer transform when calculating the extra parent scaling. Bug: 37673612 Test: Regression test included in Transaction_test Change-Id: Ice21f1ecf3789358646d95c753ee361f50c0d246
ayer.cpp
ests/Transaction_test.cpp
|
0af4b9f88a48a6ecc705b4a8cec3d3ba24c53ead |
26-Apr-2017 |
Steven Thomas <steventhomas@google.com> |
Call validateDisplay() when skipping frames Layer management was getting screwed up in vr flinger in the following scenario: 1. In frame X, post a new buffer to layer L. 2. Decide to skip frame X (e.g. because we're behind our target schedule). 3. In frame X+1, delete layer L. When we skip the frame in step 2, we weren't calling validateDisplay() or presentDisplay() on the hardware composer, so the composer's internal command queue wasn't being flushed. When we called validateDisplay() for frame X+1 the update buffer call from frame X would be run, referencing the deleted layer L, causing a crash. Now we always call validateDisplay() when we change the layer state, even if we decide to skip the frame. I also added code to explicitly clear the Composer object's internal command buffer when we transfer control from surface flinger to vr flinger and back. There were certain cases where there could be commands left in the command buffer after the display handoff. Bug: 37159844 Test: I used an app switcher script that quickly switches vr apps, which would consistently trigger the setLayerBuffer crash. I confirmed with this CL applied I can run the app switcher until surface flinger runs out of file descriptors (that's a separate bug), and I never see the setLayerBuffer crash. I also confirmed from the log output there are no additional hardware composer errors. Change-Id: I85832b87f393754dc6b034eb38f2937d7b58ed74
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
|
edcc0c28f4a6bd342e090ab808d841efc2d016da |
25-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SurfaceFlinger: Fix destruction of relatively Z-ordered layers." into oc-dev
|
5edb1add8b35c0d63645cb53fb175d459a689da5 |
25-Apr-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Fix destruction of relatively Z-ordered layers. We need to explicitly remove a layer from it's Z-order relative when the layer is removed from compositing, and not rely on being the last reference. In particular, at the time we are generating the list of visible layers by traversing, any layer which had just been removed will still be alive (but abandoned) with a ref in the previous list of visible layers. So we will succeed in promotion, and copy it to the new list. This way the layer achieves eternal life even after onRemoved is called. Bug: 36693738 Test: Manual from BR Change-Id: Ic6c3f64ceb0f603e7c0e51b136c23839858aa639
ayer.cpp
|
0e9dcf6657a9101b02e1e1182f6fe3d652679a9a |
25-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Enable access to display/manager socket in surfaceflinger" into oc-dev
|
0cd7619bce422d46a5f2c45ca97734ae467a1b01 |
20-Apr-2017 |
Mike Stroyan <stroyan@google.com> |
Defer surfaceflinger composition until data latch If layer data is not yet ready, latchBuffer will return an empty region. SurfaceFlinger::handlePageFlip will now check if any layer has a queued frame which succeeded in latching data. If no new frame is latched, handlePageFlip will return false. That will defer refresh until the next vsync. That reduces HWC and GPU load, improving framerates. It prevents dEQP tests from timing out on some devices. Test: dEQP-VK.wsi.android.incremental_present.scale_down.fifo.reference Bug: 37439915 Change-Id: Id46c82f79953f3a147af77bb0e8e81a395c606b3
urfaceFlinger.cpp
|
e42e6832662b44b2e927270e12a2975046b26f3c |
20-Apr-2017 |
Alex Vakulenko <avakulenko@google.com> |
Enable access to display/manager socket in surfaceflinger DisplayManager interface is needed by VrCore. Currently the entry point for that service is not accessible outside of `graphics` user group which VrCore is not part of. We need to allow access to that socket (and subsequently use selinux to fine-tune access rights in the future). Bug: 37486608 Test: `lunch sailfish-eng && m -j32` works and device boots Change-Id: I1d1b545ba85aa6700b409fbbdacc330b8302049b
urfaceflinger.rc
|
9b429f41cbd5964f96f9fb746af3b6932e4acc66 |
17-Apr-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Inherit non-transform Scaling from parent. When a Layer is fixed-size, we may apply additional scaling to the buffer not accounted for in the transform. This means that if the WindowManager calls setSize we will scale the parent surface but not the child surfaces, breaking the contract that the WM can treat the child surfaces as pixels in the parent. Test: Included test in Transaction_test. Bug: 36820947 Bug: 37344435 Change-Id: I5478bad176388fe8e5407379bc36cdfd6600ab97
ayer.cpp
ests/Transaction_test.cpp
|
b87e75de6192643ee6abbf87619ff04ce3f4cafd |
15-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Avoid a potential race condition on mDisplays" into oc-dev
|
82386cd4eb194a9bf4b8688cb02317909ba346e0 |
14-Apr-2017 |
Stephen Kiazyk <skiazyk@google.com> |
Prevent buggy display orientation when exiting vr The underlying issue is that the viewport settings were being re-set to (0,0,-1,-1) on every transition to VR. I've instead extracted the vsync period updates, and only apply those, as that was really all we wanted out of it. Bug: 37093920 Test: Compile and run Vr application. The 2d scene is now no longer in the weird landscape viewport with portrait orientation if the phone is in landscape when exiting VR mode. Change-Id: I2bab6e4d834e15f477d1b56991375d1a18a77b8c
urfaceFlinger.cpp
|
5d6d98a1dff7a6de2ea89f5098af0b77e1d5c36a |
14-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Release virtual display hwcId during vr mode transition." into oc-dev
|
7d3dcb9235ec149af2f5139a8a9c6eac859d92e2 |
06-Apr-2017 |
Stephen Kiazyk <skiazyk@google.com> |
Avoid a potential race condition on mDisplays I've now run this on a HWC1 and HWC2 build. Both appear to be running correctly. Original Message: The race could occur when transitioning in/out of VR flinger mode. It is now avoided by ensuring that the primary |DisplayDevice| is always created once |mStateLock| is released, and ensuring that all accesses to the primary |DisplayDevice| are guarded by |mStateLock|. Bug: 36194616 Bug: 37249613 Bug: 37288476 Test: Compiled, installed, and ran with both HWC1 and HWC2 variants. HWC1 was tested on Nexus 6P. Was able to boot, install apps, run apps, turn screen on/off, and reboot phone. HWC2 was tested on sailfish. Was able to boot, install apps, run apps, run VR apps using both N path, and O1 path, turn screen on/off, and reboot phone. Change-Id: I0e80c2553f40cce2116b718bbb0d2566679f794a
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
0556d79eacbf0c9978080d87aa4075120533c7ef |
22-Mar-2017 |
Mathias Agopian <mathias@google.com> |
get rid of IGraphicBufferAlloc Buffers can now be allocated directly through the graphic allocator HAL. Test: marlin: run full camera cts Test: angler: take screenshot, take photo w/ and w/o HDR, video, panorama, refocus, slo-mo Bug: 36462585 Bug: 36333314 Change-Id: Ie5222c53c3b9462e0ac7a41568718aad131eb328
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
c90e469393493ff2dbb96a60abf1c828d9da2012 |
13-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Revert "Avoid a potential race condition on mDisplays"" into oc-dev
|
1b47dfd74909803eecb96e9e8a2695eebcc430a7 |
13-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes Ica5f5f5c,Ifb7d2cec,Ia402b4bc,I9c3b6b7e,I36ba19c7, ... into oc-dev * changes: libgui: Make IGraphicBufferConsumer a SafeInterface libbinder: Add vector<Parcelable> to SafeInterface libbinder: Add sp<NativeHandle> to SafeInterface libbinder: Support enums in SafeInterface libbinder: Support sp<Flattenable> in SafeInterface libbinder: Add int64_t/uint64_t to SafeInterface libgui: Normalize IGraphicBufferConsumer methods libgui: Format IGraphicBufferConsumer
|
8722a310c00557195a0703e95564f31d908ab2d5 |
13-Apr-2017 |
Tomasz Wasilczyk <twasilczyk@google.com> |
Revert "Avoid a potential race condition on mDisplays" This reverts commit 8d6c16dc3dc8b88a0046f53668a4e3be074507ff. Bug: b/37282502 Change-Id: Ibf64607f9e14ede201510e2c1b502c49a31e9f2a
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
430f8eae67ff20c53dd834695fc3259b7eca9093 |
13-Apr-2017 |
Ian Elliott <ianelliott@google.com> |
Merge "Only enumerate display_timing when present timestamp supported" into oc-dev
|
7dcda8011de1753b0d9f4bf640733f83db601cec |
13-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SurfaceFlinger: Add parent-less relative layering." into oc-dev
|
7da46d06f078922c9883adc609ed1c1b83ef3e5f |
13-Apr-2017 |
Iliyan Malchev <malchev@google.com> |
Merge "surfaceflinger: start grahpics allocator when requested" into oc-dev
|
5c34de2c12ab2638fd6b16f1b77dedd0ffa3ab27 |
10-Apr-2017 |
Ian Elliott <ianelliott@google.com> |
Only enumerate display_timing when present timestamp supported Test: CTS and cube demo. Bug: 36887025 Vulkan should only enumerate the VK_GOOGLE_display_timing extension if the device supports reliably returning the present timestamp. Vulkan will determine this by reading a property that SurfaceFlinger will set (based on the HWC2::Capability::PresentFenceIsNotReliable capability). Change-Id: I6025be5f9120a8f02f228b8437b64be4ff8cfb17
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
21d072ac4a4f67b89c465121ace7a9764872aef0 |
12-Apr-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge changes from topic 'presentFenceNotReliable' into oc-dev * changes: egl: Use reserved values for eglGetFrameTimestamps egl: Differentiate pending vs invalid timestamps. egl: Avoid use of retire as present
|
da8490da6221ba2a8762fa04f863bddb4088d587 |
12-Apr-2017 |
Alex Sakhartchouk <alexst@google.com> |
Release virtual display hwcId during vr mode transition. When we recreate the display state during VR mode transition, we were not previously releasing hwcId with vr hardware composer. That resulted in VR using the only VirtualDisplay provided by vr_hwc during the first run. Every subsequent run failed to allocate a new hwcId id. This manifested itself when DON (device on) flow quickly kicked the device into and out of VR mode. Normally the binding is cleaned up when java frameworks destroy the VD upon exiting VR mode, but it does so with a short delay to account for rapid in/out transition, during which the hwcId was getting left behind. Bug: 34281731 Test: Run VR app, launch 2D app in VirtualDisplay, see it on the screen. Close VR app, exit to 2D mode, repeat and observe 2D app in VR again. Change-Id: I8faabdcd3516190ad88d1361c468f7f472ead588
urfaceFlinger.cpp
|
b278404c8766f04648b38a5f4da8872748f78a00 |
30-Mar-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: start grahpics allocator when requested When ISurfaceFlingerConfigs::startGraphicsAllocatorService returns true, start graphics allocator service. Bug: 36462585 Test: YouTube, Play Movies Change-Id: Iac177e96ec89465398ec3eef46208bdb817934e3
ndroid.mk
ain_surfaceflinger.cpp
|
db66e627ad8904491e384c64f82fc77a939b9705 |
11-Apr-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Add parent-less relative layering. This is a temporary functionality for the intermediate state where not all child-surface like things in WM land are ported to use Child Surfaces. In particular, we have ported SurfaceView to use child surfaces and relative Z ordering. However the TV frameworks provide a View framework component which overlays views over the SurfaceView but below the main application window. Since we have not ported View framework surfaces to use child layers, there is nothing the WM or View Framework can do about this situation. Luckily the WM API's to have requested this are @hide but we have the one media framework component using it. In order to solve this issue we provide a method to set Z ordering relative to another window without inheriting its coordinate space as a child window would. This way the WM can recognize these TYPE_APPLICATION_MEDIA_OVERLAY windows and Z-order them at -1 with respect to the parents (and the SurfaceView can be at -2). Test: Included in transaction tests. Also manual test of bug repro steps with accomp frameworks/base CL Bug: 36693738 Change-Id: I921852d3d34f67f79ec745b9703f9e679867e7a1
ayer.cpp
ayer.h
ayerVector.cpp
urfaceFlinger.cpp
ests/Transaction_test.cpp
|
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
|
1636e003355d9dc6c04d4f9701241f3ab364be32 |
12-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "VR: Update VR HWC to use buffer metadata passed by SurfaceFlinger" into oc-dev
|
6b376713907086c9642e7b7e66e51ddfa531b003 |
04-Apr-2017 |
Brian Anderson <brianderson@google.com> |
egl: Avoid use of retire as present Retire fences from HWC1 are implemented inconsitently, so present emulation doesn't always work well. This patch disables present for all HWC1 based devices. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Bug: 36730849, 36887025 Change-Id: I1eba2f8490c2f6feced2a36d1efc4cd66be7da40
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
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
isplayHardware/HWC2.cpp
isplayHardware/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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
8d6c16dc3dc8b88a0046f53668a4e3be074507ff |
06-Apr-2017 |
Stephen Kiazyk <skiazyk@google.com> |
Avoid a potential race condition on mDisplays Update: The HWC1 path needed to be updated in light of a change to SurfaceFlinger.h. The build now works for both paths. Original Message: The race could occur when transitioning in/out of VR flinger mode. It is now avoided by ensuring that the primary |DisplayDevice| is always created once |mStateLock| is released, and ensuring that all accesses to the primary |DisplayDevice| are guarded by |mStateLock|. Bug: 36194616 Bug: 37249613 Test: Compiled for both HWC1 and HWC2 surface flinger builds. Normal behavior is unchanged. Explicitly testing the race condition required instrumenting code with sleep statements. Change-Id: I0b00e857a3b2fd01948a888db2f0715d2a8204c1
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
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
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
ayer.cpp
|
0c9a1ed91f8e19887ac43eff5af16e59878c8226 |
07-Apr-2017 |
Dan Stoza <stoza@google.com> |
libgui: Normalize IGraphicBufferConsumer methods This change modifies IGraphicBufferConsumer such that all synchronous methods return a status_t and, as such, all outputs are returned by output parameter rather than return value. It also eliminates the use of a const char* parameter that SafeInterface can't handle. Test: m -j + libgui_tests + manual testing Change-Id: I9bb0e2892492d5e0a3f660bf228834b9ed014539
urfaceFlingerConsumer.cpp
|
80c02320c49f5f6e1cb2651620fa31de551502a7 |
10-Apr-2017 |
Polina Bondarenko <pbond@google.com> |
Revert "Avoid a potential race condition on mDisplays" This reverts commit 5576a555a14edd8c76addce2cee37b9b9ced2c3f. Change-Id: I5d5889fccd94acacfbfef29847e4b65ef2543c75
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
5576a555a14edd8c76addce2cee37b9b9ced2c3f |
06-Apr-2017 |
Stephen Kiazyk <skiazyk@google.com> |
Avoid a potential race condition on mDisplays The race could occur when transitioning in/out of VR flinger mode. It is now avoided by ensuring that the primary |DisplayDevice| is always created once |mStateLock| is released, and ensuring that all accesses to the primary |DisplayDevice| are guarded by |mStateLock|. Bug: 36194616 Test: Normal behavior is unchanged. Explicitly testing the race condition required instrumenting code with sleep statements. Change-Id: I1f8fcf23982c311d47267beca8127b6c29562ce5
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
42b5469646974552d2de5b0e89c04ccda0d48159 |
06-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes I2f531131,Ibaaca2a1,Ib0cba4c7,I5ea748b8,I046e3f07, ... into oc-dev * changes: libgui: Make IDisplayEventConn... a SafeInterface libgui: Remove RefBase from BitTube libgui: Make BitTube Parcelable and use unique_fd libgui: Format BitTube and move into gui namespace libgui: Move BitTube out of system include dir libgui: Normalize IDisplayEventConnection methods libgui: Format IDisplayEventConnection
|
6b698e4fe4ff50dcef818452283637f9870ae770 |
03-Apr-2017 |
Dan Stoza <stoza@google.com> |
libgui: Remove RefBase from BitTube Removes RefBase from BitTube, since because it is not a Binder object, it doesn't need to be reference-counted in this way. In the process, we rename IDisplayEventConnection::getDataChannel to IDEC::stealReceiveChannel to make it clearer that this is a non-const operation on the remote end that removes its access to the receive channel. This also adds a couple of methods for moving the receive file descriptor out of one BitTube and into another, since this is the essence of the IDisplayEventConnection::stealReceiveChannel method, and now with C++11 move semantics, we can do this without needing to return an sp<> from EventThread's implementation of stealReceiveChannel. Test: m -j + manual testing Change-Id: Ibaaca2a14fb6155052fe5434c14bc3e671b43743
ventThread.cpp
ventThread.h
essageQueue.cpp
essageQueue.h
|
7d290174b08a56ae6bc6719bec58805ca38b348b |
01-Apr-2017 |
Dan Stoza <stoza@google.com> |
libgui: Make BitTube Parcelable and use unique_fd This change completes the Parcelable interface for BitTube (it was semi-Parcelable before as it implemented writeToParcel, but this adds the complementary readFromParcel). It also changes the send and receive file descriptors from ints to android::base::unique_fds, which simplifies some of their lifecycle management. Finally, it changes the default constructor to leave the class uninitialized, adding a BitTube(BitTube::DefaultSize) constructor to replace that functionality (and paving the way for the ability to default-construct a BitTube prior to readFromParcel'ing into it). Test: m -j + manual testing Change-Id: Ib0cba4c7c443b449a9a1837f07f7334395d4f10d
ventThread.cpp
|
27c8115510cebda13cbe24fd4caa946ea9c5003c |
01-Apr-2017 |
Dan Stoza <stoza@google.com> |
libgui: Format BitTube and move into gui namespace Reformats BitTube using the framework default .clang-format and moves it into the android::gui namespace. Test: m -j + manual testing Change-Id: I5ea748b809f37c2ec4dcfb41e7b84daf7a084368
ventThread.cpp
ventThread.h
essageQueue.h
|
e1c599b52fcce94bd27ebbc4d74cd59c9e71b452 |
31-Mar-2017 |
Dan Stoza <stoza@google.com> |
libgui: Normalize IDisplayEventConnection methods This change modifies the IDisplayEventConnection API such that every synchronous method returns a status_t (to be able to return transport errors). This required changing getDataChannel to return its channel by output parameter rather than return type. Currently no more error messages are checked than before, but this will both enable calling code to check error messages if it desires and, more importantly, allow the Bp/Bn code to be semi-automatically generated using SafeInterface. Test: libgui_tests + manual testing Change-Id: I8d5bc5ef0475cee07b638a97079b234f0384c022
ventThread.cpp
ventThread.h
essageQueue.cpp
|
4f20f9cf3268dad96d9064dcb0e4a11aae96f6f3 |
06-Apr-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
ifdef HWC2 functionality Fix build issue for devices that are not using HWC2. Test: lunch hikey-userdebug; make Change-Id: I47e9aa09b8db3f0dca6d733e2c8f3b59c45547b2
isplayDevice.cpp
enderEngine/GLES20RenderEngine.cpp
urfaceFlinger_hwc1.cpp
|
f0f8a81d06d129f92dd593812a03eaefdefeb6b2 |
06-Apr-2017 |
Marco Nelissen <marcone@google.com> |
Merge "Make sure all HWC2 functionality is ifdef'd" into oc-dev
|
ebeed4917b6a341a6287141f3755a750ab4431cb |
06-Apr-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Make sure all HWC2 functionality is ifdef'd Fix build issue for devices that are not using HWC2. Test: lunch bat_land, make Change-Id: If94222cd00f2c8b0b1f7a464ad0378224fc059e7
isplayDevice.cpp
|
b324457171474f02e793d3a669b14c8c24e23008 |
06-Apr-2017 |
Daniel Nicoara <dnicoara@google.com> |
Merge "VR: Remove HIDL VR Composer from service/vr/vr_window_manager" into oc-dev
|
62dc1344e05b1a5d4d1e4979bfbf255a3dbb7961 |
06-Apr-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Merge changes I9da985a7,I2bd642aa,I9358b3c9,I9d3c60b1 into oc-dev * changes: Add test for FP16 surface support Dump info about wide-color Add wide-color support to SurfaceFlinger Add debug string functions for graphics.h enums
|
409c6eecdca80e95a110d63bc70b1c2dfcf49100 |
24-Mar-2017 |
Alex Vakulenko <avakulenko@google.com> |
Make init process create PDX sockets for services To help us control the creation of PDX sockets and properly labeling them for SELinux, let the init process create sockets for us based on the settings specified in .rc files for service processes. For (test) services that are meant to be started manually from command line (e.g. test services), keep the old functionality as an option so that UDS endpoint can be created in a way that it automatically creates the socket in the service itself. Bug: 35220925 Test: `m -j32` succeeds. Ran sailfish in VR mode and made sure all the services (surfaceflinger, performanced, sensord, bufferhub). `m -j32 checkbuild` succeeds as well. Change-Id: Ief733b41b534cea19b1bea31de76b06051aa50ab
urfaceflinger.rc
|
f3b2de10caa2a96e65f3e8ebecb2730ff28aeeb1 |
27-Mar-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Dump info about wide-color Test: adb shell dumpsys SurfaceFlinger Look for section titled "Wide-Color information:" Bug: 29940137 Change-Id: I2bd642aa026b49bbb9effd5cb1687c7a36dae684
enderEngine/GLES20RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
5d94389241cc651e6bd327ab80eba3ad476f3724 |
22-Mar-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Add wide-color support to SurfaceFlinger Test: manual testing Bug: 29940137 Change-Id: I9358b3c982e0205e598fd20cbf8d2e956591b3ac
isplayDevice.cpp
isplayDevice.h
ayer.cpp
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
585e32faccaf80cf51e8148959abfbee49624b97 |
30-Mar-2017 |
Jaesoo Lee <jaesoo@google.com> |
import configstore-utils as a shared library. android.hardware.configstore-utils is now built as a shared library. Bug: 36275627 Test: Built and check the boot log messages Change-Id: I44b0f6a69e267f670380e18a37a519bb2ef1ee84
ndroid.mk
|
95a99a1d3cdbd19343d0d27271098c9c01a63e78 |
21-Mar-2017 |
Daniel Nicoara <dnicoara@google.com> |
VR: Remove HIDL VR Composer from service/vr/vr_window_manager Moved into frameworks/hardware/interfaces Bug: 35570958 Test: Compiled and ran on device Change-Id: I735096935a06e4dd6a8fc1d719c73ad11e9c1583
ndroid.mk
isplayHardware/ComposerHal.cpp
|
f60ab4119e64c642f519ef7994482e72bd11f0cb |
04-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "add surfaceflinger and servicemanager to animation class" into oc-dev
|
c3bae03442d8e7e9f46b3cf754d51a738a40f4a9 |
02-Apr-2017 |
Cody Northrop <cnorthrop@google.com> |
Merge "surfaceflinger: Generate unique layer names" into oc-dev
|
bc7552874052ee33f1b35b4474e20c003d216391 |
31-Mar-2017 |
Cody Northrop <cnorthrop@google.com> |
surfaceflinger: Generate unique layer names Add a counter to layer names to make it clear when there are duplicates. layer foo#0 layer foo#1 layer bar#0 layer bar#1 layer bar#2 Bug: b/32543755 Test: Build, install, run game with duplicate layers, see unique names. Change-Id: I915531d7adbdc506c429b86a685665fb6c56d25e
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
dac30b4bbfba384148a906d0b973500ce5c78882 |
23-Mar-2017 |
Keun-young Park <keunyoung@google.com> |
add surfaceflinger and servicemanager to animation class - necessary for running shutdown animation bug: 36526187 Test: many reboots Change-Id: Id26f5747a8903e91db8499093a489409dcafa129
urfaceflinger.rc
|
5cee136dd4f9ee18ea600f0dc6e6f45f786cd097 |
26-Mar-2017 |
Alex Sakhartchouk <alexst@google.com> |
Allow VirtualDisplay's to use hardware composer when in VR mode even if physical composer does not support them. Bug: 36071574 Test: Applied remaining wip patches, launched 2D activity while in persistent VR mode. Observed 2D activity rendered in VR in VirtualDisplay. Further, instrumented SurfaceFlinger code to ensure DisplayDevice's are created and destroyed with proper composers during VR mode transition. Change-Id: I12b09f1209fcf33f97abfd77e14c6ce61f45a5e9 (cherry picked from commit d38ec4e294eadd4f655476fc90b675c78c1c8740)
urfaceFlinger.cpp
|
34ca5f2ab8cc891957567915def5bc32a36e6d82 |
30-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add alpha channel for the EGLConfig" into oc-dev
|
2b2c710d3abf18883fff9d972f8884a898899292 |
21-Mar-2017 |
neo.he <neo.he@mstarsemi.com> |
Add alpha channel for the EGLConfig If the alpha channel is not assigned,the framebuffer will be Opaque. And it will mask the underlying video and make the video invisible when play video width mediaplayer cherry-picked from AOSP master Issue: b/36025630 Test: clean build and boot PixelC Change-Id: If756ad2aaa789f6ddb178333b3e8854f52c8eac3
enderEngine/RenderEngine.cpp
|
cae605cd5668f8107e340ad8a672c7f034147401 |
29-Mar-2017 |
Robert Carr <racarr@google.com> |
Fix seamless rotation with SurfaceView WM bypass. First a brief review on seamless rotation. In seamless rotation the WM will do the following atomically: 1. Update the display transform. 2. Set window transforms to make the surfaces at their old size appear at the correct location in the new coordinate space. 3. Set a flag to undo the transforms when the surfaces resize. However, windows with NATIVE_WINDOW_TRANSFORM_DISPLAY needed to be special cased. The flag will perform step 2 in terms of buffer mapping, but not in terms of bounds computation. So to compensate the WM would apply the transform to the bounds, set these bounds, and then skip applying the transform matrix (as the buffer is transformed by the flag). Now that the WM can't see the Camera view, it can't implement this special logic and the Camera view inherits the parent transform. We compensate for this in SurfaceFlinger by omitting parent rotation transform components for Surfaces with NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY. To some extent this breaks arbitrary rotation for surfaces with NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY but this is essentially ok: 1. We lived with that bug until N-MR1 2. We fixed it in N-MR1 because the camera was falling back to ROTATE a lot which shouldn't be happening anymore, following introduction of specifying rotation animation in manifest. Test: Rotate camera, disable HWC, rotate camera some more. Switch to front camera, repeat. Bug: 36230754 Bug: 36727915 Change-Id: Ied390c9cb3968fcce32a84ee7947f699746fdc81
lient.cpp
lient.h
ayer.cpp
|
e96afe6e91efd036089a6b6c42a855bdec4308ec |
24-Mar-2017 |
Daniel Nicoara <dnicoara@google.com> |
VR: Rename HIDL service name from vr_hwcomposer to vr This is part of an effort to simplify service names. Bug: 36564122 Test: Ran on device and verified SurfaceFlinger connects to vr_wm Change-Id: I3e2a2b778f3f0d2066bf5b756263de4b238b2f83
isplayHardware/ComposerHal.cpp
|
6fb9ca7b3c40b0f75ccd40a9d49b63d7051424f2 |
23-Mar-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Missed changes in HWC1. Fix build error. Apparently HWC1 isn't in presubmit anymore. Test: Manual Change-Id: Id173d71be62b8a3c888943c57c0ae0ec511bc94b
urfaceFlinger_hwc1.cpp
|
6452f12c95e855a96ab8f690f28914cd37de762b |
21-Mar-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Inherit Alpha for child surfaces. Necessary for various animations to work correctly and for the general goal of treating child surfaces like pixels in the parent surface. Test: Includes new test in SurfaceFlinger_test Bug: None yet ;) Change-Id: Ic8309518bd327bbba6ad2f79f265e24cf37898e7
ayer.cpp
ayer.h
ests/Transaction_test.cpp
|
8b71dc3c7e57c2cbed47934c00bb440ac43f3832 |
21-Mar-2017 |
Robert Carr <racarr@google.com> |
Add SurfaceFlinger test filter for presubmit. HWC2 tests and SurfaceInterceptor tests aren't yet passing. See second attached bug for more context on test filters for pre-submit. Test: Verify Surfaceflinger_test.filter appears in output folder after build. Bug: 36117490 Bug: 36359778 Change-Id: If3199d7c005722c235f065766f2961e2ed2d6e0d
ests/Android.mk
ests/SurfaceFlinger_test.filter
|
8d5227b8416b099c884429312daf2d60496fa484 |
16-Mar-2017 |
Robert Carr <racarr@google.com> |
Include finalCrop in setGeometryAppliesWithResize. A refresher on this archaic function. Normally window crop and position apply immediately. This is so the window manager can always crop surfaces (e.g. while docked resizing) even if the app is lagging behind. In some cases though the apps position or cropping may depend on whether the resize has occured or not. For example when an app gains shadows, we need to move expand the Surface and move it by a negative offset for the content to remain in the same place. This movement needs to be synchronized with the buffer latching for the expansion. We implemented setGeometryAppliesWithResize to take care of this. At the time it wasn't clear if it was needed for finalCrop so we let it be. Now that we are exclusively using final crop in the pinned stack however it is required. The same way we have an issue with position and shadows, we have an issue with expanding the crop rect (we may have actually been cropping out part of a larger surface that is now supposed to be shadows). Also includes a test suite for setGeometryAppliesWithResize behavior which was previously untested. Bug: 35396882 Test: SurfaceFlinger_test Change-Id: Ie4d32162eb21154496bb231161692d18341a1e1e
ayer.cpp
ayer.h
ayerRejecter.cpp
urfaceFlinger.cpp
ests/Transaction_test.cpp
|
1971b63aa4d82db37794f19e0eb01feb1826e422 |
10-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Use max acquired buffer setting to configStore Change-Id: I48454243bcac12f5a83d080cd9115686f9f728ca
ndroid.mk
isplayDevice.cpp
isplayHardware/FramebufferSurface.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
4d8f53906fa71ab3850e0fbdb62573b7b1f90deb |
21-Mar-2017 |
Steven Thomas <steventhomas@google.com> |
Merge "Revert "Revert "Tie vr flinger to persistent vr mode"""
|
d8ab4396a858a9c929a1bb3cadf7705fb8061574 |
21-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "egl: Remove retire event."
|
050b2c83304bd16ec3a838da08b6ba6acf6a3af4 |
06-Mar-2017 |
Steven Thomas <steventhomas@google.com> |
Revert "Revert "Tie vr flinger to persistent vr mode"" This reverts commit 7480c060cb3466d97ec3125d61bbace153f534c8. Transfer display control to vr flinger when persistent vr mode is entered, rather than when vr mode is entered. This allows cardboard apps, which will invoke vr mode but not persistent vr mode, to work as in N. This activates vr flinger at device boot for Daydream ready devices, which fixes an issue where an app would attempt to create a surface before vr flinger was running, which would hang indefinitely. The VrManager listener for persistent vr mode is put in vr flinger instead of surface flinger. This is cleaner since the vr interaction with the rest of the device is now consolidated in vr flinger. While testing I encountered a problem where vr flinger was given control of the display but vsync was turned off, causing vr flinger's post thread to hang. I changed the vr flinger logic to give control over vsync and other display settings to the post thread, and took the opportunity to further simplify and improve vr flinger's thread interactions. Bug: 35885165 Test: Manually confirmed that when persistent vr mode is not invoked we get the N-based render implementation, and when persistent vr mode is invoked we get vr flinger. Change-Id: I3b5ad599cc0748e38b861c714c4cc3118f854acf
ndroid.mk
urfaceFlinger.cpp
urfaceFlinger.h
rStateCallbacks.cpp
rStateCallbacks.h
|
7480c060cb3466d97ec3125d61bbace153f534c8 |
21-Mar-2017 |
Jin Qian <jinqian@google.com> |
Revert "Tie vr flinger to persistent vr mode" This reverts commit f43d13e4e35ae7d3cdafc4b97c819669d42cef78. Change-Id: Ib67db8e51b7ea2dbbe6faccce36962bf5b44a6e2
ndroid.mk
urfaceFlinger.cpp
urfaceFlinger.h
rStateCallbacks.cpp
rStateCallbacks.h
|
f43d13e4e35ae7d3cdafc4b97c819669d42cef78 |
06-Mar-2017 |
Steven Thomas <steventhomas@google.com> |
Tie vr flinger to persistent vr mode Transfer display control to vr flinger when persistent vr mode is entered, rather than when vr mode is entered. This allows cardboard apps, which will invoke vr mode but not persistent vr mode, to work as in N. This activates vr flinger at device boot for Daydream ready devices, which fixes an issue where an app would attempt to create a surface before vr flinger was running, which would hang indefinitely. The VrManager listener for persistent vr mode is put in vr flinger instead of surface flinger. This is cleaner since the vr interaction with the rest of the device is now consolidated in vr flinger. While testing I encountered a problem where vr flinger was given control of the display but vsync was turned off, causing vr flinger's post thread to hang. I changed the vr flinger logic to give control over vsync and other display settings to the post thread, and took the opportunity to further simplify and improve vr flinger's thread interactions. Bug: 35885165 Test: Manually confirmed that when persistent vr mode is not invoked we get the N-based render implementation, and when persistent vr mode is invoked we get vr flinger. Change-Id: Ieeb8dabc19e799e3179e52971f3b63f5a8f54b3b
ndroid.mk
urfaceFlinger.cpp
urfaceFlinger.h
rStateCallbacks.cpp
rStateCallbacks.h
|
757b4ec4b453cd8e58b4d67d8ac79a73a1046bbd |
18-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix getFrameTimestamp test flakes."
|
03c73d0fe5215aebf0f4596b811a51f92dd19c1d |
18-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Use hasSyncFramework value from configStore"
|
cbf153bedf2eafc1443bbc97c4e74f97e7973edd |
11-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Use hasSyncFramework value from configStore Change-Id: I41c6b1a26001eb6ba08cbc419dc8a683f5722aa3
ndroid.mk
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
9551fd3acc2b0bbdfed02ed2bf97c5e560933abe |
21-Oct-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Add getDataSpace to layer class Test: TBD Change-Id: I1d583bc6dae4cfb1569f053b2480e94b6ca9cc6f
ayer.cpp
ayer.h
|
62caf7cf7620d89a80247abc786b437597fbcbfb |
14-Mar-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Set default color mode to trigger update Start with invalid color mode so that we are sure to call downstream for any setColorMode. Test: manually verify display is in sRGB mode Change-Id: Iaf511fac1e4cd8acef149528877188708c96856f
isplayDevice.cpp
|
4e606e3901b500bdd0f3ea21b8cb63734087bf0a |
16-Mar-2017 |
Brian Anderson <brianderson@google.com> |
egl: Remove retire event. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: Ibf63d22e42ae52307662107eec50f80de0e703f5
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
c8e387edfcead55b6e6fb1d05db279c264b644fa |
10-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Use configStore for maxVirtualDisplay Size Test: Manual and AUPT Change-Id: I17ec13f782a7c7c693d84d11c9b5e87624ee71d0
ndroid.mk
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
8c02341c732956b282f11744501cc6a97ac165dc |
17-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Revert "Use configStore for maxVirtualDisplay Size" This reverts commit 56a5dbd3b050cbfd324308d224c7d12f4aec3320. Change-Id: I66224bb48d3146846200ff7f2d5a66d1d8ff5cf7
ndroid.mk
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
56a5dbd3b050cbfd324308d224c7d12f4aec3320 |
10-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Use configStore for maxVirtualDisplay Size Test: Manual and AUPT Change-Id: Iefc09b06ab473c4029756279920135761547dd65
ndroid.mk
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
a34ed639c3057b99da0fb703beb12827e30aa508 |
14-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Use forceHwcCopyForVirtualDisplay in configStore Test: Manual Change-Id: Ie6f816cf8f48b1cca41d51f40e9f0ae49aef2908
ndroid.mk
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
d001058145c2186f454a3fb043388d6d9b84c9d8 |
07-Mar-2017 |
Brian Anderson <brianderson@google.com> |
Fix getFrameTimestamp test flakes. This fixes both the dEQP CTS flakes relating to compositor timing and the lib_gui test flakes that don't initialize properly. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Bug: 35995043 Change-Id: If8e59f0dc9a916bab28bd1a36190cef9a56cb64f
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
f9e6033ea896e43d962a81c13d2b65d952955450 |
16-Mar-2017 |
Romain Guy <romainguy@google.com> |
Merge "Revert "Get rid of IGraphicBufferAlloc""
|
f8b4ca51111cd2e566d1774ac464da859db78976 |
16-Mar-2017 |
Romain Guy <romainguy@google.com> |
Revert "Get rid of IGraphicBufferAlloc" This reverts commit 78491c9f694cb0767996503c629776a8eda950d7. Change-Id: I78d5c0a30ab80265f697f681387872b6763b2d1e
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
d4639b1eae0d934ad47b260315416fb7b8026a50 |
16-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Get rid of IGraphicBufferAlloc"
|
78491c9f694cb0767996503c629776a8eda950d7 |
15-Mar-2017 |
Mathias Agopian <mathias@google.com> |
Get rid of IGraphicBufferAlloc This reverts commit 527747dce1ab4714bd424e5c1a25ebad3506c2cb. selinux policy allowing this change fixed. Test: took a screenshot Test: ran ImageReaderTest CTS Bug: 36194109 Change-Id: I72ac17b6c252750aa2a66cd1d94bd8b4e21b5e9d
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
373a0800cec4258a1bc77a6e1e556af830cb2879 |
16-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "[SF] Use presentTimeOffset from configStore"
|
9f3283a11aa74e2afdcde38d290f08323c537456 |
16-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add a simple SurfaceFlinger stress test."
|
c45a7d9dfdefa07512c5acc07bcbee5362b34e3d |
14-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SF] Use presentTimeOffset from configStore Change-Id: If9c872c565e68e8abe552ee11d2c7d48f44aec4b
ndroid.mk
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlinger_hwc1.cpp
|
eb8939942d917c8f4b200a4cdafdf8c39aacff82 |
10-Mar-2017 |
Robert Carr <racarr@google.com> |
Add a simple SurfaceFlinger stress test. Obviously such tests are always a little arbitrary but this one seems pretty useful. It runs in ~2 seconds, I got 10 passes in a row with the fix for 36117490 applied, and 3 system restarts in a row (before giving up) without the fix applied. Clean up the other tests in preparation for presubmit enabling. Test: Quis custodiet ipsos custodes? Bug: 36117490 Change-Id: Ifef2ff4e51aa9af193ddf003fe4aba053b28738f
ndroid.mk
ests/Android.mk
ests/Stress_test.cpp
ests/SurfaceInterceptor_test.cpp
|
f25db04cd8b2a840afae31d1f310298f8bbb65b0 |
15-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Make IGraphicBufferProducer a hybrid interface."
|
c1cef847e1dcaa0619ebb4daf12dd3a3112c0634 |
15-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "[SF] Delete unused NEVER_DEFAULT_TO_ASYNC_MODE"
|
db910d4906667019de79eec44b1873bd8c2f2437 |
15-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SF] Delete unused NEVER_DEFAULT_TO_ASYNC_MODE Test: AUPT Change-Id: I0abbbdcbd2a7ccb2b60514b54e600eb9489dc6a4
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
bb68dcc8af3833e8d15102d898909563778bee85 |
15-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "test-hwc2: fix build error from ui/mat4.h include"
|
ff4bc528be20936c496d4fbf006c97f7972dc8ff |
15-Mar-2017 |
Marissa Wall <marissaw@google.com> |
Merge "test-hwc2: fix build errors on other branches" am: ea8d46f1ab am: acfd2a846b am: 96074086df Change-Id: Iac974deaf0c4a0df9512ff666ff382a18ad270b6
|
acfd2a846b54e9d630ed3d34cca9ad8cbd9f1f09 |
15-Mar-2017 |
Marissa Wall <marissaw@google.com> |
Merge "test-hwc2: fix build errors on other branches" am: ea8d46f1ab Change-Id: I15fb43deec4eac3bb2867fa4dd101606cb593389
|
bd7ba140b3898f2a3a671311744600fb60b40053 |
15-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "[SurfaceFlinger]Use configStore useContextPriority"
|
dde19448624ca514e0598f0343029c1ca4960c05 |
14-Mar-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: fix build error from ui/mat4.h include ui/mat4.h is located at math/mat4.h on internal master. Change test cases to reflect that. Test: run the test-hwc2 tests Change-Id: I1d2fb59efc2fcea40dc901664dc43841c5454353
ests/hwc2/Android.mk
ests/hwc2/Hwc2TestBuffer.cpp
|
0fa8676f2f301bc2a071a2ded35e21fcb9323212 |
14-Mar-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: fix build errors on other branches Currently, test-hwc2 does not build on other branches due to differences in GraphicBufferAlloc. Switch to directly allocating graphic buffers. Test: run the test-hwc2 tests Change-Id: I63a058a9b0bf48d1e3236f5e124ecaa1dfb4593a
ests/hwc2/Hwc2TestBuffer.cpp
ests/hwc2/Hwc2TestBuffer.h
|
c93afd54a05497c4ae42db99ea0310ee69cca492 |
13-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SurfaceFlinger]Use configStore useContextPriority Change-Id: I329b5da0e92822eb0878c8866c8ab87ea13f7e07
ndroid.mk
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
2676e92d321ad7ad5c16ecbd1313505c7396511f |
14-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "Revert "Add a simple SurfaceFlinger stress test.""
|
b7fbaf2c2e11f62f273059955730e7f24f0d7be5 |
14-Mar-2017 |
Rob Carr <racarr@google.com> |
Revert "Add a simple SurfaceFlinger stress test." This reverts commit 2d906b41c0720ba90fab20fe4ddae2400f9bbbd7. Reason for revert: Semantic conflict introduced build break... Change-Id: I3dbd11a8f73ab2636a732693639edcf869be8033
ndroid.mk
ests/Android.mk
ests/Stress_test.cpp
ests/SurfaceInterceptor_test.cpp
|
57f7d10741b0a9f67d0f615d901825ea9547b962 |
13-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "Add a simple SurfaceFlinger stress test."
|
975e49a2ae848ef7d2b9d9ad8ea1afad656f037b |
13-Mar-2017 |
Chia-I Wu <olv@google.com> |
Merge "Revert "get rid of IGraphicBufferAlloc""
|
527747dce1ab4714bd424e5c1a25ebad3506c2cb |
13-Mar-2017 |
Chia-I Wu <olv@google.com> |
Revert "get rid of IGraphicBufferAlloc" This reverts commit 1da94dfed674e94edc37cdc8ef68530520edf169. Bug: 36176799 Bug: 36175706 Change-Id: I6dd5fe8df564f0efa4392a800fb316e27a05076e
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
a96d2f1d7e27b307dbc6eed6eef53f36bdb28ce2 |
13-Mar-2017 |
Marissa Wall <marissaw@google.com> |
Merge changes from topic 'test-hwc2' am: 29943c1971 am: 92360b14a0 am: d47b3c13da Change-Id: I616fe5646001c45933d466ee77824dc435819c5b
|
92360b14a0f81b4562361546a763c83ddee3c4e6 |
13-Mar-2017 |
Marissa Wall <marissaw@google.com> |
Merge changes from topic 'test-hwc2' am: 29943c1971 Change-Id: I69fdf5bf2ff8f2c454e2e1a455e4d8d73b330aa3
|
64899fa75bac8f82bc1db5131fa51bffe0ee7957 |
11-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete SurfaceFlinger CFlags (phase offset)"
|
2d906b41c0720ba90fab20fe4ddae2400f9bbbd7 |
10-Mar-2017 |
Robert Carr <racarr@google.com> |
Add a simple SurfaceFlinger stress test. Obviously such tests are always a little arbitrary but this one seems pretty useful. It runs in ~2 seconds, I got 10 passes in a row with the fix for 36117490 applied, and 3 system restarts in a row (before giving up) without the fix applied. Clean up the other tests in preparation for presubmit enabling. Test: Quis custodiet ipsos custodes? Bug: 36117490 Change-Id: Ieb9a113f5b21ffb4b8ccd933069ab44e0a2b7a9d
ndroid.mk
ests/Android.mk
ests/Stress_test.cpp
ests/SurfaceInterceptor_test.cpp
|
cb765401a080a2c80eb562478263129a4f2483df |
10-Mar-2017 |
Chia-I Wu <olv@google.com> |
Merge "surfaceflinger: simplify HWC buffer cache clean up"
|
bcfc105c17c3991f46f4ee9cc7a2c628d8e453a6 |
10-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Delete SurfaceFlinger CFlags (phase offset) These config values are now coming from configStore. Test: Manual Change-Id: I7128e926dbeaf5763749131b328bcf51576f9bee
ndroid.mk
|
3e3474eaadc5a1ed345bb866f1469e5a4658327e |
10-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Re-add mistakenly removed lock in SurfaceFlinger::removeLayer."
|
4e67f0f8c13c4777bccbcd527ff18584c3ccc93a |
10-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "[SurfaceFlinger] Use sf phase offset from CS"
|
7f9b899c33c5d69597bc676c0bee828819c97a0f |
10-Mar-2017 |
Robert Carr <racarr@google.com> |
Re-add mistakenly removed lock in SurfaceFlinger::removeLayer. Lock was mistakenly removed with "Add detachChildren transaction" when refactoring the weak-pointer to a strong-pointer. Test: I will try and follow up with a stress-test in Transaction_test. Bug: 36117490 Change-Id: I94171c86334bb52b974392186e1c3ebbf9f33a05
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
aaff73f92a2fcadda8c765eb9b02f2849418a873 |
13-Feb-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: simplify HWC buffer cache clean up When a Layer is no longer connected, we destroy the associated HWC layers on next call to SurfaceFlinger::rebuildLayerStacks or when the Layer is destroyed. There is no need to listen to onBuffersReleased. Besides, we need to perform the cleanup from the main thread as we only talk to HWC process from the main thread. While at it, move HWComposerBufferCache to its own files. Bug: 35320590 Test: manual Change-Id: Ifa32f24076b094c8fa9cda8572b03d5bfb8e0b93
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposerBufferCache.cpp
isplayHardware/HWComposerBufferCache.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
6e1193af40c870c50013affec37c8429986b3c7b |
07-Mar-2017 |
Pawin Vongmasa <pawin@google.com> |
Make IGraphicBufferProducer a hybrid interface. android::IGraphicBufferProducer will now become a hybrid interface on top of the HIDL interface android::hardware::graphics::bufferqueue::V1_0::IGraphicBufferProducer. This CL also removes the hybrid interface mechanism from libbinder and splits BufferQueueDefs into two parts, ui and gui. Test: Camera, Photos, YouTube and Play Movies apps. Bug: 35442034 Bug: 33854657 Change-Id: Idbbfdc8d9be375281b533050cea03c56fded9075
ndroid.mk
|
1da94dfed674e94edc37cdc8ef68530520edf169 |
28-Feb-2017 |
Mathias Agopian <mathias@google.com> |
get rid of IGraphicBufferAlloc buffers can now be allocated in-process. Test: compile & run Bug: cleanup Change-Id: I3d4317a9bed20a6d8be2b7ac8fbb85738efb3657
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
4b5287e06e75838d548f6672b69d8f321792b6a3 |
09-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Create libhwc2on1adapter"
|
e29055f5fe4a2bc0f3f75d952ff417462dc607cc |
08-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Create libhwc2on1adapter Extract the adapter out of SurfaceFlinger library to allow code behind HAL to use it. Test: Manual Change-Id: I415aa2674564eccb2c38f76086807f834177f80f
ndroid.mk
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
isplayHardware/HWComposer.cpp
isplayHardware/MiniFence.cpp
isplayHardware/MiniFence.h
|
ae7d324fcad6d561bc0ee460f296ff2ad8306b00 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: dump Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I0215fea464fd126b5f9041435bef7e00b46c6ac8
ests/hwc2/Hwc2Test.cpp
|
bad1bc78ef50648fadbe725a1fe1c28d62097351 |
21-Feb-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: virtual displays Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ia10ec761712ee03f56782e3df2d6eabf7fb77760
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
ests/hwc2/Hwc2TestVirtualDisplay.cpp
ests/hwc2/Hwc2TestVirtualDisplay.h
|
35040c559d26d00d6123c894cfc9573b0a5aa860 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: color and hdr requests Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Id515de0fac7e842724ae8f27e865fad4933256e6
ests/hwc2/Hwc2Test.cpp
|
563030b4402f4b9aa08cece732f2a4a756a0f72c |
21-Feb-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: present display Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I845320afdf635d1716310d1183bcb10515615517
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
ests/hwc2/Hwc2TestProperties.h
|
4afbf41da18937466ed87da5ccdcb6cf13622709 |
08-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Delete typo in SurfaceFlinger documentation Test: None (this is a comment) Change-Id: I0876a40697fe5bb5245513520bc1f9a4bf1139f7
ayer.h
|
f18cfb0a780c69f12439457ccc3f5272db767fdd |
21-Feb-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: add client target support Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I94c86795b2e334df0570c6c5a3cbbcb5a8ca2826
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestBuffer.cpp
ests/hwc2/Hwc2TestBuffer.h
ests/hwc2/Hwc2TestClientTarget.cpp
ests/hwc2/Hwc2TestClientTarget.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
|
706178db2a89e2bf44e95bfad74dc4451a277b3d |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: get and accept display changes Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ia1d1a0ee5fce43e7904ee49f13a86df0e7adc428
ests/hwc2/Hwc2Test.cpp
|
1cd789cd2b300427467586f4ec721a8123f118b7 |
27-Jan-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: validate display Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I9a9df2902213d99d4f043e3bdea1e5e2fc77b01d
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
f7618ed1b4d806e06c872c0fccce57163cf93b6a |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer visible region Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I0e620fa6763d258d7875da9bf85d41c182e015d2
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
5a240aaf0e3a1dd52be6a8d0811ec727369a210d |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer buffer Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ie42d1fd4c2d0248c4a3ecf09a9b5871d501f6172
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestBuffer.cpp
ests/hwc2/Hwc2TestBuffer.h
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
ad761818a4426b4e6a0696ba90e05056aa35553c |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer surface damage Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ie30032c7285d76d26e51b36b0cfded909f4c3480
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
2a0aaf9f5a3daeb0525249eda40242bb63f56468 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set cursor position Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I4b265826befcf33c3f71b52bfabc076c48efed5f
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
|
ee24278db26505369c0e917d2a83e7e9fda36e4c |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer color Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ic280f91189a4d6ddd67a33901244714f3c0a46dd
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
c57468f1f6dfc870bea10e814a686793e64f6cf3 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer source crop Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: If3079efd7a035d1d182f04c56dc55300cdcedc47
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
600a73b6110d6fdcebe072a9d8e2dbbe6de1c6b7 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer display frame Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I4431ad0d207924b9fcde2c4c2f34382ec8ddc4d8
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
273b1dfa05287a0016ae1fc230cd3a5b1b7433fa |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer z order Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I2c51df36d62f9d809583003b81c24dbd7a744301
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestLayers.cpp
ests/hwc2/Hwc2TestLayers.h
|
ac10819373b1ed4901f26c822484a789a7ca4be0 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer transform Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I55e318cbddf957d1728435488c6283f8ce77a3d6
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
2b1f53060ea8587a428f826cf7890354ff124722 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer plane alpha Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I48146953f745dc650ead5a6e9d6f456cf5a9d7ef
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
b72b5c9ef4a6235c5bc2c4a3cceb23baf963815b |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer dataspace Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ia5bc9e53815d519e2016f3db12d69c6cc70a9b26
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
ffc67daf8b834ff2206d221ce15809cd5f21be55 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer blend mode Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Id5a7a568fb81ac9aff388d04077a12765cc135a3
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
6bd8bfde4a965b743d3d4ebff5fdaa3db03a4bbc |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: set layer composition type Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I9e71d0c01daa70f28031dd8310f2a40d7162a68e
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
ests/hwc2/Hwc2TestLayer.cpp
ests/hwc2/Hwc2TestLayer.h
ests/hwc2/Hwc2TestProperties.cpp
ests/hwc2/Hwc2TestProperties.h
|
dd4087f4eab87607662b7ee87e9e7b1298f7a3fc |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: get display name Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I935329c0c572368f25aeefdbc913a7044f655aa5
ests/hwc2/Hwc2Test.cpp
|
572a1eedae1d15a8544c95f0284e5b1216a187d2 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: enable vsync Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I704fcf0ef097602440835981a47dc6c3785e332d
ests/hwc2/Hwc2Test.cpp
|
03c917316507dd1c12cdb15a84f5e41576ab4bde |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: power mode support Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I4439f8215bb8d0652e6f5ad40f0c4625f7e97f9b
ests/hwc2/Hwc2Test.cpp
|
93dc04fda8de625d780bcd9b3cef15ad7a4932a8 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: get and set active config Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I2ac012a27b31e34886e3ec7f04a8bfc3fd1b83c4
ests/hwc2/Hwc2Test.cpp
|
cf935cbfa66ec65a71485e91e63a5929dc2922a1 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: get display configs and attributes Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I7aa1200057d9fa3cc7988554e8efcf6db2674584
ests/hwc2/Hwc2Test.cpp
|
1db2e37295cd89946ec5280c1db2dc11bba45ee2 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: create and destroy layers Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I508174a871a74d4c4d2843fc0ded84c517553bce
ests/hwc2/Hwc2Test.cpp
|
cfb9a07ff9bcc36afc08cef5874344aec03f18fa |
18-Feb-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: display type support Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: I0b1be456e360ac5a218ca0cd0e9f297e178c8727
ests/hwc2/Hwc2Test.cpp
|
a4b01488e852c0c16df89d04914e6f060dd862e3 |
18-Feb-2017 |
Marissa Wall <marissaw@google.com> |
test-hwc2: register callback functions Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ic48431a830115f40e9e851bca8f7c730b06f6529
ests/hwc2/Hwc2Test.cpp
|
4d600057db0c977e75c5d6e2d5f01fa69d30b364 |
15-Dec-2016 |
Marissa Wall <marissaw@google.com> |
test-hwc2: open and close hwc2 device Test: Add "#define HAVE_NO_SURFACE_FLINGER" to frameworks/native/libs/gui/BufferQueueCore.cpp. Recompile and flash. Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2. Push test-hwc2 to device. Run "adb root && adb shell stop". Run test case. Ex: "./test-hwc2" Change-Id: Ie7d3963540b0c96db8251bd745f37beab8dd340b
ests/hwc2/Android.mk
ests/hwc2/Hwc2Test.cpp
|
0cc1938871edd6659d6783404a3523abc6b98d92 |
06-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SurfaceFlinger] Use sf phase offset from CS If present, use sf phase offset from the config Store. Test: Manual Change-Id: I2dd7ecf984b7484f6b447699680f54c7c8e221a0
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlinger_hwc1.cpp
|
077f132c19e731d25973bbab1c6dc319beb3f460 |
08-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add MiniFence to drop HWC2on1Adapter libui dep"
|
10012f0ce0c06ad56459a41aabef682d0b1b06d0 |
07-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Merge "[SurfaceFlinger] Comment SurfaceFlinger HWC2"
|
c859147db5e9d5aa8a5043c0111e2799e1db042b |
07-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Add MiniFence to drop HWC2on1Adapter libui dep This class will soon become a library used by devices with no support for HWC2. They will link against libhwc2on1adapter. Drivers should have no depedencies on libui. Test:Manual Change-Id: Iabd2aa89fc3b737a999632a16c4f6c30464787c4
ndroid.mk
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
isplayHardware/MiniFence.cpp
isplayHardware/MiniFence.h
|
56a8f942731ad34a8e85a9a0fb84f1be2ead5541 |
07-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "split libsensor our of libgui "
|
801ea093b0e923a61b832f2adba698a273479880 |
07-Mar-2017 |
Mathias Agopian <mathias@google.com> |
split libsensor our of libgui Test: compile & run Bug: treble cleanup Change-Id: I5b2c2a14f7d3b364d25695cf0901c5b08cfb0fc9
ventThread.cpp
essageQueue.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
f0c53d6e864abc284b267e866817b3d006944a60 |
04-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SurfaceFlinger] Document layerStack Test: None, these are only comments. Change-Id: Id5d45a5847d253bf92263091e5b322a1577fabe1
isplayDevice.h
ayer.h
|
8226051f627aa976700885cda28c26c5a5b8bc7b |
03-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
[SurfaceFlinger] Comment SurfaceFlinger HWC2 Document decision to clear SurfaceFlinger HWC2 state upon sleep and awake. Test: This is just a comment. Change-Id: I0034d8d79e6e0d5b6287579d23f941e291c89bc0
urfaceFlinger.cpp
|
0ed7c2af60cac6468c235eb6e02d043ae453f191 |
03-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "[surfaceflinger] Set blend mode correctly when using HWC2."
|
e9c0475b74553a9d478a3ff14bc849f8312fe457 |
03-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix black screen upon awake (reused after free)"
|
8f35e15dd65b92bc35116a025bd5f31299fe87c2 |
03-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete unused variable in setUpHWComposer"
|
06a76c022fcb87602e160ffa97b26a27cc1a5481 |
03-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix black screen upon awake (reused after free) Under a specific timing, the state of the HWC can be left populated with "old" layers. If a Refresh Message comes before the WM sends a Transaction resetting the layer, the old layers are sent to the HWC. These old layers features buffer_handle which had been freed, resulting in a frame never signaling and a locked screen due to backpressure triggering constantly. Detailed explanation: When the device power off is pressed, the WM plays the fadeout animation, set the layer "fadeOut" to displayId -1 and calls setPowerMode(Off). This sequence of events leads to a state where no layers are deemed visible in surface flinger but the HWC2 still has one. Upon awakening the device, if a Refresh message is received before the WM has the time to reset fadeOut layer displayId to its original value, the HWC2 will use its last known state. Sequence of events (with and without crash): Put device to sleep. Awake device. PowerOn Refresh <- crash Put device to sleep. Awake device. PowerOn Transac Refresh <- Ok Bug: 35712353 Test: AUPT (100 cycles sleep/awake without black screen lock) Change-Id: If9177ccc0627f3b733030ed5e462dc465e63e963
urfaceFlinger.cpp
|
67a98056133b6930261ffd8b8826b1d1d8154403 |
03-Mar-2017 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused variable in setUpHWComposer Test: AUPT and Manual Change-Id: I53fbd7f9fa83b8729554a021be526a5fb71e2b13
urfaceFlinger.cpp
|
4deacd4dd3df625aee6210cf0d303e3c03c5ef43 |
03-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Tie VR mode support to a property"
|
ecf0fa5340c54757870881c5d24eb331c517d78c |
03-Mar-2017 |
David Reveman <reveman@google.com> |
[surfaceflinger] Set blend mode correctly when using HWC2. HWC1 code will reset blend mode to None using setDefaultState() but HWC2 just leaves the layer in the previous state. The result is that once blend mode is set to something other than HWC2::BlendMode::None we can never go back to HWC2::BlendMode::None and HWC2 implementations are forced to use blending when not necessary. Bug: 35915184 Test: manually verified using overdraw feedback on arc enabled chromebook Change-Id: I86957439bad0a1be9faa56df491d8415c4cdd2c2
ayer.cpp
|
3a8f794471815e6419caefe254adf2bbb19a8a53 |
03-Mar-2017 |
Mark Urbanus <urbanus@google.com> |
Tie VR mode support to a property Bug: 35854545 Test: - Validate VR mode is not supported when ro.boot.vr is unset - Validate VR mode is supported when ro.boot.vr is set Change-Id: I26f7e851766eab0d8a5a2f9fb4d72bfcee0c42f3
urfaceFlinger.cpp
urfaceFlinger.h
|
0ee1d0ed5fe4439dfcc8859938c1273274448de2 |
02-Mar-2017 |
Chia-I Wu <olv@google.com> |
Merge "surfaceflinger: work around dumpsys lockup"
|
843460d1d8ced54ed224cff2b3fad703b6ea98c4 |
02-Mar-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: work around dumpsys lockup Bug: 35806047 Test: manual Change-Id: I047ddf0ef9eacd4df7da3c9d91118c3f1592a9eb
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
77c073bdbe1b24a332056e1194a6162b7717a848 |
01-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge changes from topic 'surfaceview-without-wm' * changes: Add detachChildren transaction. Add deferTransaction variant taking GraphicBufferProducer.
|
f3edb8989a27b272ffa9273c5735e9dc891380ec |
01-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "SurfaceControl: Correct setMatrix parameter naming."
|
3b14c2ac6af21b4d37788001908796fc0a1748d8 |
01-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "SurfaceFlinger: Trivial Transaction_test refactoring."
|
6961b6bc1f6f172745deee98e7dcb34a3668e4e6 |
01-Mar-2017 |
Mathias Agopian <mathias@google.com> |
Remove unneeded references to IMemory Test: compiled & run Bug: cleanup Change-Id: Ifef6695275f244a420df574b3bc49adb99c93fbf
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
ests/Transaction_test.cpp
|
46e6929b409eacc28177a19fb6f06a52749eb726 |
28-Feb-2017 |
Jaesoo Lee <jaesoo@google.com> |
Merge "configstore: import configstore-utils as a header library"
|
764881145a75987d3e832aa0b850d8ed381e7cca |
27-Feb-2017 |
Jeff Sharkey <jsharkey@android.com> |
Revert "Refactor SurfaceFlinger::rebuildLayerStacks" This reverts commit 3beb7117d247c64c5d9d3a7e6df7eecdd9523711. Bug: 35801498 Change-Id: Ife431b19f3aef21cbe07863ca2964b2a40677dbd
urfaceFlinger.cpp
|
b665cd388c787d750e5b9282c64208d77fbceaf2 |
27-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Adjust traces to diagnostic of HWC2on1Adapter"
|
554a96f92e8796be95f215bbd8f1a1d1fb359da9 |
27-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix error code check in releaseBuffer"
|
5c3c77623b9841998ad418ab54043d34e10b9748 |
27-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Refactor SurfaceFlinger::rebuildLayerStacks"
|
9524cb3b37a91b5741790c77ff24fd825b02bca7 |
13-Feb-2017 |
Robert Carr <racarr@google.com> |
Add detachChildren transaction. Add SurfaceControl#detachChildren for use by the WindowManager. This method is used in cases where the WM would previously preserve windows the client tried to destroy. For example, when becoming invisible (in the activity lifecycle sense, not in the SurfaceFlinger sense) an app will destroy its child surfaces. Previously the WM would keep child windows alive until the animation finishes to prevent glitches. The new scheme for this is the WM will detach the children at this point, at which point the parent layer becomes the owner of the children and the WM can control the lifecycle as it wishes. I also included a test for reparentChildren as I realized I had forgotten that. Test: New test in Transaction_test.cpp Change-Id: I79c22b2ccccceb9bdcc37b70c491bdf33dcf83d2
lient.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
ests/Transaction_test.cpp
|
0d48072f6047140119ff194c1194ce402fca2c0b |
11-Jan-2017 |
Robert Carr <racarr@google.com> |
Add deferTransaction variant taking GraphicBufferProducer. For SurfaceView using child layers, the client framework will not have access to the Handle* for the parent surface, but still needs a way to defer transactions to it's frames. Test: Tested with corresponding SurfaceView modifications and existing tests. Change-Id: I6f01c360e85a95ff0ab08db406741221152e5d5c
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
urfaceInterceptor.cpp
urfaceInterceptor.h
|
6c9875dd54b10cd2fe137fb303307d1b5c1f50e7 |
27-Feb-2017 |
Jaesoo Lee <jaesoo@google.com> |
configstore: import configstore-utils as a header library The android.hardware.configstore-utils library is no more built as a static library but as a header only library. This change applies this in building SurfaceFlinger. Design doc: go/design-confighal Bug: 35397068 Test: build, run on sailfish Change-Id: I7d7abf3c87861bf7daa293af4e9d6841f854711e
ndroid.mk
|
3beb7117d247c64c5d9d3a7e6df7eecdd9523711 |
25-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Refactor SurfaceFlinger::rebuildLayerStacks Reduce indentation with early return Change-Id: Ic3a16bf45a0c1792b0fcbd5d9d1cd9f1e239ae32
urfaceFlinger.cpp
|
af5b6b814119151985d27d6edde7917cfb1e8d45 |
23-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Adjust traces to diagnostic of HWC2on1Adapter Change-Id: I0110fac372791bec657521522de3e08907f465f7
isplayHardware/HWC2On1Adapter.cpp
urfaceFlinger.cpp
|
3a156e11abc86f0fb7f3f503ca534140ea2a9a56 |
24-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix error code check in releaseBuffer BufferQueueConsumer can occasionaly return STALE_BUFFER_SLOT which does not indicate an error but that there is no more to be done. SurfaceFlingerConsumer should report and error only with a status code inferior to zero. Test: AUPT Change-Id: Ie0624358301e1e3b090adf35facd6eac79c214db
urfaceFlingerConsumer.cpp
|
68620d4b87954ff83f6f7cd2adbaf698be2a522e |
23-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Create VR HWComposer without locks held"
|
209beca0f051ff56654c2027f2e281c8a73d1686 |
23-Feb-2017 |
Mark Urbanus <urbanus@google.com> |
Create VR HWComposer without locks held Problem: Surfaceflinger is occassionally deadlocking when switching to VR Mode. Root-cause: During the creation of the VR HWComposer through hwbinder, hwservicemanager notifies surfaceflinger the service is available through a binder callback. Because Surfaceflinger holds the state-lock during the HWComposer creation, its possible all of SurfaceFlinger's binder threads are handling other transactions waiting for the state-lock to be released. This prevents the hwservicemanager callback ever to be handled resulting in a deadlock. Solution: Don't hold the state-lock when instantiating the VR HWComposer. Test: Validated deadlocks no longer occur when switching to VR mode. Bug: 35680107 Change-Id: I932c81fce293a8b57983f4242432b87522ce964c
urfaceFlinger.cpp
|
f5eb5e62777e03551af611e799f9b24e473dd065 |
24-Jan-2017 |
Chris Phoenix <cphoenix@google.com> |
hwcomposer HAL uses "default" service name The getService() and registerAsService() methods of interface objects now have default parameters of "default" for the service name. HALs will not have to use any service name unless they want to register more than one service. Test: builds Bug: 33844934 Change-Id: I6befd081add61e355bc25dd0c630ac07ea0103c4
isplayHardware/ComposerHal.cpp
|
cb6e1e385edd44fbc68718e792b7180b1015d438 |
22-Feb-2017 |
Robert Carr <racarr@google.com> |
SurfaceControl: Correct setMatrix parameter naming. The first parameter dsdx controls the X scaling. The last parameter is called dtdy but controls the Y scaling. Clearly this was meant to be named dsdy. You can verify this with a quick look at Transaction_test. Test: Tried various stuff, phone still works. Change-Id: Ie9e898443350ffdcf227888a8d85efdbe1b6b033
ayer.cpp
|
2b91c826ac5fc1d0f9370d02fd8c2373e5ca85d3 |
22-Feb-2017 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Trivial Transaction_test refactoring. Make consistent use of the assertBG/FG color helpers introduced in a past CL. Test: Existing test passes. Change-Id: Ic793c195e9ff8a99a3b6fbcfc9995b522c252c9a
ests/Transaction_test.cpp
|
136e2f6570d68e86dca1b2bfa23fc61abcee149e |
09-Feb-2017 |
Robert Carr <racarr@google.com> |
Remove erroneous log message It seems we always get a duplicate remove from the layer-cleaner so this was showing up any time any layer was removed. We didn't have this message before the child layers CL so lets get rid of it quickly. Test: Deleting a line of logging code. It builds! Change-Id: I16cc0c0b325e43d36cae684b06a93c099baa1aa6
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
1614c1e9ceca8ce5bb183c3f96274b0c8a9e355b |
21-Feb-2017 |
Isaac Chen <ycchen@google.com> |
Merge "Removed build time variable ENABLE_CPUSETS." am: 52a60e08fb am: 33f4b64f23 am: eb8be8f5e9 Change-Id: I9624618aae00134414e946e3f6df97e89c5b7495
|
33f4b64f23978b99088a0afeee662bc211cc9f17 |
21-Feb-2017 |
Isaac Chen <ycchen@google.com> |
Merge "Removed build time variable ENABLE_CPUSETS." am: 52a60e08fb Change-Id: Ic5d351f18a0c839212987c5fcbb803a7c07ac5cb
|
158f9a34c714b850f92f66ca9a5c61b96b224fe1 |
18-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "move vector math out of libui"
|
391ab069b114d5012b1fa0a48c9bc2b841974970 |
16-Feb-2017 |
Isaac Chen <ycchen@google.com> |
Removed build time variable ENABLE_CPUSETS. Use runtime check, cpuset_enabled(), instead of build time varianble usually set in BoardConfog.mk. Bug: 34726944 Test: Tested on Sailfish without cpuset mounted with cpuset mounted, but without schedtune with cpuset mounted and with schedtune Change-Id: I00153628db62abfbaa0ba75d571ba1bda0611ff3
ndroid.mk
ain_surfaceflinger.cpp
|
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
isplayHardware/HWC2.h
ffects/Daltonizer.cpp
ffects/Daltonizer.h
enderEngine/RenderEngine.h
enderEngine/Texture.h
urfaceFlinger.h
ransform.h
|
06e908a69177e5b2cfe2625f58cae9da9f29e78f |
12-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Refactor HWC2on1Adapter - Simply memory allocation with a single, consolidated calloc(). - Remove latch system which did not prove useful. - Converted { to be before \n. Change-Id: Id1daec2343225598160395bfecddc86955e2b610
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
310ac5e48a758482273b22b7aa03ef2509248df1 |
18-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Discard surfaceDamage for HWC1 v < 1.5"
|
356bcd4144e87f570fe412e2bd31b1af796b429f |
18-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Discard surfaceDamage for HWC1 v < 1.5 Test: Manual Change-Id: Ia9193a88dc6df206c8f197adf144466f164afa1c
isplayHardware/HWC2On1Adapter.cpp
|
fb94f1db72bd769d4a63e2baf0b5a4ca5da7a86f |
17-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Break a dependency of libui on libandroid"
|
f810b29ebc8564f94ff7fb14f2d13a0f4d111703 |
17-Feb-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge changes from topic 'GPU_replace_GL' * changes: Fix unexpected FrameEvents on BufferQueue reconnect Add FrameEvents::isValidTimestamp Change GL references to GPU for getFrameTimestamps. Clean up FrameTimestamp log messages.
|
873e2eee781f323a8aa0283cab5924fa4cd7ecfe |
17-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Move FloatRect from libgfx to libui"
|
a9347647eca3101c014be902b713772de3977d87 |
14-Feb-2017 |
Mathias Agopian <mathias@google.com> |
Break a dependency of libui on libandroid This was only a header dependency, but it still created a circular dependency, which will cause problems in another CL. We fix this by creating a libarect static library containing only that header. both libui and libandroid now depend on it and reexport the header. We also make sure rect.h ends-up in the right place. Test: built and booted device Bug: 35164655 Change-Id: Iba25b8b801b26b26ec1401c00caf367a06f197ca
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
ayerRejecter.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
0ed70ddebe2a392c32b010e00229b9f0e2fd2e09 |
17-Feb-2017 |
Romain Guy <romainguy@google.com> |
Merge "Add RGBA 10:10:10:2 format for surfaces"
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
ayer.cpp
ayer.h
|
5297807559ce3e5f217d3aba988a240aa4f25f57 |
16-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "surfaceflinger: disable VR mode while SELinux issues are resolved."
|
125c3ae33e284b09dede27a7e01b0b51d0653227 |
16-Feb-2017 |
Jaesoo Lee <jaesoo@google.com> |
Merge changes from topic 'cfg_nsfbuf' * changes: configstore: removing BoardConfig variables (NUM_FRAMEBUFFER_SURFACE_BUFFERS) configstore: use utility functions defined in ConfigStoreUtils.h
|
ce2c1983bb6b272b4b1377dedddc429b78249226 |
16-Feb-2017 |
Corey Tabaka <eieio@google.com> |
surfaceflinger: disable VR mode while SELinux issues are resolved. Temporarily disable VR mode support while SELinux policy issues are rectified. Bug: 35319396 Test: build; flash; run Change-Id: I218afb6f9bff21980de184596471f8ec673af2e6
urfaceFlinger.cpp
|
541f22658ab1617c9d12c98684ab40248df8749b |
11-Feb-2017 |
Romain Guy <romainguy@google.com> |
Add RGBA 10:10:10:2 format for surfaces Bug: 2984164 Test: CtsHardwareTestCases Change-Id: Ifc90e413f414a19ac09e923e48ec7ff45d3e930b
isplayHardware/HWComposer_hwc1.cpp
ayer.cpp
|
5ea5e5905170f32d5cf45ad35c552d64743892c3 |
02-Dec-2016 |
Brian Anderson <brianderson@google.com> |
Fix unexpected FrameEvents on BufferQueue reconnect Helps reduce the number of ALOGE's being hit when switching between apps. * Notify Layer when the Producer disconnects. * Avoid sending event deltas from a previous connection. * Avoid releasing a frame more than once. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I64f314be72ddb154b584d726ac382cd468e345bf
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
b04c6f03a2334b03ae0105ec005aeecfa61f4a90 |
21-Oct-2016 |
Brian Anderson <brianderson@google.com> |
Change GL references to GPU for getFrameTimestamps. Test: Rename only. Change-Id: Idaf7ab38f78f58aa8387823f47dac084e21eb1f0
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
8cc8b10e27d515a6962ae6c66a62387ced45f5fe |
21-Oct-2016 |
Brian Anderson <brianderson@google.com> |
Clean up FrameTimestamp log messages. Test: Log message changes only. Existing tests pass. Change-Id: I032c76393a4949b291c3a650279367caf05a775c
ayer.cpp
|
720a72479292406b821cbb17b93e6e1659ce0c3e |
31-Jan-2017 |
Jaesoo Lee <jaesoo@google.com> |
configstore: removing BoardConfig variables (NUM_FRAMEBUFFER_SURFACE_BUFFERS) This change removes the use of NUM_FRAMEBUFFER_SURFACE_BUFFERS from SurfaceFlinger. Instead of using it, the implementation is changed so that it retrieves corresponding configuration value (useTripleFramebuffer) from configstore. Design doc: go/design-confighal Bug: 34723491 Test: build, run, log message "SurfaceFlinger FrameBuffer: ?" should be seen. Change-Id: If6f6d13738d894b4880f42576f4ce8220b4a8bef
isplayDevice.cpp
|
4351857c9de86df9f418b3df28aebb1239ca35dd |
23-Jan-2017 |
Jaesoo Lee <jaesoo@google.com> |
configstore: use utility functions defined in ConfigStoreUtils.h This change modifies existing implementation to get config values via configstore by using utility functions defined in ConfigStoreUtils.h. Specifically, as an example, the utility function getInt64() is used for vsyncEventPhaseoffsetNs defined in ISurfaceFlingerConfigs. Design doc: go/design-confighal Bug: 34724435 Test: build, run Change-Id: I82a9371a84902c1e185d619d77e4c2e3272f84db
ndroid.mk
urfaceFlinger.cpp
|
9f02435fd44c0651c85e9bd4dc7307bc6b1a85fa |
15-Feb-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge "EGL: Add eglGetCompositorTimingANDROID."
|
abc64f0d096f61f8150dc6f8398a829281fd4dd0 |
14-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "surfaceflinger: skip buffer cache when BYPASS_IHWC"
|
3b70dffaa2fee64161ec0445ff9a96a2cb64324e |
14-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix unitialized field in HWC2on1Adapter"
|
0e9b20c2d1fae2a01dc50df98be04cf0f5d8eeff |
14-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Remove magic number usage in SurfaceFlinger"
|
2bd6f5f365d13770b96804a3d9a1c4e930dac25c |
13-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix unitialized field in HWC2on1Adapter Bug: 33487853 Test: AUPT Change-Id: If271eb6b9d357047b41fed19a2079325970132a7
isplayHardware/HWC2On1Adapter.cpp
|
406acb8c012f74a881daafaf370b19dec7ecda46 |
14-Feb-2017 |
Chia-I Wu <olv@google.com> |
surfaceflinger: skip buffer cache when BYPASS_IHWC When SF talks to hwcomposer2 directly, we should skip HWC buffer cache. The cache works somehow similar to IGraphicBufferConsumer::acquireBuffer, where buffer is set to nullptr when it is already seen previously. That confuses hwcomposer2. Bug: 35325794 Test: manual Change-Id: I5306ecc9e7290bc6734091a9884024bf38667628
isplayHardware/HWComposer.cpp
|
0a61b0c813f5991bf462e36a2314dda062727a10 |
07-Dec-2016 |
Brian Anderson <brianderson@google.com> |
EGL: Add eglGetCompositorTimingANDROID. Exposes the composite deadline, composite interval, and the composite to present latency. A history of composite and present fences are stored. When the present fence's timestamp becomes known, the composite to present latency is updated with sampling jitter removed. The values are updated in the producer when timestamps are enabled and on queue and dequeue. The deadline is snapped to the next expected deadline based on the current systemTime(). Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I406814258613b984b56488236632494f2f61ff2e
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
3cfac28462910d3f976aebac54ac7301aca7e434 |
06-Feb-2017 |
Steven Thomas <steventhomas@google.com> |
Ignore callbacks from the non-active hardware composer Ignore callbacks from the non-active hardware composer so we don't get e.g. duplicate vsync callbacks, one from each composer. Bug: None Test: Manually confirmed with logs we're now ignoring callbacks on the non-active composer. Change-Id: I8b475d6283d86c64ff96b41e78528bce8c6ff1d3
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
7382ed7f54a253b958a9d24f6d7eff2a94f47660 |
12-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Remove magic number usage in SurfaceFlinger Test: Manual Change-Id: I9d4c7e4ec8546314864e0625a832e9a0bb49e95b
isplayHardware/HWC2On1Adapter.cpp
|
748a163bf020d9eb53ce610fad90241fc52940af |
10-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix small child layer transparent region error"
|
fe37b77efae4dc10c1a5bdaec4127cdf8d182bfb |
10-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix boolean logic in SurfaceFlinger property read"
|
bb5afada05e597b8a74e3888863319c319c3c944 |
10-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Disable Virtual Display by default in SF"
|
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
ndroid.mk
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
rStateCallbacks.cpp
rStateCallbacks.h
|
642b23d70f7b513e88680c1d8400c1c1cfe6edd3 |
09-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Disable Virtual Display by default in SF These should be enabled by default once b/30022738 is resolved. Change-Id: I70a48a0bcf98ca984a28aa130170270d16e708bf
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
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
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
de9ec44905aca4f0ef4f473065b0e7d93d7e1cfe |
09-Feb-2017 |
Robert Carr <racarr@google.com> |
Fix small child layer transparent region error Just turned transparent region back on in my SurfaceView port and saw things were pretty broken. Test: Manual Change-Id: I3ab5520ecd226c86ef903767f6a562af7d7eb16d
ayer.cpp
|
c65dafa95467f52e7f65350b38e94ab217c008da |
07-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix boolean logic in SurfaceFlinger property read Test: AUPT Change-Id: Ib1db9198f470d62db1efa77193bf9e5f47b8a4b8
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
e8b5536c591ee74709f87e46cc98dee21cc0b03e |
07-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Revert "Enable TripleBuffering on SF by default""
|
4e06b00ae85155117f4456c0beaa17175670f501 |
07-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Revert "Enable TripleBuffering on SF by default" This reverts commit f222b2e6f4a3c26d6d2d9e3dd9056e5c95d7bc9c. Change-Id: I300e46c9e93840fde85471eed4e5f7d10dde9b43
urfaceFlinger.cpp
|
97a83762413be0d255841d6abaf6c1f474ce5364 |
07-Feb-2017 |
wyau <wyau@google.com> |
Merge "SurfaceFlinger supports ClearClientTarget for Sideband" am: 6560727f37 am: adde06b9e8 am: 1f94c41f83 am: d7a4a56b37 Change-Id: I6be4ced0d5779f319976f8f24fc446c3473d0428
|
d7a4a56b37915de79659345c77949993814259a4 |
07-Feb-2017 |
wyau <wyau@google.com> |
Merge "SurfaceFlinger supports ClearClientTarget for Sideband" am: 6560727f37 am: adde06b9e8 am: 1f94c41f83 Change-Id: I4a1819a3aa9f4c5aa7233225bdae29435272cade
|
1f94c41f8332c1ff51e6531bae01dc5880529d09 |
07-Feb-2017 |
wyau <wyau@google.com> |
Merge "SurfaceFlinger supports ClearClientTarget for Sideband" am: 6560727f37 am: adde06b9e8 Change-Id: I68e33ab1173bbae30e8d22ae86397ec081051f7f
|
39fe1d879cc2e55d4d3c3f7445977c674b97c472 |
06-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Enable TripleBuffering on SF by default"
|
267ab79b22f9d0b995ff787e36aca9c39497c489 |
11-Jan-2017 |
Gray Huang <gray.huang@mediatek.com> |
SurfaceFlinger supports ClearClientTarget for Sideband When clearing the layer's intersection with the dirty region, HWC2::Composition::Sideband layer needs to be cleared as well. Bug: 33443134 Test: manual - enter PIP mode with Live Channel Change-Id: I4fecc7b5db8a2bf220b681bd087264290d1a2443
urfaceFlinger.cpp
|
f222b2e6f4a3c26d6d2d9e3dd9056e5c95d7bc9c |
06-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Enable TripleBuffering on SF by default Change-Id: I5958534133799419fa77c00536c68cacd1ccb6a9
urfaceFlinger.cpp
|
553891a392d26a0d08dc0b3738d1171149e89015 |
04-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix protected content playback via HWC2on1Adapter"
|
999a7fdad2a48d0517f515cc6ea6c7324aa28228 |
03-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix protected content playback via HWC2on1Adapter The adapter marked unsupported dataspace layer with HWC_SKIP_LAYER which prevented HWC to mark protected content with HWC_OVERLAY. Test: AUPT Change-Id: Id8c05c7e575ffcc4160cdd8d23b151c4901b4c5c
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
eb7d088b07d8e4bb63e4f37b9a430209b0b4cbdf |
03-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes I9f2ea67c,I34588df1,I88a56236 * changes: Use generic libpdx event bits facility in libvrflinger and bufferhubd. Add libvrflinger for use in SurfaceFlinger Export surface flinger includes
|
e73f6bbec418918fec3cd566beeb80dec437289b |
03-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SurfaceFlinger: Set property in separate thread in init"
|
06a763423835ec977db0fe38d1bbf438dbbf1e66 |
02-Feb-2017 |
Alex Vakulenko <avakulenko@google.com> |
Export surface flinger includes * Before we start using libvrflinger, we need to export the surface flinger includes. Bug: None Test: Compile surfaceflinger and libvrflinger together Change-Id: I88a56236f297eb58397fcda5ff28bfecbd4e0971
ndroid.bp
|
1e4d3496a0fcf29d46c33551c5af604d40eee110 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b am: 8778a131c2 am: 18a5e5f607 am: f91ee50667 am: 41ab86fb1f am: 9451234907 Change-Id: Ie90de6ee888c2a90a835bfb06cfd9c1eeadba100
|
9451234907050176bd183f48cd2783d03a06ec48 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b am: 8778a131c2 am: 18a5e5f607 am: f91ee50667 am: 41ab86fb1f Change-Id: I49c6fa4e733d05804495de9f5986d3430178d0f9
|
b6fa70b9fb4e38f7e2a7013888d6c7a46102f158 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b am: 8778a131c2 am: 18a5e5f607 am: f91ee50667 Change-Id: I703ffd6b2a4ee5a7726bd7426f83256ad990835f
|
41ab86fb1fefe77fb48dda744eb621e4b77085de |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b am: 8778a131c2 am: 18a5e5f607 am: f91ee50667 Change-Id: Ib4fad8fa8a393bc6233b842f0550db03708a65b1
|
18a5e5f607511195376d5a11fa75b1b1d807daa0 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b am: 8778a131c2 Change-Id: Ic9300f2597702d6e83d80222dbc5ca7d2642f621
|
8778a131c2f639f1ed490d7847cf544cddc33e80 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 45b202513b Change-Id: Ifaf692c814e2562332914854dc95c7715d37a5c0
|
b254fa3a9eccd5ad7d853d687cf50a68dd8ee41c |
01-Feb-2017 |
Wei Wang <wvw@google.com> |
SurfaceFlinger: Set property in separate thread in init By setting property in a separate thread, the CL aims to avoid slow initilization in SurfaceFlinger::init where SurfaceFlinger is waiting on property_service. Bug: 34499826 Test: on marlin Change-Id: I91afad3cbc9a2b31aa89ae9cc752ad491cc9d8e4
ndroid.mk
ventControlThread.h
tartBootAnimThread.cpp
tartBootAnimThread.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
cb11135f1df815b822eb3fe1571a1536618289dd |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 am: 0e0a258771 am: 6a5a220b48 am: 30ab1434c3 am: f6868443ef am: 53ed9c6c7e Change-Id: I8f312459a57431221201c1fae8bfd6c178bf07c4
|
53ed9c6c7ec1da60031abac81f03b52568353af7 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 am: 0e0a258771 am: 6a5a220b48 am: 30ab1434c3 am: f6868443ef Change-Id: I8faa4d9bc29bb2c8a9bae1f94f57e89e52a4b229
|
81e84ad0721cda5a160bb13a0380a732622a590d |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 am: 0e0a258771 am: 6a5a220b48 am: 30ab1434c3 Change-Id: I4e08855d038ae114c6c6230288c6158115fe2f7f
|
f6868443ef7ff3465b87c615b3519f945d9224ef |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 am: 0e0a258771 am: 6a5a220b48 am: 30ab1434c3 Change-Id: Iaa4ffc3bca279f294a36df31823ec9a30a728fe7
|
6a5a220b481d2014f2c0c523a41a57ee1b4374fa |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 am: 0e0a258771 Change-Id: I4479a276592fc9d5d25378a5abee12473a2104ae
|
0e0a25877137154a5da927c6c0924d96b57fdee8 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 am: ded5521871 Change-Id: Ibf93b2a73caab87ee6c0b27234a8cdc05c0aa61e
|
ded55218716612e979b3194ce33d5aa05ac4c5ed |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e am: 40cd915a54 Change-Id: Ib34c9d0e90e77565ab6d0d7fb805bb425964b5aa
|
40cd915a54dc23c539fd420cdb5cfa7aaf9b872c |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 am: ebbf8a6b5a am: 5ba227f96e Change-Id: I9fc225ba640b4391d60380d7c588015c3e5516a7
|
ebbf8a6b5ab37ba7e51ce159db33d7b1fa170f72 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b am: cca3b79c32 Change-Id: I2e5da5ee33eb2757f360881e6ecc7dfd9fb67938
|
cca3b79c3259eee98f27e7b5f1634de6b49cc902 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef am: 3995674f24 am: c7892d9d0b Change-Id: Ic59ba49542b907591f3e514ae0417ed82a5be7aa
|
3995674f2457c457839cea8aeabc14432512e8e6 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f am: 132d0f2aef Change-Id: If2aa999ec1f261ea34a6aa725241ea50226083ad
|
132d0f2aefb36a0a83fc77460ed24383d0e3202a |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 am: ac2b87ac0f Change-Id: I3b249a9ec1820917dc015c72bd093535927c9ed6
|
ac2b87ac0f613f9995b938a9157544cdd2dbe646 |
02-Feb-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability am: 2ae83f4f62 am: 11ab583834 Change-Id: I09ec85b9f83e1f4458940415cd07f6fca725c552
|
cdb6b9e8b3489e29150537f021986657b7daf3fc |
01-Feb-2017 |
Jiyong Park <jiyong@google.com> |
Merge "configstore: remove build flags from surfaceflinger"
|
6c97ea6eeff53838fc5e11559946ce3933ed74b2 |
01-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Set cache dirty on layer creation/destruction"
|
08025e35d519758917342bdcba6d3ca1c19af3bb |
01-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Refactor how layer metadata for use by VR is propagated from WindowManager based on feedback in frameworks/base."
|
479c60c85c40fd3536b0c88036e838dc1a4c56a0 |
27-Jan-2017 |
Albert Chaulk <achaulk@google.com> |
Refactor how layer metadata for use by VR is propagated from WindowManager based on feedback in frameworks/base. Since windowType and ownerUid are immutable, they are sent on creation instead of separate IPC. Bug: 30984984 Test: built locally Change-Id: I380b3cdcf6aec471fc23f1e27846ab80492e8add
lient.cpp
lient.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
03be681d485ec5e86052e764a1120a5953e86cdf |
31-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Set cache dirty on layer creation/destruction The adapter misses an edge cases where a transaction both destroys and creates a layer. Under these conditions, assignHwc1LayerIds() is not called. mHwc1LayerMap contains reference to destroyed layers and ultimately lead to segfault. Test: Angler eng device and AUPT. Change-Id: I96bcbabf74a80cc87df796c0bc84b84e2bda8614
isplayHardware/HWC2On1Adapter.cpp
|
16ab8191fee19ed977daf31cf5b460851162fb6d |
31-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix unitialized field in HWC2on1Adapter Layer acquire fence file descriptor was not always initialized. In the case of a SolidColor layer, the file descriptor was left set to value 0 (stdin) which after call to set would be closed by the adapter leading to system unstability. Test: Angler eng devices and AUPT Change-Id: Ic931d8cf9b0c6ca8d56c7a0ed7a7f586bf072505
isplayHardware/HWC2On1Adapter.cpp
|
1db73f66624e7d151710483dd58e03eed672f064 |
21-Dec-2016 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Add support for non-privileged clients. Allow clients without privilege to create child layers through scoped connections. We enable this in preparation for allowing SurfaceView to bypass the WindowManager. We include support for reparenting of all of a layer's children for the WindowManager to use in cases where one surface is replacing another (while keeping its children around). Test: Tested with corresponding SurfaceView modifications. Change-Id: I9920e6730d719113522a68788e63fb59f70d3406
lient.cpp
lient.h
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
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
ndroid.mk
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
1f0a16a5d7cd00ba7fda82e7d315afa1fd1303b9 |
25-Oct-2016 |
Robert Carr <racarr@google.com> |
SurfaceFlinger and libgui: Support for child layers. Add support for parenting Layers in a tree. Layers follow scene-graph style rules, that is to say: 1. A child is cropped to the final bounds of the parent. 2. A child inherits the parent's transform (including position) 3. A child's Z ordering is relative to the parent and bounded between the parents siblings. 4. A childs lifetime is bounded by it's parents lifetime. Test: New tests in Transaction_test plus manual testing with later branches. Change-Id: I96f8ad863665b9a70b6f845561344c297b7e6eff
lient.cpp
lient.h
ayer.cpp
ayer.h
ayerDim.cpp
ayerVector.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
urfaceInterceptor.cpp
ests/Android.mk
ests/Transaction_test.cpp
|
2047fae0cfed99c425dc7333f31d309e5b8ee1ba |
28-Nov-2016 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Use traversal functions to iterate LayerList. In preparation for the Layer hierarchy. There we will need to use such a style to traverse the tree of layers. Test: Just a refactoring. SurfaceFlinger still works. Change-Id: I84dcd82e713f1bdbe911658793ce11460267a956
ndroid.mk
ayer.cpp
ayerVector.cpp
ayerVector.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
ae0608381b2b4699218febd6d45ad9d307544d55 |
28-Nov-2016 |
Robert Carr <racarr@google.com> |
SurfaceFlinger and libgui: Switch Z-order to signed type. In preparation for SurfaceFlinger child layers. In that model children's Z order will be relative to their parent. We need negative Z values to represent children stacking below their parent (e.g. SurfaceView). Java side already uses signed types strangely enough. Test: Basically a refactoring. SurfaceFlinger still works. Change-Id: Ifcece69f6f9d917cbf5238a59f8e5de1e8ba6a25
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
146abf38c2442b77dc78a0565ad010376c9d1b69 |
24-Jan-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Merge "Make dataspace accessible to surface flinger"
|
1214c9895f6a81cf7904d9da496e019016ca1412 |
23-Jan-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Update CommandWriter to CommandWriterBase"
|
4b20c2ee8e51006db51bbe1391f9173230bb73d2 |
14-Jan-2017 |
Jiyong Park <jiyong@google.com> |
configstore: remove build flags from surfaceflinger This change removes build flags used in building surfaceflinger. Instead, surfaceflinger uses android.hardware.configstore HAL to get values for the build flags at runtime. As a first attempt, a build flag VSYNC_VENT_PHASE_OFFSET_NS is converted to a hwbinder call to vsyncEventPhaseoffsetNs() function in android.hardware.configstore@1.0 package. Note that VSYNC_EVENT_PHASE_OFFSET_NS still remains in Android.mk for non-treble targets. Design doc: go/design-confighal Bug: 34314793 Test: build, run, log message "Phase offset NS: ..." should be seen. Change-Id: I43862d4df5abd3e9275ec9c0e2e0b568d8b48347
ndroid.mk
urfaceFlinger.cpp
|
2ae83f4f628d4da96f363d0668380ba1f753b867 |
19-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability Test: hammerhead Bug: 32628763 Change-Id: I19a81b63fffee8f323a5925c7e8633fbd640b91c
urfaceFlinger.cpp
|
45b202513ba7440beaefbf9928f73fb6683dcfbd |
19-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix security vulnerability Change-Id: I4c9ea3a3177131fa29d2561da71ef18bec3af108 Test: angler, marlin Bug: 32628763
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
3c9cbd48a678542f6832168f3f6371c4f717f709 |
17-Jan-2017 |
Daniel Nicoara <dnicoara@google.com> |
Update CommandWriter to CommandWriterBase Updates dependencies after rename. Bug: 33297385 Test: Compiled Change-Id: I99bb972dc591ba8cef4ec5ab7cab07120a9ca739
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
|
c939411a88e5a248f6e6668b8b4041e868b97059 |
17-Jan-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge changes from topic 'latchAndLastRefresh' * changes: EGL: Expose latch, last composite, and dequeue ready. Add a DequeueReady FrameEvent
|
b621c5f0672244c6f67ef8a24a40ee7a53b89a57 |
16-Jan-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge "Clean up Fence a little."
|
4dad9ce0a50a34f491ecc3ff95ea3e05ca95b724 |
29-Sep-2016 |
Mark Salyzyn <salyzyn@google.com> |
Replace cutils/log.h and rationalize log/log.h and android/log.h - cutils/log.h treat as deprecated and lead by example - coding standard for header order - include headers that are side effect of others. Test: compile Bug: 34250038 Change-Id: I8d99b24c333578c9b5aa9f2a01324bd0bba268dd
urfaceInterceptor.cpp
urfaceInterceptor.h
|
f7fd56a649f07133ad78d31eb5d3ae7a4e95d522 |
02-Sep-2016 |
Brian Anderson <brianderson@google.com> |
EGL: Expose latch, last composite, and dequeue ready. Also fix discontinuous reserved token values. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I9d513b8784a7205dfe534c1c74b56c18cd49e74a
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
175a7206c5aea70236b916d7707ab25025eb9cd6 |
11-Oct-2016 |
Brian Anderson <brianderson@google.com> |
Clean up Fence a little. Test: Cleanup patch only. Fences still work. Change-Id: I65e5cdf5e3c067bc475c085ab6d3577d9753231c
olorizer.h
|
f6386862dffb0fb9cb39343d959104a32e5e95b7 |
01-Nov-2016 |
Brian Anderson <brianderson@google.com> |
Add a DequeueReady FrameEvent Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I98ffd4123fc50b5f560e432f4078408c913c8edf
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
e0ea99cc4ba89452b9b6b1baa33bddcb11f3351a |
12-Jan-2017 |
Mark Salyzyn <salyzyn@google.com> |
resolve merge conflicts of a2c2d11f9 to master Test: compile Bug: 26552300 Bug: 31289077 Change-Id: I84d0ffa430df3beca0dcc6ed205ce220d7be1f87
|
a2c2d11f98b692401be56c8f285c570bae47ddda |
12-Jan-2017 |
Mark Salyzyn <salyzyn@google.com> |
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h" am: d655e61a22 am: 16a30c1ac8 am: fbc9758151 Change-Id: I911936217c6b47f48092319ff66edafaf0f7c395
|
7823e124e00576e20e47ec717cbe8bc89f0f2bf2 |
29-Sep-2016 |
Mark Salyzyn <salyzyn@google.com> |
Replace cutils/log.h and rationalize log/log.h and android/log.h - cutils/log.h treat as deprecated and lead by example - android/log.h to be used instead of log/log.h if possible - add system includes that are assumed as side effects - define LOG_TAG first Test: compile Bug: 31289077 Bug: 30465923 Change-Id: I8d99b24c333578c9b5aa9f2a01324bd0bba268dd
dmConnection.cpp
ispSync.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer_hwc1.cpp
enderEngine/Program.cpp
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
83756055ff9d897621bf61883c212e3b96b342de |
09-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Fix syntax error in appendSfConfigString (#endif) Change-Id: I1ff05e34e4d8d9f73bb5cb090c96011497132947
urfaceFlinger.cpp
|
51185338800b7e1f024ec1b533134afc4cb473d5 |
09-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Move TARGET_DISABLE_TRIPLE_BUFFERING to property"
|
32872923ea72b7edc4fbf962fb4481f4a50d6633 |
09-Jan-2017 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Document crop and finalCrop"
|
bb09b436fa119ad8b97f1bf5c04cc5aa10b5f1f0 |
30-Nov-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Make dataspace accessible to surface flinger http://b/29940137 Keep track of dataspace in GLConsumer and make it available to surfaceflinger's Layer class. Test: TBD Change-Id: I099dc6d8424909c5fc31bfe2d05a656695c4251b
ayer.cpp
ayer.h
|
847650b5d89a1667f78fa0fa67429377cd3bf37a |
17-Jun-2016 |
Naseer Ahmed <naseer@codeaurora.org> |
HWC2: Initialize retire fence to -1 Initializing to zero will cause us to inadvertently close fd 0. While fd 0 (stdout) isn't used in the surfaceflinger process, if we close it, the fd becomes available for other usages, such as fences and ion buffers. Using it becomes problematic for some drivers which may treat it as an invalid value. Bug: 28640429 Test: Fixes GPU driver seeing fd of 0 and erroring Change-Id: Ifa06472d24476edb27a4306d946eb616a15aee7a
isplayHardware/HWC2.cpp
|
63a5fcd2aa55c8eb0ccba621517a4215d8504df6 |
30-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Move TARGET_DISABLE_TRIPLE_BUFFERING to property As part of the migration to Soong, Android.mk environment variables must be moved to property which are checked at runtime. Tests: Angler and Sailfish Change-Id: I7c620656c6778b36fea78c3087fbd5d33cea96f8
ndroid.mk
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
c8e4c3d7d9f987b84ed307cb78732a34d21d3b5a |
05-Jan-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Create libgfx, starting with FloatRect"
|
9d02100650605c62b66ec45d212d6428f42761fe |
04-Jan-2017 |
Steven Moreland <smoreland@google.com> |
Return<*> getStatus().isOk() -> isOk() Bug: 31348667 Test: compiles Change-Id: I8f1fb98732b6e48fc7ef099d5ca85f6e91014921
isplayHardware/ComposerHal.cpp
|
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
isplayHardware/FloatRect.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
ayer.cpp
ayer.h
|
c03d283e8b3f830d76dd94822b2a13872c05c730 |
28-Dec-2016 |
Mark Salyzyn <salyzyn@google.com> |
resolve merge conflicts of 525a5f2 to master Test: build Change-Id: Id1c6d3d9dd158fb086b0d8ab74f7838ef0a51af1
|
525a5f2da844d1acc9e405fc4935d8a1cb2ece67 |
28-Dec-2016 |
Mark Salyzyn <salyzyn@google.com> |
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h" am: 1efda0b1d6 am: 7e92307cd8 am: 430f62090c Change-Id: I8bbed9204718da324f0bdeceb7b8156cb315e900
|
064670efc4ce0fc7dcbe943b91d6d85b31025736 |
23-Dec-2016 |
Chia-I Wu <olv@google.com> |
Merge "Replace non-const references by pointers"
|
67e376d6564f8b9f996a347c9402bdc9da789321 |
19-Dec-2016 |
Chia-I Wu <olv@google.com> |
Replace non-const references by pointers Use pointers for outputs to be consistent with the rest of libui/libsurfaceflinger. Remove assignFromHidlVec now that hidl_vec can be casted to std::vector. Test: builds and boots Change-Id: I656367028302e7b877a766eaf6aa2431fe07643b
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
|
a5e161b1207ef447a51e99856097d69d4a6111e1 |
29-Sep-2016 |
Mark Salyzyn <salyzyn@google.com> |
Replace cutils/log.h and rationalize log/log.h and android/log.h - cutils/log.h treat as deprecated and lead by example - android/log.h to be used instead of log/log.h if required - add system includes that are assumed as side effects of log.h - modules that use SLOG should use SLOG for all logging (installd) - define LOG_TAG first - remove logging infrastructure if not used Test: build Bug: 31289077 Change-Id: Iea147a0104c7ab7f12451304131d6500f42141e7
dmConnection.cpp
ispSync.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/PowerHAL.cpp
ventLog/EventLog.cpp
rameTracker.cpp
enderEngine/Program.cpp
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
c0b1577538390f75de137e030bc22ff415e07683 |
20-Dec-2016 |
Jesse Hall <jessehall@google.com> |
GpuService: fix shellCommand result protocol The "cmd" shell command at some point separated transport vs. command results: transport errors should be returned as the Binder transaction result, but in the absence of a transport error, the command result (success or failure) should be sent to a IResultReceiver object provided as a command parameter. GpuService wasn't doing this, returning the command result from the Binder transaction and never sending anything to the IResultReceiver. This caused cmd to wait forever for an IResultReceiver result to become available. This change properly handles transport errors vs. command results. Test: for cmd in "" help vkjson foo; do adb shell cmd gpu $cmd; done Change-Id: Id2f78593a27d35a88ffa96182de0ef75c3e33599
puService.cpp
|
3e26b1363ff8b39a472fc2d4fe9ee59ee818b977 |
20-Dec-2016 |
Jesse Hall <jessehall@google.com> |
GpuService: handle null shell command Test: for cmd in "" help vkjson foo; do adb shell cmd gpu $cmd; done Bug: 33747292 Change-Id: Iaed396cc5157e17bf72b53566fb3e38c64182c44
puService.cpp
|
c4c286f30a60ef9ebfc959ea4869d87ceeb831dc |
17-Dec-2016 |
Romain Guy <romainguy@google.com> |
Merge "Remove RGBX_FP16 format"
|
8018f22c2ceb97536828787d0a49c320cb9a18e5 |
17-Dec-2016 |
Chia-I Wu <olv@google.com> |
Merge "surfaceflinger: update for IComposer changes"
|
d3e08d4811e13aefd656e3376e7d56e2d37bb388 |
16-Dec-2016 |
Romain Guy <romainguy@google.com> |
Remove RGBX_FP16 format Bug: 32984164 Test: compile Change-Id: I4e0eadc3066717d4644d71cf2684a617bae34a1f
isplayHardware/HWComposer_hwc1.cpp
|
e2caadca83c8842bbfe74e21f11b9e2b5aeb4e13 |
15-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add fp16 pixel and window formats"
|
cd8d7f08fe26645f74e540365b1a8a38e602088d |
16-Nov-2016 |
Chia-I Wu <olv@google.com> |
surfaceflinger: update for IComposer changes The new IComposer introduces IComposerClient to manage resources and replaces most state changing functions by a "command buffer" to batch calls. Test: builds and boots Change-Id: Idd1060f83fab28330e7119ff0f5a5bda5429811a
ndroid.mk
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
|
9698c2f193666ab506a6edf113c5a77d0d0acb3b |
15-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Use FenceTime to share fence times and reduce open fds."
|
100a437706d5a2750ab384d79588411f875a13be |
15-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Document HWC2to1Adapter"
|
b8155eda3456ce5f639b7240aef78886c78b20cd |
14-Dec-2016 |
Kalle Raita <kraita@google.com> |
Merge "Do not drop MonitoredProducer in binder calls"
|
339607072fbc0ca39e6e13ce197cb720ef971d91 |
30-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Document HWC2to1Adapter Change-Id: I1ba60143b74e886f132136c7ecc13fd89c349dd4
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.h
|
ff415149dc5a83a4eb5960daf2cb2c310ef89847 |
14-Dec-2016 |
Romain Guy <romainguy@google.com> |
Add fp16 pixel and window formats Bug: 32984164 Test: compile Change-Id: I8303afbf857796295a280c0d9438a3c403a11437
isplayHardware/HWComposer_hwc1.cpp
ayer.cpp
|
643f0949daccb57e48f2d05b355ce3ea5696965a |
07-Dec-2016 |
Kalle Raita <kraita@google.com> |
Do not drop MonitoredProducer in binder calls Currently the MonitoredProducer is left out when the producer is marshalled for binder calls. If others than the owning layer have references to the underlying surface, clearing the layer leads to the surface being removed from the SF tracking list. This is in clear contradiction with the test case libgui_test.SurfaceTest#QueuesToWindowComposerIsTrueWhenPurgatorized. Unfortunately the test case has not accounted for the async nature of the operation and has been only intermittently failing for a long while. Change also changes the test to wait for the clear operation to complete. Test: libgui_test, AUPT on Pixel XL Bug: 31045556 Change-Id: Iddb1cef82c492e8b3beeb32de7e11587e0c1ebed
onitoredProducer.cpp
onitoredProducer.h
|
4ed383cec76494a529abbd167109759d9e40cdd9 |
13-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Document crop and finalCrop The difference between crop and finalCrop is not documented anywhere. "finalCrop" is not a very good name either and it would also be a good thing to rename it to windowSpaceClip and propagate this to framework API. Change-Id: I7542cdb7e2430b873b30e63f06a8d39de3fa2b6d
ayer.h
|
d7818abc914a3ce0bff6dca2c86c5677ef0159db |
13-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix memory leak in HWC2to1Adapter"
|
3d4039d7a291cd9b6f2dd4b46fcdb576f2db3356 |
24-Sep-2016 |
Brian Anderson <brianderson@google.com> |
Use FenceTime to share fence times and reduce open fds. FenceTimes are created and shared for each Fence that FrameTimestampHistory and FrameTracker care about. On the consumer side, the FenceTimes are also added to shared timelines that are owned by SurfaceFlinger or unshared timelines owned by Layer. The timelines are checked at the end of every frame to minimize the number of file descriptors open. On the producer side, the FenceTimes are added to the ConsumerFrameEventHistory instead, since the timelines that would be tracked by SurfaceFlinger are not shared with anyone else in the consumer's process. The timelines are checked just after a frame is queued to minimize the number of file descriptors open. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: Ifd4301affe1b24705b2bee7608c5a2c09dfb4041
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
rameTracker.cpp
rameTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
ec0a9565d866c69efa6d347a76a78add141de57d |
13-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Fix memory leak in HWC2to1Adapter SurfaceDamage regions were not freed after receiving response from HWC1. Change-Id: Ibcfd3d598874b433e0cd5a4dbe38227fe51b1524
isplayHardware/HWC2On1Adapter.cpp
|
873228ef930efe2f37ec15a5dc8ae15240cd81d1 |
13-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Delete unused clip parameter in drawWithOpenGL"
|
7dbd305c7c0bebadc84d9a38012642f94ab4743f |
10-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Reduce indentation with early return"
|
28e98084bdadcf3001a3e24034c5c98057dd2398 |
05-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Reduce indentation with early return Change-Id: Ib2e7236b3fedf219db933085d26c6ea9b762f649
ayer.cpp
|
8c9ba46eb3a2e382f2911eaf9d19af49f60a65a1 |
09-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete unused dirtyRegion local variable"
|
e685bb48f7b0650286f6f1c87f466d2a67a132d2 |
08-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete unused mask eTransactionMask parameter"
|
c4b2ae377a90b8189c92c23e07a3cc9dbca14f9d |
07-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused dirtyRegion local variable Change-Id: Ibcaf7c52ee9a80e86e51985a3af0e63bebf338fe
urfaceFlinger.cpp
|
c8251eb7a6ecfdd16b3e4cfbfb442aa4c789c039 |
07-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused mask eTransactionMask parameter Change-Id: I1f9dafb014bb3090186443ef1049b7dd53a9a697
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
1748719ea1b69cc7ad111d8c6149d692b9f056f8 |
07-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused clip parameter in clearWithOpenGL Change-Id: Idc31d6cfe0c804fd6c5528432e1179f920e231b3
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
8578980f7dd775d7044780de85ac3103989ba7d7 |
07-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused clip parameter in drawWithOpenGL Change-Id: Ia4662ccf9b5544c1a8c5252b4c8485fddd09e713
ayer.cpp
ayer.h
|
b52cfec8ded83ebb36a41851c01f0e5666a25a39 |
05-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Rename hw to displayDevice for consistency"
|
830b84704b0f33030d0e391a0ea2e7faa5646e2e |
01-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Rename hw to displayDevice for consistency Change-Id: I8bdb9be9c0e024d74a5aacc1f78c553cc1bc5ab4
urfaceFlinger.cpp
urfaceFlinger.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
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
urfaceFlinger.cpp
|
426f9bcfcc17e23ac9ae04aaee3766e299169139 |
04-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Update producer's cache of frame events in de/queue"
|
49670c84019d58f6c95aadf168db677f85b46a88 |
03-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Cache frame event history producer-side."
|
3e5af2d242a5b73a76be9742d23da20ed28e06e0 |
02-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Track frame events incrementally and per layer."
|
f7dfa47683c4810c2955affe26db0e9454614cf7 |
02-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Fix FenceTracker releaseFence"
|
4a1f8a53aa0d51486f47ca3d2699e600e540a12a |
01-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Rename "commit" to use "present" nomenclature"
|
e89987affd9a40f9616a696a3c0bfbb94274603e |
01-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Rename variable disp to displayId for consistency"
|
a87aa7bb5e44fd4b352e34d3cd745aa7e038d19f |
01-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Rename "commit" to use "present" nomenclature We use "present" down the HWC2, commit is a confusing name. Change-Id: I7b23edaf4aeab807bc523e31dfcb8e716166d849
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
df0b7059646db0734f614e0dd651e0ac6ce82211 |
01-Dec-2016 |
Fabien Sanglard <sanglardf@google.com> |
Rename variable disp to displayId for consistency Change-Id: I5c0dc977e637a76eba44f8a27dac416c98a961d8
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
834bccb1f58780d51367ae39598ae68407986252 |
01-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Add displayPresentTime to getFrameTimestamps"
|
10ec9947b83cfc7c04a4a30a4ade2900ce73842a |
30-Nov-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "BQ: Make QueueBufferOutput implement Flattenable"
|
5c59c452aa5247de8a09b693a61b7b6b35ea5d38 |
30-Nov-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Rename posted to requestedPresent for getFrameTimestamps"
|
8650c6fe8282a08f10672c917f3facf1398b0928 |
30-Nov-2016 |
Jinguang Dong <dongjinguang@huawei.com> |
Merge "surfaceflinger:Fix potential crash issue when do AIDL FUZZ test" am: 2792ff4527 am: 83f8bba2a5 am: 60f8850e70 am: f3fe700dc2 Change-Id: I13ae45fde822c625cd70b60db6fdbd1e1236a462
|
f3fe700dc25d8a93a36bf1f6bcf4f973349f0c6e |
30-Nov-2016 |
Jinguang Dong <dongjinguang@huawei.com> |
Merge "surfaceflinger:Fix potential crash issue when do AIDL FUZZ test" am: 2792ff4527 am: 83f8bba2a5 am: 60f8850e70 Change-Id: I5baca403532b095c89838dd0733439c09c430c16
|
83f8bba2a5b64e453404d5609c49ba31d5ec5b38 |
30-Nov-2016 |
Jinguang Dong <dongjinguang@huawei.com> |
Merge "surfaceflinger:Fix potential crash issue when do AIDL FUZZ test" am: 2792ff4527 Change-Id: Ia8c1ac3f9eff3680ed64235cb01043d0b7c434b9
|
4143295750e185cd415a4159f6ffbe686471e1f6 |
30-Nov-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete HWC2to1Adapter unused code."
|
601938c35aa5162ac669004aff8c44d8c25345f0 |
29-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete HWC2to1Adapter unused code. HWC2to1Adapter supports forwarding Display requests from device to client. However hwc1 does not support the request. Change-Id: Id2e77b18823d319721473b3a8c8838aa20b7daec
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
27efbdb5df135ef6f09f66bf93e4fef31d28dd54 |
29-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete unused mutex in HWC2to1Adapter Change-Id: I2fe5b8b6d35c07fc2243c88d5739a25be5c61686
isplayHardware/HWC2On1Adapter.h
|
9f8b9ae2a95eec78e676a11a719deafea4952190 |
29-Nov-2016 |
Jinguang Dong <dongjinguang@huawei.com> |
surfaceflinger:Fix potential crash issue when do AIDL FUZZ test There will be trigger exception when we provide invalid inputs parameter for surfaceflinger JNI interface Test: 1.Run adb shell and open AIDLer tools; 2.change to Dir /sdcard/elong.AIDLer 3.run commond service list > service_list.txt 4.Rerun AIDL FUZZ test Change-Id: I0a63adc1e8ae5d9c9e43cb6df6aa13503c40a0c5
urfaceFlinger.cpp
|
3828399b9d1d8c4004ef26e82784604cab841be4 |
23-Nov-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix 5x and 6P crash when using HWC2to1adapter"
|
eb3db61f914a2469fe632c48b46a0ce60c84c9d9 |
19-Nov-2016 |
Fabien Sanglard <sanglardf@google.com> |
Fix 5x and 6P crash when using HWC2to1adapter Angler and Bullhead crash when a SolidColor layer is used in combination with HWC2to1Adapter. This is due to assumptions in the HWC1 code (non-null handle field = valid pointer). This assumption is incorrect with a background layer because it will set the field backgroundcolor...which occupies the same location as handle field in hwc_layer_1_t. This patch detects whether the HWC supports BACKGROUND layer and sets backgroundcolor/handle accordingly to HWC assumption. Test: Manual on Angler and Bullhead. Change-Id: Ic5c3366a4a8989f3a82b6367258bad8af25d3990
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
7c5a92fc5d4d62027f09537df978f2c90c9719c5 |
21-Nov-2016 |
Martijn Coenen <maco@google.com> |
Use hidl_handle instead of native_handle_t*. To ensure 32/64 compatibility. Bug: 32089785 Test: builds Change-Id: Ie86e5734c4a66db7dddd9e93f6dd26990f245d71
isplayHardware/ComposerHal.cpp
|
526fd4a4e24c448e1436a89521336e35c22bef15 |
21-Nov-2016 |
Chia-I Wu <olv@google.com> |
Merge "Use android.hardware.graphics.common@1.0"
|
67a4762ed3ece97c4d3a7329a8733a77a73f7584 |
17-Nov-2016 |
Yifan Hong <elsk@google.com> |
Split libhidl into base and transport. Bug: 32756130 Test: mma Change-Id: I878e0e8f94e01695f633bc80ef163dbe18c8f622
ndroid.mk
|
7c3ba8aa288755fad78ddbabcee0ad5a0610ac1c |
25-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Update producer's cache of frame events in de/queue * Cache is only updated during queue and dequeue if the getFrameTimestamps is enabled. * The consumer avoids sending a copy of the acquire fence back to the producer since the producer already has a copy. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I6a8b965ae79441a40893b5df937f9ed004fe7359
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
3890c3995c4a52439844faeb80b5503d42b977d8 |
25-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Cache frame event history producer-side. * Producer maintains a recent history of frames. * Producer only does a binder call if requested informatiVon doesn't exist in the cache. * Consumer sends fences to the producer, which can be queried for timestamps without a binder call. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I8a64579407cc2935f5c659462cb227b07ba27e43
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
5901fda2c112390f0877ed1a916fe824d36b222b |
17-Nov-2016 |
Chia-I Wu <olv@google.com> |
Use android.hardware.graphics.common@1.0 Some types in composer@2.1 and allocator@2.0 are now in common@1.0. Test: builds and boots Change-Id: Ied8e5d1b555cd6bfd2c0381cec537293900d3ffe
isplayHardware/ComposerHal.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
ndroid.mk
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWComposer.cpp
|
d6927fb1143398370c0885844bfb58923ef740b7 |
24-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Track frame events incrementally and per layer. * Replaces FenceTracker, which was owned by SurfaceFlinger, with FrameEventHistory, which is owned by Layer. * Updates FrameEventHistory as events occur. * Changes SurfaceFlinger flag "--fences" to "--frame-events". Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I868c2ef93964656d7e41848243433499e7f45fe7
ndroid.mk
enceTracker.cpp
enceTracker.h
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
3546a3f08ad84099db4006d651c656d58d2ed566 |
14-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Fix FenceTracker releaseFence This patch: * Fixes the release fence when GPU compositing. * Stores the final release fence in ConsumerBase just before releasing the Buffer, which helps ensure sync points aren't added unknowningly. * Makes HWC2 release pending buffers as the first step of postCompostion, rather than the last, which should allow dequeue to unblock a little earlier and helps make sure the previous buffer's release fence has been finalized before FenceTracker::addFrame is called. * Fence tracker only sets the release fence once it has been finalized so it does not report a release fence for a buffer that is still latched. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I27d484bfd48f730bdcea2628f96795c6f4b4df7b
enceTracker.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
069b365163470d2736eb6f591c354d208b5da23b |
22-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Add displayPresentTime to getFrameTimestamps Makes HWC1 use displayRetireTime and HWC2 use displayPresentTime. Properly takes into account if HWC2On1Adapter is used. Returns whether present or retire is supported via eglQueryTimestampSupportedANDROID, which uses a cached answer in Surface. Surface::getFrameTimestamps returns with an error if the caller requests an unsupported timestamp. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: Ib91c2d05d7fb5cbf307e2dec1e20e79bcc19d90b
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
enceTracker.cpp
enceTracker.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
baaad32cd582bcc09db89135715717234ea398ea |
23-Jul-2016 |
Brian Anderson <brianderson@google.com> |
BQ: Make QueueBufferOutput implement Flattenable It will need to support file descriptors soon. Also: * Make it's members public and clean up inflate/deflate usage. * Send Fence::NO_FENCE over Binder from dequeue to indicate lack of fence. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: Ia9e4600424a89ce026ba27e8aaed27a6bab860a4
isplayHardware/VirtualDisplaySurface.cpp
|
dbd0ea80021cbc61c578385f534f41a33338085b |
22-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Rename posted to requestedPresent for getFrameTimestamps Test: Just a rename. Change-Id: I63aa5b1b84715de2bebffb25f92bd826323a9acb
enceTracker.cpp
enceTracker.h
ayer.cpp
ayer.h
|
dda9bb00cd466b859f35c767944607bd851494b3 |
14-Nov-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge "Revert "Workaround alloc-dealloc-mismatch error on ASan device boot."" am: 5c58020c00 am: 22d12a89e6 am: df48bcff26 am: 1852c5564d Change-Id: Ibb34264848e1e4c7b800b35a7a4dd61e551b42ee
|
1852c5564dd9181e83b289c6bfe0515c8c048018 |
14-Nov-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge "Revert "Workaround alloc-dealloc-mismatch error on ASan device boot."" am: 5c58020c00 am: 22d12a89e6 am: df48bcff26 Change-Id: If0ede202f577d8e1452c7905a4a06e7d36bce761
|
df48bcff26971a805c04f04e3b80ba8f1713bc3b |
14-Nov-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge "Revert "Workaround alloc-dealloc-mismatch error on ASan device boot."" am: 5c58020c00 am: 22d12a89e6 Change-Id: Ie392d157a320fba28e91214af4486d09d671a23a
|
22d12a89e62890315104112636b71f7be9c95fb1 |
14-Nov-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge "Revert "Workaround alloc-dealloc-mismatch error on ASan device boot."" am: 5c58020c00 Change-Id: I107ce2043fd261b08413418825daf6c35f808228
|
b56eda82414d4ea7d5e909c341a80ca50ef30e26 |
14-Sep-2016 |
Evgenii Stepanov <eugenis@google.com> |
Revert "Workaround alloc-dealloc-mismatch error on ASan device boot." This reverts commit 22819276b147e34a80e8ca696be5b3fda68764b9. Test: SANITIZE_TARGET=address build should keep working Change-Id: I84f7868482b2ba3c8fc5ad5250b17b576cb7f392
urfaceFlinger_hwc1.cpp
|
3ed78e47009f4918c4a904c52bd774c93e24c8c1 |
14-Sep-2016 |
Evgenii Stepanov <eugenis@google.com> |
Revert "Workaround alloc-dealloc-mismatch error on ASan device boot." This reverts commit 22819276b147e34a80e8ca696be5b3fda68764b9. The underlying kernel bug has been fixed. Test: SANITIZE_TARGET=address build should continue working Change-Id: I6f3938047d9f60357e7bd9bccd3ef36d7686c73b
urfaceFlinger.cpp
|
e773265edc75bbe042840f69696dd03b1bdacfd9 |
08-Nov-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Delete surfacefinger Layer::latchBuffer code"
|
bc01dccc455ace377eec9058e65764114b2b780c |
13-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete surfacefinger Layer::latchBuffer code Delete unreachable code. Change-Id: I6d895838cc4e0b84642f2c67d44306ba23696329
ayer.cpp
|
cd6fd5463d2e9b87504e29a39ac5f2395010805b |
13-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Refactor surfacefinger latchBuffer: Create method Shortens latchBuffer method, extracting transaction credential verification to dedicated function. Test: On device Change-Id: Ia7c2f977a85d1c1afd87425588c07eb756b00f15
ayer.cpp
ayer.h
|
7b1563a0e8e742315a16c9a7b27537dbcd13d09a |
13-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Refactor surfacefinger Layer::latchBuffer Take out Rejecter class declaration out of the method. This increases readability and shortens latchBuffer method by 200 lines. Change-Id: I8b07c63f8ed6408e68d5696d0666e65a3b14bd4c
ndroid.mk
ayer.cpp
ayerRejecter.cpp
ayerRejecter.h
|
c00aecf67a987f0263ef39300997acbdadc025c0 |
03-Nov-2016 |
Dan Stoza <stoza@google.com> |
SF: Request SF wakeup for pending transactions am: d9d1817e9a Change-Id: I9d84ef9636acd4359dad908241bac0a5a560cd00
|
d9d1817e9a2772239bbe2424fa747ec84b6030ff |
03-Nov-2016 |
Dan Stoza <stoza@google.com> |
SF: Request SF wakeup for pending transactions When a Layer receives a pending transaction, it sets a flag on itself that it needs a transaction to be handled, but it doesn't notify SurfaceFlinger to iterate through the layers and check for that flag. In some cases, this led to transactions never being processed, which can hang an application trying to push buffers that are part of a synchronized transaction. This change pokes SurfaceFlinger when setting the Layer flag so that it doesn't slip through the cracks. Bug: 32541494 Bug: 32629397 Test: Two successful monkey runs Change-Id: I4b906eee8004fad1938aa94a1aa0a0c7ea289102
ayer.cpp
|
d8c67ac656a87d30d2cea27ad0866352d51eb03f |
03-Nov-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Request SF wakeup for pending transactions"
|
f5702ff8b1919e0a5d342ad04ac486bbcde41461 |
03-Nov-2016 |
Dan Stoza <stoza@google.com> |
SF: Request SF wakeup for pending transactions When a Layer receives a pending transaction, it sets a flag on itself that it needs a transaction to be handled, but it doesn't notify SurfaceFlinger to iterate through the layers and check for that flag. In some cases, this led to transactions never being processed, which can hang an application trying to push buffers that are part of a synchronized transaction. This change pokes SurfaceFlinger when setting the Layer flag so that it doesn't slip through the cracks. Bug: 32541494 Test: Two successful monkey runs Change-Id: I4b906eee8004fad1938aa94a1aa0a0c7ea289102
ayer.cpp
|
f1019e29686c29c8c3fc2d71b92bc30897fbafb3 |
02-Nov-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Refactor SurfaceFlinger::onTransact"
|
6e8e98a23592c2522396b673145814a4bbee69db |
28-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Refactor SurfaceFlinger::onTransact Reduce length of SurfaceFlinger::onTransact by moving credential code to dedicated function. Change-Id: I0fa30439443295b4a807e0eeae4f113d7b0534c4
urfaceFlinger.cpp
urfaceFlinger.h
|
a3d6565aec327d7a83e86dd36a80cfcb3cef5d96 |
28-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Surfaceflinger: Document DdmConnection usage"
|
60a2eb0b4b939babc44e073c79f51326db0344bf |
27-Oct-2016 |
Colin Cross <ccross@android.com> |
Merge "Replace surfaceflinger protobufs with protobuf-lite"
|
4e475cf0946deff0e5a773c8768e3de54bf89ce3 |
27-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Surfaceflinger: Document DdmConnection usage Change-Id: Iebb1448ea8421b6bc8e5aedff64dddc50dbb012a
dmConnection.h
|
635493810ef89f476490d60115fed9ba74e9d704 |
26-Oct-2016 |
Colin Cross <ccross@android.com> |
Replace surfaceflinger protobufs with protobuf-lite Use lite protobufs for surfaceflinger to remove dependency on libprotobuf-cpp-full, which will be removed from the platform. Bug: 32417805 Test: builds Change-Id: Ie27b253a2f6c1b296c4ae7c7cb056cd3c4c0dde6
ndroid.mk
urfaceInterceptor.cpp
|
94ef1fda8ddd761b2ced012a7a43ce1481f76dc9 |
26-Oct-2016 |
Steve Pfetsch <spfetsch@google.com> |
Revert "services: surfaceflinger: ASAN fix" am: 598f6d5429 am: d5156b70ff am: 12924419de am: 6d2eb659a5 Change-Id: I609bac956dff460334942bd348c0eedc53a42123
|
6d2eb659a5c70648ef9f67bbd6272c90b42bab85 |
26-Oct-2016 |
Steve Pfetsch <spfetsch@google.com> |
Revert "services: surfaceflinger: ASAN fix" am: 598f6d5429 am: d5156b70ff am: 12924419de Change-Id: I520fff2e1cc9b3a49478cbc9e783df081defc75d
|
598f6d5429b290f33107ef678328914b99c8312e |
25-Oct-2016 |
Steve Pfetsch <spfetsch@google.com> |
Revert "services: surfaceflinger: ASAN fix" This reverts commit 1d3df546d5ee4dcc9e7cae6f8b8b790f741539af. Original patch may have caused a stability issue caught in monkey testing. Bug: 32312240 Change-Id: Ie8d291679590e624b8b90c4786b1c25c76cb2c9f
urfaceFlinger.cpp
|
08dc2ef81e73d2f17f5e679cbdbee911e9d98b98 |
20-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Delete RenderEngine path for OpenGL ES 1.0/1.1"
|
f29cd52bd2dec2e3053fa41d852ba5708133daa7 |
19-Oct-2016 |
Elliott Hughes <enh@google.com> |
Merge "Rely on the platform -std default."
|
f4ddfacffd96267ee43cf2cf3b7cacf9374b4135 |
19-Oct-2016 |
Steve Pfetsch <spfetsch@google.com> |
services: surfaceflinger: ASAN fix am: 1d3df546d5 am: ff06017cfe am: 409c087ffe Change-Id: Ia0a821a314c9bc5582cef8f434a77115599263e2
|
409c087ffe6aa79d943e0ed18593df19967f81d5 |
19-Oct-2016 |
Steve Pfetsch <spfetsch@google.com> |
services: surfaceflinger: ASAN fix am: 1d3df546d5 am: ff06017cfe Change-Id: Ie1f5418312cffc6b1a1ec9a7fd0194babaf9d6d9
|
1d3df546d5ee4dcc9e7cae6f8b8b790f741539af |
30-Sep-2016 |
Steve Pfetsch <spfetsch@google.com> |
services: surfaceflinger: ASAN fix Move layer removal to the main thread, while the display is on. Bug: 30281222 Change-Id: Id9f956c1e626819734868340e7fa12abf257b702
urfaceFlinger.cpp
|
ba03e655d1327e5e165c854ec2b8284529eefff9 |
18-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Fix surfaceflinger file descriptor leak" am: af2fbb0ccc am: ee87482e6d am: 735d32406d Change-Id: Iadc2fdb10b6648e36d304dd22fd1119a3b03d728
|
ee87482e6d9437f0a8690f32791120e8fd43d799 |
18-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Fix surfaceflinger file descriptor leak" am: af2fbb0ccc Change-Id: If21d062e144dd13064c0c3e8021523a8bf20b864
|
a22f06483b0846867c64779e7a22dfa3f1c91539 |
18-Oct-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Refactor Surfaceflinger Layer::latchBuffer"
|
0a4b26ecb6a9f772502c770fbe4c9fc661578cb7 |
15-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Fix surfaceflinger file descriptor leak If a producer queues a buffer after a screen resize, the buffer will not be removed from the buffer queue, resulting in a leak of file descriptor. Test: Fix was tested by the bug reporter (ARM). Bug: 32012717 Change-Id: I3b7b0745d5fbdee97fc8df2db399c1a2fcdeb375
urfaceFlingerConsumer.cpp
|
4f89564970a9e8187a1eaa37000bcb50d6dfadc4 |
14-Oct-2016 |
Elliott Hughes <enh@google.com> |
Rely on the platform -std default. Bug: http://b/32019064 Test: builds Change-Id: I03f8e660cfff247e061c838d74761a4e61ae15e8
ests/Android.mk
|
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
ndroid.mk
isplayHardware/ComposerHal.cpp
isplayHardware/ComposerHal.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
|
efb93455b3a95458d68897c3b38f7f98046c697e |
04-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete RenderEngine path for OpenGL ES 1.0/1.1 Change-Id: Ibf9e80866a38d09a025ff5031590beb11f4c2b72
ndroid.mk
enderEngine/GLES10RenderEngine.cpp
enderEngine/GLES10RenderEngine.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/RenderEngine.cpp
|
223eb91c416f4acb3e635f1dccf5e5ba74c0d866 |
13-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Refactor Surfaceflinger Layer::latchBuffer Reduces indentation of 300 lines via an early return if no work is detected. Change-Id: I08fe2a3e2808ae58e3da28a1c2f7d28e7a4a98af
ayer.cpp
|
2207efc446715f8274fdfa082b139ce05cd711d3 |
12-Oct-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "PowerHAL: Make powerHAL calls compatible with HIDL"
|
857a891096efd6d0c8de42e6088fc067be3584da |
11-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Merge "Revert "Delete HWC1""
|
9d96de49673cb6c916bfb797aad4f4e024ea73ca |
11-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Revert "Delete HWC1" This reverts commit 90f923493fa053655a203c34ea491086aeb07602. Change-Id: If9da49e3bc85f8ff21ac1bd22a6bab97e9aa3103
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ventControlThread.cpp
enceTracker.cpp
ayer.cpp
ayer.h
enderEngine/GLES10RenderEngine.cpp
enderEngine/GLES10RenderEngine.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
9d1ee208d6bd07c8de15b4ec8b29bbba30343ea7 |
11-Oct-2016 |
Elliott Hughes <enh@google.com> |
Merge "Rely on the platform -std default." am: 53b6fc5ddc am: 0ef01bab39 am: b48bc88b75 am: a16f14f826 Change-Id: Idadc8d71628f57e8c50abc6dd1a928dc42590fbc
|
a16f14f826bb64185ccaf0b6e872d2d5facc0a33 |
11-Oct-2016 |
Elliott Hughes <enh@google.com> |
Merge "Rely on the platform -std default." am: 53b6fc5ddc am: 0ef01bab39 am: b48bc88b75 Change-Id: I948f14c73030d6d0f0cae8b9e374962ad119f7f6
|
b48bc88b75dbba55d77543bf6c87f4909366a61a |
11-Oct-2016 |
Elliott Hughes <enh@google.com> |
Merge "Rely on the platform -std default." am: 53b6fc5ddc am: 0ef01bab39 Change-Id: I11137b0f1327691fa88acee67d9270fe509aa353
|
90f923493fa053655a203c34ea491086aeb07602 |
03-Oct-2016 |
Fabien Sanglard <sanglardf@google.com> |
Delete HWC1 After 10 years of good service, HWC1 is not needed anymore since HWC2 is now mandatory. Change-Id: I5768b50c89854688ba31032f01ea231699393e5b
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ventControlThread.cpp
enceTracker.cpp
ayer.cpp
ayer.h
enderEngine/GLES10RenderEngine.cpp
enderEngine/GLES10RenderEngine.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
e390826e3871b68c6a282eef71d8f92bc7758378 |
08-Oct-2016 |
Elliott Hughes <enh@google.com> |
Rely on the platform -std default. Bug: http://b/32019064 Test: builds Change-Id: Ie2df259641889b3ce95648bd2be48d061108162c
ndroid.mk
|
b5ee1789189b52d0dbb96c42d8ff36397b3011b2 |
05-Oct-2016 |
Ruchi Kandoi <kandoiruchi@google.com> |
PowerHAL: Make powerHAL calls compatible with HIDL Bug: 31177288 Change-Id: Ibce75c770996aa32385dab388baf32abb27792cb Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
ndroid.mk
isplayHardware/PowerHAL.cpp
|
bb6d63ad528f94c350b65fb9f94004c691360066 |
01-Oct-2016 |
Colin Cross <ccross@android.com> |
Merge "Rename dump methods to dumpState" am: c72b9a3ce4 am: 219df2fd5b Change-Id: I0597aa09cf66820708b125421e0814d1c1f6a4ac
|
dc782511dcaf46c7fa7488391cc27f0d0be354b0 |
27-Sep-2016 |
Colin Cross <ccross@android.com> |
Rename dump methods to dumpState The dump methods shadow the IBinder dump method. The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: Iafc64da43032d5d9d84b64640e70d93fd7051bcf (cherry picked from commit 3d1d280fa3cbc30700f728a4b13e5308315433d3)
isplayHardware/FramebufferSurface.cpp
ayer.cpp
|
5fa1223322175356e6ac943cb06d8b1e1cfc39d9 |
27-Sep-2016 |
Colin Cross <ccross@android.com> |
Rename dump methods to dumpState The dump methods shadow the IBinder dump method. The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Merged-in: Iafc64da43032d5d9d84b64640e70d93fd7051bcf Change-Id: Iafc64da43032d5d9d84b64640e70d93fd7051bcf
isplayHardware/FramebufferSurface.cpp
ayer.cpp
|
6ce2ad43106580efe13ce133fe579e4efcab51ce |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues am: de84eb6b82 am: 1ce7c1d3aa Change-Id: I2ff87a50409fcc244b2cb59286990f98affdedbc
|
180297052560896e7f8411cfd2e104318f3edbab |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed am: f9f7f6931f am: 58719ff766 Change-Id: I559a674184a0a08829b49dd90d85e75478385021
|
af63992893c5493f605a2c653091694f378bf411 |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Clear transform for SolidColor layers am: f1098abecf am: 21200d1887 Change-Id: I1039e2ddcbc139e5234f996be343e4ba88c0e75d
|
f12431879e4f465d3a81103c07b8d7d0c5f0d1e5 |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Use SolidColor composition for DimLayer am: 0183f7acac am: b4365b8d0b Change-Id: I89241809c69af21aa62a5af7562d8f3e6bb8dbd7
|
860ff9c846df2dc0ce833e8ff20c5d1e7cfac869 |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Kill logspam for non-HWC virtual displays am: 179533d107 am: 9853a795ab Change-Id: I68c6c6a0bdefb7b196eacd95e486f275c21377df
|
aa23ebe03e33d6e8a02afb99a47f719e4786e56c |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Fix virtual displays am: 5450fe5268 am: d6fb6ea07b Change-Id: I11166b2d968bf8a4ba23b5ba86bf307a457e8ba9
|
64e18c2bfe1e19a69135449f574206dc8cfbc1fd |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Don't set null handle for client layers am: 6be002845f am: 0fac961a58 Change-Id: I259c37bd7ba6cf57f07f494cce4bfda7f837d76c
|
607bb29a98afce2deba19563f35969ad25190c93 |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up to BoardConfig variable am: 8beb15f220 am: 608852e318 Change-Id: I91252f79de7035b958329a68e4172edb5b2c302a
|
ebec74a2152a7d6e378c35ef5ddbe939210f3918 |
30-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Skip validate/present if display is off am: 00ac359a3b am: de79392408 Change-Id: I36810f4c2623591942bac447b2b118edc3104f9d
|
3d1d280fa3cbc30700f728a4b13e5308315433d3 |
27-Sep-2016 |
Colin Cross <ccross@android.com> |
Rename dump methods to dumpState The dump methods shadow the IBinder dump method. The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: Iafc64da43032d5d9d84b64640e70d93fd7051bcf
isplayHardware/FramebufferSurface.cpp
ayer.cpp
|
de84eb6b823ff143f3465ce8f291f1100ce42168 |
09-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues This is an attempt at fixing two reference counting issues for Layers. The first issue is that since we were holding an sp<IBinder> (really a reference to a LayerCleaner) inside the layer state for deferred transactions, there was a possibility that it could end up being the last strong reference to the LayerCleaner such that when it was destroyed while applying a non-deferred transaction, it would attempt to grab the SurfaceFlinger main lock to destroy its Layer. Since this occurred in the main SurfaceFlinger loop, which was already holding the lock to process transactions, this would cause a deadlock. To fix this, the sp<IBinder> inside the layer state was changed to a wp<IBinder>, only being promoted when it actually needs to be accessed (i.e., when the deferred transaction is created). The second issue is that we were promoting and holding a strong reference to a Layer before calling into SurfaceFlinger to destroy it on the onLayerDestroyed path (triggered when a LayerCleaner is destroyed). After returning from the attempt to grab the SurfaceFlinger main lock, it was possible that this strong reference was the last one keeping the Layer alive, and destroying it at this point could cause the HWC2 version of the layer to be destroyed at effectively any point, even between validate/present. To fix this, the promotion of the weak Layer reference was moved inside the critical section where the SurfaceFlinger main lock is held. Test: Cherry-pick from internal branch Bug: 30503916 Bug: 30281222 Change-Id: I1c6a271f9a7b5d6eea9a9db61d971f262d0cfe84
lient.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
f9f7f6931f521ddcab6f1f47294cc26326c4be1a |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed The SurfaceFlinger executable wasn't picking up the USE_HWC2 flag when enabled by the TARGET_USES_HWC2 BoardConfig, causing a mismatch in the size of the SurfaceFlinger object. This fixes that by also passing USE_HWC2 when building the executable. Test: Cherry-pick from internal branch Bug: 30302693 Change-Id: I1e41e5f548d4b8329590a082d9b69155ba365be9
ndroid.mk
|
f1098abecf28185256a4df8b9f207e90400af675 |
27-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Clear transform for SolidColor layers Clears the transform for SolidColor layers, since it doesn't make sense to transform layers without a buffer. Test: Cherry-pick from internal branch Bug: 30429522 Change-Id: Ib2f4889531556c7ab00e3b270319c321e9f32c84
ayer.cpp
|
0183f7acac82abd358c61d8b735b5ed79c8c81e4 |
20-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Use SolidColor composition for DimLayer Switches SurfaceFlinger to try to use SolidColor HWC device composition for DimLayers instead of always falling back to client composition. Test: Cherry-pick from internal branch Bug: 30216498 Change-Id: Ia8af95d214ba72b5657f32f7827a1e6278629f17
ayer.cpp
|
179533d10781a5f71980e07c64e389c8828507fe |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Kill logspam for non-HWC virtual displays Removes some logspam and fixes some non-errors which were reported as errors when running a virtual display that is not backed by hardware composer. Test: Cherry-pick from internal branch Bug: 30022738 Change-Id: Ie966e37d95f53bcc050eef064d24bbe26748b7fd
isplayHardware/HWComposer.cpp
ayer.cpp
|
5450fe526801ff9f5b05487995745a146dc5150b |
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. Test: Cherry-pick from internal branch Bug: 29945684 Change-Id: Ib1b5d81e42a63d0e65b189f7c6c62e661e0ab6ae
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
6be002845f9dd310679f8cb11fa9d9217f650e3b |
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Don't set null handle for client layers Removes the code that explicitly set a null buffer handle for client layers. Test: Cherry-pick from internal branch Bug: 29463310 Change-Id: I570e6041ba72d64971bb6c364e8e7b6f84eeff08
ayer.cpp
|
8beb15f220fa7bb6a64235b509c818ecf1d45d81 |
21-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up to BoardConfig variable Uses TARGET_USES_HWC2 to enable the HWC2 code path in SurfaceFlinger Test: Cherry-pick from internal branch Bug: 27211042 Change-Id: I7b7e3e3f7a918e74df0be27418196c81b4332564
ndroid.mk
|
00ac359a3b69670824ceab8d1dd5a1d5ad0ac5bd |
17-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Skip validate/present if display is off Adds checks to ensure that the display is still on before attempting to call into prepareFrame/commit (which in turn call into validate/present). Test: Cherry-pick from internal branch Bug: 28596387 Change-Id: Iad87f02c3e44e86db43a15c258ee66b0cde14faa
urfaceFlinger.cpp
|
3d0becdcec3f27880b345bd05f2120c1f7e668df |
23-Sep-2016 |
Robert Carr <racarr@google.com> |
Surface: Add force disconnection method. am: 97b9c86338 am: 962b13b9be am: a9d1c1099d Change-Id: Iea981cfaddd2be6ecdfebbdfadd9d822f17d682f
|
a9d1c1099d795d8ccafbbf48ee053d34505fbbde |
23-Sep-2016 |
Robert Carr <racarr@google.com> |
Surface: Add force disconnection method. am: 97b9c86338 am: 962b13b9be Change-Id: Ie74482a867c24213a25332650b38c733e183630b
|
962b13b9be70217fc6f0c8db72891c44629c345c |
23-Sep-2016 |
Robert Carr <racarr@google.com> |
Surface: Add force disconnection method. am: 97b9c86338 Change-Id: Ia9f9dbdcbd9527d54dacb2cdc90eda443230e8d9
|
6cc1933af9c0cf656f9a511155f6613f8dbba667 |
22-Sep-2016 |
Rob Carr <racarr@google.com> |
Merge "Surface: Add force disconnection method." into nyc-mr1-dev
|
1bd88fc3350640c028a0f301e6903a2a480f9397 |
16-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2On1: Fall back to GLES for SolidColor am: 5df47cb648 am: d946ae67c2 am: 9e718be5fb Change-Id: I9644bee3005e9d819fa375c41ee36b6f0e04287e
|
9e718be5fbf6bd89cd734be635fc67c8e631e2f6 |
16-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2On1: Fall back to GLES for SolidColor am: 5df47cb648 am: d946ae67c2 Change-Id: I9c866a4cbf23f4e8dcdaf922063c4a26f7da7c51
|
5df47cb648a6911dd62527901bb209fd65c73bed |
16-Sep-2016 |
Dan Stoza <stoza@google.com> |
HWC2On1: Fall back to GLES for SolidColor Even though SolidColor layers map cleanly to HWC_BACKGROUND composition in HWC1, SurfaceFlinger never used HWC_BACKGROUND, so we can't trust that HWC1 devices implemented it correctly. To preserve backwards compatibility, this changes the behavior to fall back to client composition to minimize incompatibilities with existing devices. Bug: 30479781 Change-Id: I638339062e03f2c057b3e1624e7157587ddee7ec
isplayHardware/HWC2On1Adapter.cpp
|
b2c838b7add20c4515966a80de809b0a1d315001 |
04-Aug-2016 |
Season Li <seasonl@nvidia.com> |
SF: Call makeCurrent after presenting each display HWC can change EGLContext in each present. Restore to default EGLContext after commiting each display. Change-Id: I4abc84fb3d4b74964fabcad5a2568ff01a6c5dbb
urfaceFlinger.cpp
|
97b9c86338e2d364d47ea7522c2d81a8014f0e07 |
08-Sep-2016 |
Robert Carr <racarr@google.com> |
Surface: Add force disconnection method. Add a new method forceScopedDisconnect to Surface. This will be used by the framework to force disconnection at times where the underlying GraphicBufferProducer may be about to be reused. This is scoped by PID to avoid conflicting with remote producers. Bug: 30236166 Change-Id: I857216483c0b550f240b3baea41977cbc58a67ed
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
071b0a64c6dad8eaa1449827e44faae57dba851b |
12-Sep-2016 |
Chih-Hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in surfaceflinger." am: 5e703a6ad0 am: 101b4cc9d7 am: 32db2f3c9f am: 9a9816ad3f Change-Id: I5766b8b9adb236795cc7c8449d97b6c300512623
|
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
|
32db2f3c9f71da6da5fb5a25623a8dfdbd5e8d49 |
12-Sep-2016 |
Chih-Hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in surfaceflinger." am: 5e703a6ad0 am: 101b4cc9d7 Change-Id: I02a49f1207899cf0153e1aa9649e105372117e25
|
5094374db6e048a623c86f55b0304d2895cd6562 |
12-Sep-2016 |
Dan Stoza <stoza@google.com> |
Update default DispSync offsets am: 28ffe198bf am: e826b1c2c4 am: 8be61c5565 Change-Id: Iaf8c573182d69b7fde97e6a1a834caebf41913bb
|
8be61c5565c7444b4dd89b32bd2f84bc4c18a211 |
12-Sep-2016 |
Dan Stoza <stoza@google.com> |
Update default DispSync offsets am: 28ffe198bf am: e826b1c2c4 Change-Id: I3acb2aadf64e1ea19af4e675088c67f3145e03a0
|
e826b1c2c42e41a06e66420624630c8770286091 |
12-Sep-2016 |
Dan Stoza <stoza@google.com> |
Update default DispSync offsets am: 28ffe198bf Change-Id: Id3d014c7a289890c97ca91980407e060e993bd46
|
0c083d43f275382b25ed01baf57c6ee72532e7ea |
12-Sep-2016 |
Dan Stoza <stoza@google.com> |
Merge "Update default DispSync offsets" into nyc-mr1-dev
|
28ffe198bfab3761f97ce2f74ef479bafc5bbd99 |
09-Sep-2016 |
Dan Stoza <stoza@google.com> |
Update default DispSync offsets Updates the default DispSync offsets to 1ms/1ms to avoid SurfaceFlinger racing against hardware vsync on untuned video-mode panels, which can result in a significant number of dropped frames. Also moves and updates the documentation of the offsets, which used to live in build/target/board/generic/BoardConfig.mk. Bug: 30801895 Change-Id: I4cb09d840e2f16fb3d05df4d7abf58d9ba36f83b
ndroid.mk
|
75b1868620b63f772a93cbc9a67dec5a62cc6182 |
08-Sep-2016 |
Tim Murray <timmurray@google.com> |
Boost priority of short-running SF FIFO threads slightly. am: 35520634e2 am: 584fb9544f am: 7a7de48b25 Change-Id: I23f953ba137f7958e77733fc516cfa5c351290f8
|
7a7de48b2559d024a463e15cd4627b3ca0978800 |
08-Sep-2016 |
Tim Murray <timmurray@google.com> |
Boost priority of short-running SF FIFO threads slightly. am: 35520634e2 am: 584fb9544f Change-Id: Ib10bc21d1166df03704fcc2b67b99ed3c1a92464
|
584fb9544f2ce5fab38691b88bac42359de6c51b |
08-Sep-2016 |
Tim Murray <timmurray@google.com> |
Boost priority of short-running SF FIFO threads slightly. am: 35520634e2 Change-Id: Ic4a53cc1399dff489414ac1c891a041c2500b8e2
|
4df766b00ac6801f2e4462b20b6dd6f195051afb |
08-Sep-2016 |
Tim Murray <timmurray@google.com> |
Merge "Boost priority of short-running SF FIFO threads slightly." into nyc-mr1-dev
|
58a64714126bf3d34566d56cb535e2ae78d1c5ef |
08-Sep-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add a layer minidump am: e22aec741f am: a9f976b50f am: 11e9bd2b48 Change-Id: I14a22fe1dde3e93107834516ad826ddadcd6781a
|
11e9bd2b4861cc8e878fd7da3e65e66167b3d001 |
08-Sep-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add a layer minidump am: e22aec741f am: a9f976b50f Change-Id: Ia04d91da4cc6fc6e2962c7dc6421882c2e4874b6
|
a9f976b50f03890e7b1cb6c182f7608360b2bdbc |
08-Sep-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add a layer minidump am: e22aec741f Change-Id: Ib97254ebbf2e914c965b529e7d1e59a01db48214
|
a020f00bc156ebdf6ea1f3c2de8af049dac9d5e6 |
08-Sep-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF/HWC2: Add a layer minidump" into nyc-mr1-dev
|
35520634e298f53bd8433825640d6999760f25b3 |
07-Sep-2016 |
Tim Murray <timmurray@google.com> |
Boost priority of short-running SF FIFO threads slightly. The short-running FIFO threads should preempt the SurfaceFlinger main thread in order to prevent deadlock. bug 31223682 Change-Id: I29e7b4b8439bb876998a8aeeb2b8d6ee5b6b7d36
ispSync.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
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
lient.h
olorizer.h
ispSync.h
isplayHardware/FloatRect.h
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.h
ventControlThread.h
ventLog/EventLog.h
ventThread.h
ayer.h
essageQueue.h
|
3017c615cff999fbdbd205e60eaa76e03a8265da |
10-Aug-2016 |
Irvel <irvel@google.com> |
SF: Change wp usage for deferred transactions in the interceptor to sp Change-Id: Iebee77d30f0b49dc94c3b23e56683efcb2133993
urfaceInterceptor.cpp
urfaceInterceptor.h
|
22851c3ba2cf5ccb0c3a0aa6c5b94ae123a5616a |
09-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues This is an attempt at fixing two reference counting issues for Layers. The first issue is that since we were holding an sp<IBinder> (really a reference to a LayerCleaner) inside the layer state for deferred transactions, there was a possibility that it could end up being the last strong reference to the LayerCleaner such that when it was destroyed while applying a non-deferred transaction, it would attempt to grab the SurfaceFlinger main lock to destroy its Layer. Since this occurred in the main SurfaceFlinger loop, which was already holding the lock to process transactions, this would cause a deadlock. To fix this, the sp<IBinder> inside the layer state was changed to a wp<IBinder>, only being promoted when it actually needs to be accessed (i.e., when the deferred transaction is created). The second issue is that we were promoting and holding a strong reference to a Layer before calling into SurfaceFlinger to destroy it on the onLayerDestroyed path (triggered when a LayerCleaner is destroyed). After returning from the attempt to grab the SurfaceFlinger main lock, it was possible that this strong reference was the last one keeping the Layer alive, and destroying it at this point could cause the HWC2 version of the layer to be destroyed at effectively any point, even between validate/present. To fix this, the promotion of the weak Layer reference was moved inside the critical section where the SurfaceFlinger main lock is held. Bug: 30503916 Bug: 30281222 Change-Id: I1c6a271f9a7b5d6eea9a9db61d971f262d0cfe84
lient.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
ab04685578b254c2eaf43bf5da85e5e922787825 |
28-Jul-2016 |
Irvel <irvel@google.com> |
Fix duplicated VSync tracing in SurfaceInterceptor Change-Id: Id02bb2916d0c53dc11d7106c4aec6954a1acc035
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
ffc9efc4b55df38ac524f20cdd1a2fca8e259fae |
28-Jul-2016 |
Irvel <irvel@google.com> |
Add display tracing to SurfaceInterceptor Change-Id: Iaae5a840ca7dca7a9a70dde1ccab0fa3944cd863
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
urfaceInterceptor.cpp
urfaceInterceptor.h
ests/SurfaceInterceptor_test.cpp
|
a807cd502e3e8e78095efd8ac5bd2a087a934d20 |
12-Aug-2016 |
Dan Stoza <stoza@google.com> |
DO NOT MERGE SF: Add property to disable HWC virtual displays am: 3cf4bfe236 am: cce24b398c Change-Id: I0eb9092b3f09b607bb4d2da5d5533867d6ef1ebd
|
cce24b398ce24f7deeac4f92560766c330717c63 |
12-Aug-2016 |
Dan Stoza <stoza@google.com> |
DO NOT MERGE SF: Add property to disable HWC virtual displays am: 3cf4bfe236 Change-Id: I615cdf9466cbb37d32890f126dc0be1fecf9a50a
|
e26ce9f612d3afe54b9806beee3fd0a3dc1638be |
12-Aug-2016 |
Dan Stoza <stoza@google.com> |
Merge "DO NOT MERGE SF: Add property to disable HWC virtual displays" into nyc-mr1-dev
|
3cf4bfe2368020b50a3e22360910b6af6590c5be |
02-Aug-2016 |
Dan Stoza <stoza@google.com> |
DO NOT MERGE SF: Add property to disable HWC virtual displays Adds the property debug.sf.disable_hwc_vds, which will disable the use of Hardware Composer virtual displays inside SurfaceFlinger (falling back to SurfaceFlinger management and client composition of such displays). Also adds a Binder debug interface for controlling this behavior. Bug: 30510632 Change-Id: I2c1a199213a24195b144bfa0c0f1679f2dfd0668
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
8cf150a0341768133b37cd9c6f2369bf6f79a943 |
02-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Add property to disable HWC virtual displays Adds the property debug.sf.disable_hwc_vds, which will disable the use of Hardware Composer virtual displays inside SurfaceFlinger (falling back to SurfaceFlinger management and client composition of such displays). Also adds a Binder debug interface for controlling this behavior. Bug: 30510632 Change-Id: I2c1a199213a24195b144bfa0c0f1679f2dfd0668
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
ae56a32be71278b77e82fe56bcfbdc9589f7e1dc |
10-Aug-2016 |
Dan Stoza <stoza@google.com> |
Revert "SF: Fix a couple of Layer ref count issues" This reverts commit 92cd24e5f648175944deef5899258981807a9ca4. Change-Id: I551c292d8151d39bd34f2667eda384273f7cfd87
lient.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
dd03e70fd620a7a305c1a271583e0da07d6c1ac4 |
10-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues am: 92cd24e5f6 am: 56e16bb1ca am: 263910d00a Change-Id: I76564ea2195d2de9aaf00ebd4c50db1d36dafeff
|
263910d00ac40a5787a414a79df94d3459139e87 |
10-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues am: 92cd24e5f6 am: 56e16bb1ca Change-Id: I64cac41e0f6e6412a3334cf17c15c9b754f8dd07
|
92cd24e5f648175944deef5899258981807a9ca4 |
09-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF: Fix a couple of Layer ref count issues This is an attempt at fixing two reference counting issues for Layers. The first issue is that since we were holding an sp<IBinder> (really a reference to a LayerCleaner) inside the layer state for deferred transactions, there was a possibility that it could end up being the last strong reference to the LayerCleaner such that when it was destroyed while applying a non-deferred transaction, it would attempt to grab the SurfaceFlinger main lock to destroy its Layer. Since this occurred in the main SurfaceFlinger loop, which was already holding the lock to process transactions, this would cause a deadlock. To fix this, the sp<IBinder> inside the layer state was changed to a wp<IBinder>, only being promoted when it actually needs to be accessed (i.e., when the deferred transaction is created). The second issue is that we were promoting and holding a strong reference to a Layer before calling into SurfaceFlinger to destroy it on the onLayerDestroyed path (triggered when a LayerCleaner is destroyed). After returning from the attempt to grab the SurfaceFlinger main lock, it was possible that this strong reference was the last one keeping the Layer alive, and destroying it at this point could cause the HWC2 version of the layer to be destroyed at effectively any point, even between validate/present. To fix this, the promotion of the weak Layer reference was moved inside the critical section where the SurfaceFlinger main lock is held. Bug: 30503916 Bug: 30281222 Change-Id: I1c6a271f9a7b5d6eea9a9db61d971f262d0cfe84
lient.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
d140bf8cce87d4b6315616377401f575722a0460 |
05-Aug-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Change rounding behavior in setGeometry am: 51450039e2 am: fe341317d8 am: 6d9171c77d Change-Id: I949262c1d530f10393e7044ee2751021fc7da61c
|
6d9171c77d7a0309ff55d3dcbd79b42c8ecdd49c |
05-Aug-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Change rounding behavior in setGeometry am: 51450039e2 am: fe341317d8 Change-Id: I084385b24f0817ece6989c83cc682129001daa8d
|
fe341317d858309245c79eab42483ad5f20afeb8 |
05-Aug-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Change rounding behavior in setGeometry am: 51450039e2 Change-Id: I51c03c80fce5cb949e652d21069f5ae50e6588d3
|
6d7d099b8e33ceeabb9749b1a3fdef36dfa25e05 |
05-Aug-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Change rounding behavior in setGeometry" into nyc-mr1-dev
|
51450039e2fd266b31f33dfd1b4353bc1b0b145a |
03-Aug-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Change rounding behavior in setGeometry - Add an option for a transform to round outwards instead of to the nearest pixel. - Use this new rounding behavior when converting the crop rectangle from display-space to layer-space. Otherwise a pixel that will partially be on the screen might be marked as transparent. Bug 30510632 Change-Id: I1aece177cc29c54ee0d4a2c919e47442eb455f30
ayer.cpp
ransform.cpp
ransform.h
|
43d4e6a7b9eae63e66c0fdfd8c514ba678f0cfb5 |
03-Aug-2016 |
Tim Murray <timmurray@google.com> |
Disable SCHED_FIFO when turning off the display. am: f9d4e44fff am: d406094fe9 am: 53b2a9f89f Change-Id: I46a698104605c50d595023118346a656b31fb29a
|
53b2a9f89f6e2b4c0eda9a2f1516ee3d14287430 |
03-Aug-2016 |
Tim Murray <timmurray@google.com> |
Disable SCHED_FIFO when turning off the display. am: f9d4e44fff am: d406094fe9 Change-Id: Ia5020b7e8c2e09524e8801068c2863af933c7714
|
f9d4e44fff4f9c0a09e5820a5596c6dec34ee4da |
03-Aug-2016 |
Tim Murray <timmurray@google.com> |
Disable SCHED_FIFO when turning off the display. There can be long SF runtimes when turning the display on or off. Only use SCHED_FIFO when we are actively going to be rendering frames, not when turning the display on or off. bug 30375418 Change-Id: Ibef8e5f3bba0bafc36f92f9f1b299f015fc335f9
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
c1ba5c4649554e744844b07cfe402b42fbe12ff3 |
08-Jun-2016 |
Sahil Dhanju <sahildhanju@google.com> |
Multithreaded Surface Replayer that replays traces Change-Id: Id8d17f74e00d4796e1ea266bdaf9e8dd0af6475b
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
a05cafa14c2699cac45e6d1f411f061bf52ff9a5 |
29-Jul-2016 |
Sahil Dhanju <sahildhanju@google.com> |
Renamed folder holding trace protobuf and updated Updated SurfaceInterceptor include path for protobuf Change-Id: Iad613857ccdb876621f6fc067bcdc5083e9557f3
urfaceInterceptor.h
|
13beaf9e0100dcad515763e0c4607719ab4e2fc7 |
02-Aug-2016 |
Dimitry Ivanov <dimitry@google.com> |
Merge "libsigchain: intercept bsd_signal on lp32" am: 1c59b4b4e8 am: 759d63a2f4 am: fb4a57b5c4 am: 401723958d Change-Id: Iea4a21264332b455b4eadcda99acc55eaef9496e
|
e22aec741f1530cde86c38989bcc2f87626b93b0 |
01-Aug-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add a layer minidump Adds a brief dump of visible HWC layers to replace functionality that was lost when moving from HWC1 to HWC2. Bug: 30242002 Change-Id: I7331517c7d1eb515b33d5db85cdaf23d8b9ae9d9
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
401723958d23d049b96b44eaddb78b0547128c5e |
02-Aug-2016 |
Dimitry Ivanov <dimitry@google.com> |
Merge "libsigchain: intercept bsd_signal on lp32" am: 1c59b4b4e8 am: 759d63a2f4 am: fb4a57b5c4 Change-Id: Ieb930794c7a91c6392e349a02cbebcbfffe61aa4
|
fb4a57b5c4c0195358364d955050218936599c7b |
02-Aug-2016 |
Dimitry Ivanov <dimitry@google.com> |
Merge "libsigchain: intercept bsd_signal on lp32" am: 1c59b4b4e8 am: 759d63a2f4 Change-Id: I53158e2be6716ee5db2c995822e735fb255adc9c
|
759d63a2f418734d11a25dab122d470675fd9359 |
02-Aug-2016 |
Dimitry Ivanov <dimitry@google.com> |
Merge "libsigchain: intercept bsd_signal on lp32" am: 1c59b4b4e8 Change-Id: Ib0b9789d7a75928f7433557936b9fac81c53b049
|
de4883bab707e2699350d561c5e6382d0bad34ba |
02-Aug-2016 |
Tim Murray <timmurray@google.com> |
Update SurfaceFlinger FIFO configuration. am: acff43dca6 am: 4d818bf221 am: 618f8aba21 Change-Id: Ie003b648afb3b63abf8335d4332c22fcdd98c1d5
|
f06248fa21d9b5a84d9aa65712f0ebc52c8384b1 |
01-Aug-2016 |
Dimitry Ivanov <dimitry@google.com> |
libsigchain: intercept bsd_signal on lp32 bsd_signal is a deprecated synonym for the signal. Nevertheless there are apps and libraries calling this function. libsigchain needs to intercept these calls and handle them the same way it handles signal() call. Bug: http://b/30562229 Test: readelf --dyn-sym surfaceflinger and check that bsd_signal is exported for lp32 and is not exported for lp64 binary version Change-Id: If80e45502275b26c3ee4026ab12cadd77f8fbd3b
ndroid.mk
|
618f8aba211c60ee5f4a48e1ff38e13b4c20a542 |
31-Jul-2016 |
Tim Murray <timmurray@google.com> |
Update SurfaceFlinger FIFO configuration. am: acff43dca6 am: 4d818bf221 Change-Id: Ic21edd708e48ef535afc927e821451b3fbb20c66
|
1f81e804013dec130252cda03b3b4f37f548a304 |
30-Jul-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Remove unused variable"
|
426ab7b1b42ad0f67b9eccd4e068973fc6266ff7 |
30-Jul-2016 |
Mukul Sati <msati@google.com> |
Remove unused variable Remove an unused local variable in surfaceflinger tests Change-Id: I30bc41094bb3487bc1d90586eda8d1a87ccae35a
ests/Transaction_test.cpp
|
acff43dca6a3c8a29f449706967d4de21c373d26 |
29-Jul-2016 |
Tim Murray <timmurray@google.com> |
Update SurfaceFlinger FIFO configuration. - move SurfaceFlinger main thread to prio 2 - drop EventThread from FIFO but not SFEventThread, which is still FIFO prio 1 - make DispSyncThread FIFO, prio 1 bug 30481949 Change-Id: Ifedccfbf3cf144ffad030109849a924dddae8d09
ispSync.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
ain_surfaceflinger.cpp
|
5043c3b32c7a7cec264ac89c767b26e101d7f034 |
29-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF: Prime shader cache before boot animation am: 4e63777f75 am: fa37ad521a am: 85c57eb151 Change-Id: I2ef501e59efd2a510db07df998f11f05b563df14
|
85c57eb151ac673eb869f57add64819afdea9bcc |
29-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF: Prime shader cache before boot animation am: 4e63777f75 am: fa37ad521a Change-Id: I5a0b3152dab5f7d6813220a5f53581a5563d7bad
|
4e63777f75e9756c74352e62e79dfa8a994de2b3 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF: Prime shader cache before boot animation Primes the shader cache before launching boot animation to avoid janking when we eventually fall into GLES composition. Bug: 30040263 Change-Id: I76ba66e92c5e6bb05930c325f384f3b774e91101
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
03003aa55a7c27319c96b32430d9e7b2da5ff782 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed am: 10d3fb2360 am: 81451c036d am: b9f30594c7 Change-Id: I9f903148a50a5fee26bc081a69d9329ae0ef5b87
|
b9f30594c7deed45bce3950eb14363aa359ef5cc |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed am: 10d3fb2360 am: 81451c036d Change-Id: Ic261e108736232f805fa1da120784225d7781451
|
81451c036d90311c1b4e5be15d0d8c94c9998c21 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed am: 10d3fb2360 Change-Id: I8c97bd2ac61eaba8237c1792f1ab7f739bdbd30e
|
b203e3cf262df06248d52797593678a756aba094 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Clear transform for SolidColor layers am: c6c8954b42 am: bc028a8e49 am: cb585c99a9 Change-Id: Ibb250079d4149f6fd78489f1b949733875921618
|
98650f0e33f39627d66feee73f03346e1055157a |
28-Jul-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Build SF executable with USE_HWC2 when needed" into nyc-mr1-dev
|
cb585c99a9e0eb3f8386efb2f09483919f393291 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Clear transform for SolidColor layers am: c6c8954b42 am: bc028a8e49 Change-Id: Ia0677c2fc2bab208cff34841c740949d2a5aedda
|
10d3fb2360ae1a31d98a16c63952109825e09e55 |
28-Jul-2016 |
Dan Stoza <stoza@google.com> |
Build SF executable with USE_HWC2 when needed The SurfaceFlinger executable wasn't picking up the USE_HWC2 flag when enabled by the TARGET_USES_HWC2 BoardConfig, causing a mismatch in the size of the SurfaceFlinger object. This fixes that by also passing USE_HWC2 when building the executable. Bug: 30302693 Change-Id: I1e41e5f548d4b8329590a082d9b69155ba365be9
ndroid.mk
|
c6c8954b4258ed61790dcc95ff1d049be3e8422d |
27-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Clear transform for SolidColor layers Clears the transform for SolidColor layers, since it doesn't make sense to transform layers without a buffer. Bug: 30429522 Change-Id: Ib2f4889531556c7ab00e3b270319c321e9f32c84
ayer.cpp
|
f10620fb579d61b8ec503bdd02d3026cff42f9bc |
26-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Use SolidColor composition for DimLayer am: 0a21df7838 am: 257b657893 Change-Id: Ie353a1dc8a644f8e9e5003a8f1b8f6943cd41a9e
|
257b6578930fd93814bcb34cd7541796bf9ca5d0 |
26-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Use SolidColor composition for DimLayer am: 0a21df7838 Change-Id: Ia387db5ce9efa85f9a0d55d4795e3e66a4caa21c
|
0a21df783892acc5cff0c39c79b0aa602074af7e |
20-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Use SolidColor composition for DimLayer Switches SurfaceFlinger to try to use SolidColor HWC device composition for DimLayers instead of always falling back to client composition. Bug: 30216498 Change-Id: Ia8af95d214ba72b5657f32f7827a1e6278629f17
ayer.cpp
|
cf268f197c75832aa29fbfbdbadde34e4587ca2c |
22-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Make screenshot surface async am: 605d15afbb am: 6d4164bc9a Change-Id: I88547ffedb80ee500ff508e1e788852c8806f52d
|
08da1d85771ba237033e90b201a3350f3381188a |
22-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Check all displays for client composition am: bfbffeb4d1 am: 638708adee Change-Id: I0ededbfa206b58a5eeaae3de36bdb91745f899c7
|
665490affbfb14d9a15923d2757d133f0089b498 |
22-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Kill logspam for non-HWC virtual displays am: ec0f717dfd am: 38f86bcab0 Change-Id: I5234ed58634ef92ec7bb3d194222f6ccd0c98c97
|
6d4164bc9a78cf7766fb9cb87ef5ed6401609b52 |
22-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Make screenshot surface async am: 605d15afbb Change-Id: Id24c7ccb275dcad914bda83b825c71af90aac637
|
638708adeee347a3c7ed104cb59b01d449a9d297 |
22-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Check all displays for client composition am: bfbffeb4d1 Change-Id: I96d86695d1553cfd57dfca6e007d3137a4b73843
|
38f86bcab04ac9ced86ce2826097bde6ce147016 |
22-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Kill logspam for non-HWC virtual displays am: ec0f717dfd Change-Id: Ib2eab1e0dfd44063f7840bcd900c9dad783635f9
|
3dd1045c27a7c49ad9d2295566fb0ca13713c977 |
22-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Make screenshot surface async" into nyc-mr1-dev
|
c1dc91d957dac282e202f7203a4f97a7ff6d2f97 |
22-Jul-2016 |
Irvel Nduva Matias Vega <irvel@google.com> |
Merge "Add SurfaceInterceptor initial implementation"
|
468051e20be19130572231266db306396a56402b |
14-Jun-2016 |
Irvel <irvel@google.com> |
Integrate SurfaceInterceptor into SurfaceFlinger Change-Id: If18d967f2b69ed219f17a9afedb61884ad5f1dc8
ventThread.cpp
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
bfbffeb4d15b8a783e2f8aa21daee5fff755913f |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Check all displays for client composition SurfaceFlinger currently only checks whether the primary display performed client composition when considering whether to propagate backpressure back to apps. This change expands that check to all displays so that if an external or virtual display is using client composition it disables backpressure propagation as well. Bug: 30022738 Change-Id: I7f7d4e0a1ea7d27ef1f280e2b4ebd5e5bd3bd911
urfaceFlinger.cpp
|
605d15afbb801ddeee173a3f430006bd25c07d2e |
21-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Make screenshot surface async It will only ever have one frame pushed to it and this guarantees that the late-latching logic will always latch it immediately. Bug 30209608 Change-Id: I875cb5ea258ebb0afae5d1af4ad946475c2240bc
urfaceFlinger.cpp
|
ec0f717dfd3821cbc648198c6d3b98fcc3b53369 |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Kill logspam for non-HWC virtual displays Removes some logspam and fixes some non-errors which were reported as errors when running a virtual display that is not backed by hardware composer. Bug: 30022738 Change-Id: Ie966e37d95f53bcc050eef064d24bbe26748b7fd
isplayHardware/HWComposer.cpp
ayer.cpp
|
c353f015c3e52339811cb83c991daa59663971aa |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \\"HWC2: Add properties to revert latching changes\\" into nyc-mr1-dev am: d16f6ae2bd am: 3569f1fe4e Change-Id: I430c5609590d2c5f04bf6a07ff509430a2bcdf9f
|
3569f1fe4e7faf64720c6e023bfdf76347f5b2b6 |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \"HWC2: Add properties to revert latching changes\" into nyc-mr1-dev am: d16f6ae2bd Change-Id: I27f8bd2c5e3756ffa809dfeed4887ea849e4eb3c
|
d16f6ae2bd1083ee29717829a39e93908bba2bf5 |
21-Jul-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "HWC2: Add properties to revert latching changes" into nyc-mr1-dev
|
c5da271eec001da9e11a2786f2618a45257439c3 |
21-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add properties to revert latching changes Adds two properties: debug.sf.latch_unsignaled - This causes SurfaceFlinger to latch buffers even if their fences haven't signaled debug.sf.disable_backpressure - This causes SurfaceFlinger to skip propagating backpressure back to apps by not running when it detects that a prior composition missed hardware vsync Bug: 30216498 Change-Id: Idd70f472ec567a4bc03352f30f201f434cf5d660
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
c75ca51da3b41618c9633ca66f06b05daa98f276 |
20-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Initialize HWC2On1Adapter with android_mode_t Change-Id: I38726b5930927f9fe55e1433b74a6790f8813ec3
isplayHardware/HWC2On1Adapter.cpp
|
c4cba997508820c5ffbbcdca8d4769944a7caacf |
20-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Merge commit '19cd2f88b6914e2f4c43a9595532e81a697304fe' into fresh-again Change-Id: I6032eea1ad12960fc1c88582ae295f83c84bb37e
|
19cd2f88b6914e2f4c43a9595532e81a697304fe |
20-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Merge \"Color transforms are now color modes.\" into nyc-mr1-dev am: f42ca4da5b Change-Id: I2b5f704695dbbf84baf56b21369c3c80cc2142e1
|
c274c6313bee6044208a46137c40fb05f7f6e485 |
14-Jun-2016 |
Irvel <irvel@google.com> |
Add SurfaceInterceptor initial implementation SurfaceInterceptor allows capturing streams of surface updates that come into SurfaceFlinger. It captures the creation and deletion of surfaces, changes to a surface like size or position, buffer updates, and hw vsync updates (for a complete list of what is captured see /frameworks/native/cmds/surfacecapturereplay/proto/src/trace.proto) SurfaceInterceptor uses a protocol buffer object to store each trace. This allows for the produced trace to be either played back into SurfaceFlinger or manually inspected. To enable the interceptor: service call SurfaceFlinger 1020 i32 1 To disable the interceptor: service call SurfaceFlinger 1020 i32 0 Each trace file will be saved to /data/SurfaceTrace.dat For SurfaceInterceptor to work SELinux must be set to permissive. Change-Id: I5adff9dcd19456d86cfd5b1f51096dff9990e086
ndroid.mk
urfaceInterceptor.cpp
urfaceInterceptor.h
ests/Android.mk
ests/SurfaceInterceptor_test.cpp
|
441cf01dcf41862a64d794f845b53a398094cbee |
19-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Make sure constructors initialize all members"
|
1b747d607e2c27cc5e1ceed851ed4225326254b8 |
19-Jul-2016 |
Jesse Hall <jessehall@google.com> |
Merge "GpuService: Dump all instance info, not just devices"
|
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
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
615e573cae9eca90ffc7f6527393a97914107cdf |
15-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add support for color transforms am: 9f26a9c8be am: 840dae503c Change-Id: I64e2d133031c010aa12c5e8c764f4845357b6c42
|
840dae503c00ad207ab4f1396347817dbb68ed3c |
15-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Add support for color transforms am: 9f26a9c8be Change-Id: I0622633dd37d3695458deb94f8ca7c7c337a73e7
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ffects/Daltonizer.cpp
ffects/Daltonizer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
9a33f76219690a8991428361acf9751bb655be92 |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge \\\\"Workaround alloc-dealloc-mismatch error on ASan device boot.\\\\" am: 7d8f246415 am: 23d1d10872 am: 316c5165bc am: e96d025385 Change-Id: Id15ed9fe2e651647a6ab8990f82fc38f4ef05bf8
|
e96d025385e742f8d9a571f5713227b141d79eba |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge \\\"Workaround alloc-dealloc-mismatch error on ASan device boot.\\\" am: 7d8f246415 am: 23d1d10872 am: 316c5165bc Change-Id: I585c6737d3811110bd519b5cc375f0219fee7927
|
316c5165bc9a2a58789e386c99e470793d6c4299 |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge \\"Workaround alloc-dealloc-mismatch error on ASan device boot.\\" am: 7d8f246415 am: 23d1d10872 Change-Id: I5b8baa53812fa991cc7fa45c64e620045f2687ca
|
23d1d108720beff1f37e6e8aecaea9045f1968f7 |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge \"Workaround alloc-dealloc-mismatch error on ASan device boot.\" am: 7d8f246415 Change-Id: Ic34e6263619b98739f935e0aa05bf50aa7399829
|
b49bcbf4056fee7fdb54ffe21e05621cba200058 |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Merge "Workaround for b/30067360."
|
22819276b147e34a80e8ca696be5b3fda68764b9 |
14-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Workaround alloc-dealloc-mismatch error on ASan device boot. /proc/self/environ inaccessible in SurfaceFlinger => ASan fails to read ASAN_OPTIONS => alloc-dealloc-mismatch bug is not suppressed and prevents the device from booting. This is not perfect because, by enabling it in asan build only, the first several attempts to start surfaceflinger fail while the /data partition is being encrypted. On the other hand, this does not affect user builds, and device eventually gets up anyway. BUG=b/30067360 Change-Id: Ieaa37ff7768a11450ea33fee1f7d70a41b246c6a
urfaceFlinger.cpp
|
444230acb5c1207c658e84ddccd2c5672d8c8771 |
14-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \\"HWC2: Fix virtual displays\\" into nyc-mr1-dev am: d47c07fe33 am: 8abbfbcd69 Change-Id: I62e9ae529c6c9bacaf89ae6ee40e21656ca09933
|
8abbfbcd6941093d22eb9c3334008fbc2f8fc326 |
14-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \"HWC2: Fix virtual displays\" into nyc-mr1-dev am: d47c07fe33 Change-Id: I0df53741a24eb65d56060651c11f0417d608399e
|
d47c07fe3368a4c916475361120c638ead988ffd |
14-Jul-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "HWC2: Fix virtual displays" into nyc-mr1-dev
|
bd3577ef5bae7d65e54bddc04f90b619330edb89 |
21-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Make sure constructors initialize all members - Add default constructors to Parcelables that didn't have them and make sure all members are initialized by the constructors. - Add missing fields to BufferItem flatten/unflatten. Change-Id: I9aa83b326dc3aee757762e63be499dc96a74df91
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
6732a8f3e5ca73f51274643962805eee69f5322e |
13-Jul-2016 |
Evgenii Stepanov <eugenis@google.com> |
Workaround for b/30067360. /proc/self/environ inaccessible in SurfaceFlinger => ASan fails to read ASAN_OPTIONS => alloc-dealloc-mismatch bug is not suppressed and prevents the device from booting. This is not perfect because, by enabling it in asan build only, the first several attempts to start surfaceflinger fail while the /data partition is being encrypted. On the other hand, this does not affect user builds, and device eventually gets up anyway. Change-Id: I5803a1688c2218cd1c36e04473f588ca28f9689f
urfaceFlinger_hwc1.cpp
|
8305f25b66773e914a3fe1df19d8aa7783df03af |
13-Jul-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Merge changes Iea048eaa,I5c246571 into nyc-mr1-dev am: 72d1772eca am: 340680891a Change-Id: If71c96930270a5290e066c29477305686e3b1d2d
|
340680891a2508482e2a55951e31e96df6770ef6 |
13-Jul-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Merge changes Iea048eaa,I5c246571 into nyc-mr1-dev am: 72d1772eca Change-Id: Ia541dde020c6e2ad8674bb7759aa5975111616c8
|
72d1772eca21cd1d109a7fe6ee927cbda4df64bc |
13-Jul-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Merge changes Iea048eaa,I5c246571 into nyc-mr1-dev * changes: Add support for multiple color modes Remove unused DisplayInfo structure
|
787d72b601fbfa1f410dc8e1bc396cfdf236da95 |
12-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge \\"BQ: Remove getNextFrameNumber Binder call\\" into nyc-mr1-dev am: f9de6e0d7e am: 45bb23ad43 Change-Id: I3972481dff062762b914cf3a4d7f4250e4cafae1
|
45bb23ad433a00cd9fc907c1185a0b884118705e |
12-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge \"BQ: Remove getNextFrameNumber Binder call\" into nyc-mr1-dev am: f9de6e0d7e Change-Id: I8ac76ca4bc0ed97deca8823ed8d4a75f594f7add
|
f9de6e0d7e7a12f4d70bb4828863efb035fc133b |
12-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "BQ: Remove getNextFrameNumber Binder call" into nyc-mr1-dev
|
fad9d8cd070e94749d8eb5be8f92011c9567a44c |
23-Jun-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Add support for multiple color modes Bug: 29044347 Change-Id: Iea048eaa62f072a9bbefc4f3a6c29a9e593eab69
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
1d6c0e979e7e2a490d7403acd7e966da0e642973 |
22-Jun-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Remove unused DisplayInfo structure Bug: 29044347 Change-Id: I5c2465719050c8727b0b48ef515ee79a24e3d65d
isplayHardware/HWComposer.h
|
1485624fa9ed071368e8b89452a25971e68dd456 |
08-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \\"HWC2: Backpressure on transactions as well\\" into nyc-mr1-dev am: e365c9945e am: 895b177c4d Change-Id: Id4c5ec2af8cf5dffee50f91ce302e8a559e8c39c
|
895b177c4d07ead68ab87d4d8573aba321a9624e |
08-Jul-2016 |
Dan Stoza <stoza@google.com> |
Merge \"HWC2: Backpressure on transactions as well\" into nyc-mr1-dev am: e365c9945e Change-Id: Ib264c65f26fe1d81699a63c1ebb24989ee16392d
|
5018288a44ca53b64fce17b3bfb9656a79cc3465 |
08-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Backpressure on transactions as well Modifies the backpressure detection to skip transactions as well as buffer updates. Bug: 29413700 Change-Id: I97cda920e7fc1cd7151f0a4df1b00f96b84f4145
urfaceFlinger.cpp
|
f31493efd6e105238497647f2749ba60644e24f9 |
07-Jul-2016 |
Tim Murray <timmurray@google.com> |
surfaceflinger: make critical threads SCHED_FIFO am: 41a3853cea am: ce680f8b2c Change-Id: I9122dc6982467943af4801e52b191809b4192625
|
ce680f8b2c0f75c7d09e1edded572b510d6100f6 |
07-Jul-2016 |
Tim Murray <timmurray@google.com> |
surfaceflinger: make critical threads SCHED_FIFO am: 41a3853cea Change-Id: I06eaa71412abb10e6149fb0fed8ab1824f48e09f
|
41a3853cea0cffede422fc2692b9c8e1674fc5eb |
22-Jun-2016 |
Tim Murray <timmurray@google.com> |
surfaceflinger: make critical threads SCHED_FIFO Sets the main thread, EventThread, and SFEventThread to SCHED_FIFO to minimize jitter. bug 24503801 Change-Id: I3751c00c79482842f5c0bdaec92b6cbfe62328a0
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
ain_surfaceflinger.cpp
|
e11eead86164a3bfc96f6226fc23a1f5c1f92067 |
07-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Backpressure missed vsyncs into apps am: 05dacfb68a am: d5193eb9a4 Change-Id: I059c90695cdaef5cb57531d53215baf9856bce56
|
0fdb0158b8550419433d270d523f0270993c7061 |
07-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF: Only latch buffers after fence signals am: 1ce6581ac7 am: 2605348b41 Change-Id: If4e93e858f0d7c7d7db8fe2a6030e91cbcfe18fe
|
d5193eb9a483a1b64a2fb2dedab1ba66b28d472a |
07-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Backpressure missed vsyncs into apps am: 05dacfb68a Change-Id: Ida8034e40f75be3063f06e66f3c8b4b870c2d2cd
|
2605348b41d63fe34c941b6963158d559b30f792 |
07-Jul-2016 |
Dan Stoza <stoza@google.com> |
SF: Only latch buffers after fence signals am: 1ce6581ac7 Change-Id: Iee9f7e4199539775c6097c73bd6f25bc36a92753
|
05dacfb68af895fce3cc8ebb0b4aa06c6c336e26 |
01-Jul-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Backpressure missed vsyncs into apps Adds a mechanism to detect whether the prior frame SurfaceFlinger presented to hardware composer was actually picked up or not. We then use this mechanism to avoid pushing two frames in the same vsync. This backpressure is passed back to applications by not latching any buffers, which will manifest as dequeueBuffer stalling until SurfaceFlinger releases a buffer on the following vsync. Also makes the former INVALIDATE_ON_VSYNC behavior the only behavior so that this functionality works correctly. Bug: 29413700 Change-Id: Ibde358e45423ee6fea7b5e09ff65e49c4ad67baa
essageQueue.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
1ce6581ac788eaad58fd3329c2154af7dd74aa3d |
16-Jun-2016 |
Dan Stoza <stoza@google.com> |
SF: Only latch buffers after fence signals Changes SurfaceFlinger to only latch a buffer after its corresponding acquire fence has signaled. This will enable us to move SurfaceFlinger closer to vsync since there is no risk of fence waits blocking composition. Bug: 29413700 Change-Id: I26f4fd600c1611b8d736ec654d1f0f02cf69ae5f
ayer.cpp
ayer.h
|
bc8c1928e1dbdaf6a2820f6e426c96ed61284043 |
01-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
BQ: Remove getNextFrameNumber Binder call - Return the value in queueBuffer instead and cache it in Surface Change-Id: I10ab112afb03cf0231b047d4a4569cd641827043
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
56b8c6418703bc941c415deb668ff610217d82c8 |
01-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
resolve merge conflicts of 7467665 to nyc-mr1-dev-plus-aosp am: 6155b40830 Change-Id: If8e7c75a76e410e13424d1a9c173e9cfbedb17bd
|
0ade247d4b02b81f323480b4ba043927f6b36a73 |
01-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
resolve merge conflicts of 8e3e92b to nyc-mr1-dev Change-Id: Ic67f0894e68ea5276eb9187a13cd24f105d55d68
|
6155b40830e7945e9d4a76fe89af9a6322d4977f |
01-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
resolve merge conflicts of 7467665 to nyc-mr1-dev-plus-aosp Change-Id: I69094217d8f09b44d38fefd48d1717322cfca55d
|
746766539386226e86b4018c3bb878a07a4f4d11 |
01-Jul-2016 |
Pablo Ceballos <pceballos@google.com> |
BQ: Add and expose a unique id am: 8e3e92b906 Change-Id: I2602c1d2f5247cf0b3d2718f52dddba6c23c003d
|
8e3e92b906db431c4fa822f21242977d4ee99942 |
28-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
BQ: Add and expose a unique id Bug 29422927 Change-Id: I80eab94f073ebc378302f00fa86a740c3643657e
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
689fa1e78a3d1a2bfcef08defe34533eba0284c9 |
22-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge changes from topic \\'seamless-rotation\\' into nyc-mr1-dev am: 4bfbe1f7ef am: d99daf4fe6 Change-Id: Iaabf524a3b835b794b2b1269cd573b66676be9a1
|
d99daf4fe6e32f3d15482141abf79ef81327fdf4 |
22-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge changes from topic \'seamless-rotation\' into nyc-mr1-dev am: 4bfbe1f7ef Change-Id: I05be2795f7b09b92f79627f991c01d7e32840121
|
4bfbe1f7eff1782ad1f9874954fa2703207317df |
22-Jun-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes from topic 'seamless-rotation' into nyc-mr1-dev * changes: Reset mFreezePositionUpdates earlier. SurfaceControl: Add getTransformToDisplayInverse Change setPositionAppliesWithResize to apply to all geometry.
|
0ef587956000df0a974effb33bba350c6491c273 |
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Don\\'t set null handle for client layers am: e24da966b1 am: 7920c657c6 Change-Id: I2cf2057d23a7c9d58acf6b025513c69a472c3192
|
7920c657c62278dbceeb38838b4955101dd75b2c |
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Don\'t set null handle for client layers am: e24da966b1 Change-Id: Ib572bf53756351bce11a20c28dca2362c7433562
|
a392073ff99c39b52bee88578c37d6a12235faf5 |
21-Jun-2016 |
Robert Carr <racarr@google.com> |
Reset mFreezePositionUpdates earlier. We are resetting mFreezePositionUpdates too late, in the case that the state changes during latch buffer, we will return to recompute the visible regions before updating mActiveBuffer. Bug: 28823590 Change-Id: I17afc32d55d092ea0814b560846b922dd9e24c43
ayer.cpp
|
367c5684f4d417e5176bec12d67f4e2e42738fe0 |
20-Jun-2016 |
Robert Carr <racarr@google.com> |
SurfaceControl: Add getTransformToDisplayInverse For seamless rotation, the window manager needs access to this flag, as it will apply the inverse display transform itself to all other windows. Bug: 28823590 Change-Id: Ifeee1078a9cb4cd01c8052570c137c6228b2f13d
lient.cpp
lient.h
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
99e27f0bc236e38d88ff4f9912ede514a729b8eb |
17-Jun-2016 |
Robert Carr <racarr@google.com> |
Change setPositionAppliesWithResize to apply to all geometry. To support seamless rotation, change setPositionAppliesWithResize to also include the crop. As the transformation matrix is already frozen during resize, this enables the window manager to set the total geometry state before and after resize in a race free fashion. Bug: 28823590 Change-Id: I3f8f0e162b7ef4e9403c1220c7e4191b3ef30526
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
e24da966b14e5b952ee11a7d13bb1539be2a5c8e |
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Don't set null handle for client layers Removes the code that explicitly set a null buffer handle for client layers. Bug: 29463310 Change-Id: I570e6041ba72d64971bb6c364e8e7b6f84eeff08
ayer.cpp
|
f1f798a77c795cf8249a98b253e7dd1b638e2edb |
21-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up to BoardConfig variable am: f9d7e1a0aa am: 2c0d316056 Change-Id: I5981d25805a7c6d32a24a57f0d9c3916a6ceeedf
|
2c0d316056093086b103a9d24d0aa1de6d74e86b |
21-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up to BoardConfig variable am: f9d7e1a0aa Change-Id: If27dd2b17bdd5ab596ef4eba413993987edfc913
|
f9d7e1a0aa05bb47527f054b85a36f16e7955088 |
21-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up to BoardConfig variable Uses TARGET_USES_HWC2 to enable the HWC2 code path in SurfaceFlinger Bug: 27211042 Change-Id: I7b7e3e3f7a918e74df0be27418196c81b4332564
ndroid.mk
|
25207934b4936b796db8604df42d90bbb4cfd00b |
20-Jun-2016 |
Dan Stoza <stoza@google.com> |
Merge \\"HWC2: Skip validate/present if display is off\\" into nyc-mr1-dev am: 9409a53b45 am: 495a15491f Change-Id: If771408108db1ded2b2fae404e98c439aa4ce911
|
495a15491f851862c187ab9bfb6a6655e9344f4e |
20-Jun-2016 |
Dan Stoza <stoza@google.com> |
Merge \"HWC2: Skip validate/present if display is off\" into nyc-mr1-dev am: 9409a53b45 Change-Id: I6f5226370c58c5f1304ab1b46f1c7753bcc11fda
|
7bdf55aacf84715fae7dcd495756d9606e900a86 |
17-Jun-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Skip validate/present if display is off Adds checks to ensure that the display is still on before attempting to call into prepareFrame/commit (which in turn call into validate/present). Bug: 28596387 Change-Id: Iad87f02c3e44e86db43a15c258ee66b0cde14faa
urfaceFlinger.cpp
|
d2b093aa60168b98e337262fd27f7f20962b9926 |
16-Jun-2016 |
Dan Stoza <stoza@google.com> |
Merge \\"HWC2On1Adapter: populateCapabilities: fix virtual display query\\" into nyc-mr1-dev am: 91476a0c20 am: abb745c556 Change-Id: I0f22a1e84655b79319d9e480b3dc1a951ab43e1d
|
abb745c55669e483800fe64f9d8ccca2a7e4ca31 |
16-Jun-2016 |
Fred Fettinger <fettinge@motorola.com> |
Merge \"HWC2On1Adapter: populateCapabilities: fix virtual display query\" into nyc-mr1-dev am: 91476a0c20 Change-Id: Ic1806500ba732a756ea1f95b0fc023b544c39ecc
|
3841bf4482d33285f343162639df316237a38b1d |
13-Jun-2016 |
Jesse Hall <jessehall@google.com> |
GpuService: Dump all instance info, not just devices Change-Id: Iebb5126f0258c3aaa6c15d342c3554b7d632fa41
puService.cpp
|
c50c01e0b8a1ef3bac59477cb9ecf946a363c9f8 |
15-Jun-2016 |
Fred Fettinger <fettinge@motorola.com> |
HWC2On1Adapter: populateCapabilities: fix virtual display query To determine whether a HWComposer implementation supports virtual displays, HWC2On1Adapter::populateCapabilities() calls query(HWC_DISPLAY_TYPES_SUPPORTED). However, it incorrectly uses HWC_DISPLAY_VIRTUAL instead of HWC_DISPLAY_VIRTUAL_BIT. Update the check to use the correct bitmask. Change-Id: I1ad95d5222a0353816ee65936cf033e5244c80cc
isplayHardware/HWC2On1Adapter.cpp
|
5627661eae3a0a43122a416ef9f8e243b0edd1fb |
14-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Fix HWC2 build break am: 8fc10c310e am: 30f7787017 Change-Id: If6b486b27f4963142d05f70a7d1c2de3be6281f2
|
30f77870174d305fef2bff378cca1a1536c75268 |
14-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Fix HWC2 build break am: 8fc10c310e Change-Id: Iadbd3566cc92c4a46af51ce04b6b4657ba7c1dba
|
8fc10c310ec3fe66d68ea2a90702ee31b329750a |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Fix HWC2 build break Bug 29330291 Change-Id: Ifd9993ac0321c7436a17c3e64925d415ec993003
enceTracker.cpp
|
2eca129e15a3ad95e9df2f7032ecc9c46a4c0e10 |
09-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge \\"Plumbing for getting FenceTracker timestamps\\" into nyc-mr1-dev am: 9e8143ec78 am: a26e661886 Change-Id: I91220ec2367d97104e0e2f37852fe7679912180a
|
a26e6618867f0a587942fa737b14dc67c2f0c9a9 |
09-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge \"Plumbing for getting FenceTracker timestamps\" into nyc-mr1-dev am: 9e8143ec78 Change-Id: Ife1f3e19cc0bde26960c5a480d4fe81188c4c8f3
|
9e8143ec78a0bf3779f12000b67f21b8fba6e2a7 |
09-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Plumbing for getting FenceTracker timestamps" into nyc-mr1-dev
|
ce796e78a57018f186b062199c75d94545318aca |
05-Feb-2016 |
Pablo Ceballos <pceballos@google.com> |
Plumbing for getting FenceTracker timestamps Change-Id: I1ebee9e42e28658bd3a2b161fdaabb7da756d8f3
enceTracker.cpp
enceTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
8a95daddd965fff9d7bb7c86e227f97c6adc5efc |
07-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge "SurfaceFlinger: Add mode to apply position with resize." into nyc-dev am: c3da482bb8 am: 3fee6ca1d9 am: f7b6b5d956 * commit 'f7b6b5d956f96458567eae519a926a6f51b077c0': SurfaceFlinger: Add mode to apply position with resize. Change-Id: Ib4476cc6aff4b4f39093a5047182f3f30ac57a77
|
f7b6b5d956f96458567eae519a926a6f51b077c0 |
07-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge "SurfaceFlinger: Add mode to apply position with resize." into nyc-dev am: c3da482bb8 am: 3fee6ca1d9 * commit '3fee6ca1d93c1d4b822d2dcd36c61f9722dd88b9': SurfaceFlinger: Add mode to apply position with resize. Change-Id: I91f64e194199f1277a9b4e76c68faddcc7ef6660
|
3fee6ca1d93c1d4b822d2dcd36c61f9722dd88b9 |
07-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge "SurfaceFlinger: Add mode to apply position with resize." into nyc-dev am: c3da482bb8 * commit 'c3da482bb8081ee2c19b5965585267b8e21cfc7e': SurfaceFlinger: Add mode to apply position with resize. Change-Id: Icedb7a6e37da9338b1194edaa32a67257640969f
|
34703b94e1a9f97f5b225c1b35433a90f8686e38 |
07-Jun-2016 |
Robert Carr <racarr@google.com> |
Merge "SurfaceFlinger: Add mode to apply position with resize." into nyc-dev am: c3da482bb8 * commit 'c3da482bb8081ee2c19b5965585267b8e21cfc7e': SurfaceFlinger: Add mode to apply position with resize. Change-Id: Ic185f162bdb765dfdd19ce35f3dd94e29bb8dea3
|
82364e3cea0bf88fa8147766433329b3dd5148b8 |
15-May-2016 |
Robert Carr <racarr@google.com> |
SurfaceFlinger: Add mode to apply position with resize. For some cases, like scaled windows with shadows, we need to be able to apply the position concurrent with window resize. This is because the scaling of the shadows causes the top left coordinate of the non shadow surface content to change before and after the resize. Bug: 28899837 Change-Id: I522eacfbbcd79707dc1e5ab71901a263b3004ba9
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
285c0fb692f8a33a5cd4b8ae95534425305efe4b |
06-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Also edit currentState in doTransaction" into nyc-dev am: d224e6111b am: 12863b2a1d am: a9f4721620 * commit 'a9f472162084aa7e78e684d86914a21e1a234317': SF: Also edit currentState in doTransaction Change-Id: Ifefc3a57f9df3bc26c4fd8476041d17f619cf9a0
|
a9f472162084aa7e78e684d86914a21e1a234317 |
06-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Also edit currentState in doTransaction" into nyc-dev am: d224e6111b am: 12863b2a1d * commit '12863b2a1d7c97e99b7201ae6209f5c861fd46a7': SF: Also edit currentState in doTransaction Change-Id: Ia1367baa3da6415e46caccc1ec75c8ac9026d131
|
d21cb6d2d9a5819c3427df1be4470bcc8baf3c6a |
06-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Also edit currentState in doTransaction" into nyc-dev am: d224e6111b * commit 'd224e6111bf4532fb1c1fc021c20285b38bc80ec': SF: Also edit currentState in doTransaction Change-Id: I6bcd675d033cc1ef46d3498174b2bc52a0072f99
|
12863b2a1d7c97e99b7201ae6209f5c861fd46a7 |
06-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Also edit currentState in doTransaction" into nyc-dev am: d224e6111b * commit 'd224e6111bf4532fb1c1fc021c20285b38bc80ec': SF: Also edit currentState in doTransaction Change-Id: I30b6170c8f41a7e330511ad70abd2257a34bdee2
|
d224e6111bf4532fb1c1fc021c20285b38bc80ec |
06-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Also edit currentState in doTransaction" into nyc-dev
|
7d05257585918bd578bc0bc18f32571a48a7304a |
03-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Also edit currentState in doTransaction Bug 28899837 Change-Id: I46c8301549c627c5d1c7efa661055aba787a33d6
ayer.cpp
|
be515e1f4c232fec9a555076fac43b97400d71e1 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Re-enable fence tracker by default" into nyc-mr1-dev am: 30689c9e4c am: 22fa825ebb * commit '22fa825ebbf318dc7942c18a057791a54c7b9bff': SF: Re-enable fence tracker by default Change-Id: If988c4a07b5fd20c2fae16e29a9a5cb699329716
|
22fa825ebbf318dc7942c18a057791a54c7b9bff |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Re-enable fence tracker by default" into nyc-mr1-dev am: 30689c9e4c * commit '30689c9e4c7cbcfb1f537f224ab1b50f5fe0efa6': SF: Re-enable fence tracker by default Change-Id: I503b5724f8362df99305f9ca9f622a61b329826d
|
2f65a53871e5c9ad12dca4d7ff832b5960319624 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Push empty sync transaction before taking screenshot in tests" into nyc-dev am: 08588dd760 am: 161a5bac18 am: 04f1ece83e * commit '04f1ece83e0ec477172ac8aaf449d6b9d15fd379': Push empty sync transaction before taking screenshot in tests Change-Id: I447698d52b25b93fcd93f0f3e8a5abdb0d22bc2a
|
04f1ece83e0ec477172ac8aaf449d6b9d15fd379 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Push empty sync transaction before taking screenshot in tests" into nyc-dev am: 08588dd760 am: 161a5bac18 * commit '161a5bac18d7eca64b639f51cd9c78c51c2bf1a4': Push empty sync transaction before taking screenshot in tests Change-Id: Id8707fae4898b0108cf370949899aee4bf42fa97
|
30689c9e4c7cbcfb1f537f224ab1b50f5fe0efa6 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Re-enable fence tracker by default" into nyc-mr1-dev
|
161a5bac18d7eca64b639f51cd9c78c51c2bf1a4 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Push empty sync transaction before taking screenshot in tests" into nyc-dev am: 08588dd760 * commit '08588dd76073a8635aa4175d5b98fc5db86afec4': Push empty sync transaction before taking screenshot in tests Change-Id: Id7648a55288f3f8962e6e314584c9690c3f27854
|
46e5b6507587ef5223d3a108275a69a533abed64 |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Push empty sync transaction before taking screenshot in tests" into nyc-dev am: 08588dd760 * commit '08588dd76073a8635aa4175d5b98fc5db86afec4': Push empty sync transaction before taking screenshot in tests Change-Id: Iad404364ca17d6a23ceca928d342d3931b2418f2
|
15311bd8a5e8a8b74e7abe6314c764e02491a12d |
02-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Push empty sync transaction before taking screenshot in tests Because of ag/1043009 it's now necessary to push an empty sync transaction before taking a screenshot to ensure that all transactions have been applied. Bug 29074285 Change-Id: I9f1b4a5b6b1f39e1ff26d536817aef6f40865177
ests/Transaction_test.cpp
|
5045ab2bb14110f577e3cfff8acfae906dc29935 |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Re-enable fence tracker by default - Don't check whether the fences have completed or not unless the data has been requested. Bug 22431447 Change-Id: Id4cb8bfba38547884849ef23c9b6f42f0d4d0750
ndroid.mk
enceTracker.cpp
enceTracker.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
b871b7afa1202d6622432e6164903d5156e6257b |
25-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue/SF: Add OccupancyTracker" into nyc-mr1-dev am: faa71321b0 am: 3bfd2e196d * commit '3bfd2e196d248536207bf1e0acfe86bd4d786d1d': BufferQueue/SF: Add OccupancyTracker Change-Id: I0afeef4817c982bff0c0034b162aff91d5cd5bb1
|
3bfd2e196d248536207bf1e0acfe86bd4d786d1d |
25-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue/SF: Add OccupancyTracker" into nyc-mr1-dev am: faa71321b0 * commit 'faa71321b0862fac97ad1f7825860fb740cc8507': BufferQueue/SF: Add OccupancyTracker Change-Id: I868b56c8502033877b08146c1cffeaaa263acc64
|
faa71321b0862fac97ad1f7825860fb740cc8507 |
25-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue/SF: Add OccupancyTracker" into nyc-mr1-dev
|
83630f285013d0dc69b616264ccd79cdabf2f11b |
25-May-2016 |
Robert Carr <racarr@google.com> |
Merge "SF: Force empty sync transactions to apply anyway" into nyc-dev am: 7443c1f253 am: 2d10b6df79 am: 864652f92f * commit '864652f92f498b867b593acce5c7a79a55075f40': SF: Force empty sync transactions to apply anyway Change-Id: Ib26d08538b9d9fbe953a601208c90ece61126e12
|
864652f92f498b867b593acce5c7a79a55075f40 |
25-May-2016 |
Robert Carr <racarr@google.com> |
Merge "SF: Force empty sync transactions to apply anyway" into nyc-dev am: 7443c1f253 am: 2d10b6df79 * commit '2d10b6df7935022c3d1483e284adb6bcb03d0d2b': SF: Force empty sync transactions to apply anyway Change-Id: I3cb8c29467fd5d882a2bb1ff664cbb340cfb98be
|
424d8325fe0b26665631782e2f47321d0ced8595 |
25-May-2016 |
Robert Carr <racarr@google.com> |
Merge "SF: Force empty sync transactions to apply anyway" into nyc-dev am: 7443c1f253 * commit '7443c1f253008acd868af1e35449dd5eb3139c8d': SF: Force empty sync transactions to apply anyway Change-Id: Iaa91350ba6e499d145e7adfcc1874601fff33775
|
2d10b6df7935022c3d1483e284adb6bcb03d0d2b |
25-May-2016 |
Robert Carr <racarr@google.com> |
Merge "SF: Force empty sync transactions to apply anyway" into nyc-dev am: 7443c1f253 * commit '7443c1f253008acd868af1e35449dd5eb3139c8d': SF: Force empty sync transactions to apply anyway Change-Id: Ic5b1f24f75027800429641eb3c2879a5742e130d
|
7443c1f253008acd868af1e35449dd5eb3139c8d |
25-May-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SF: Force empty sync transactions to apply anyway" into nyc-dev
|
2a7dbb4135976b01015d237ac95d5eeb3ed7a85c |
24-May-2016 |
Robert Carr <racarr@google.com> |
SF: Force empty sync transactions to apply anyway Following the change to not flush transactions in the screen shot path, this enables the use of empty synchronous transactions as a flush mechanism for previous asynchronous transactions. Bug: 27098060 Change-Id: I282fdfffb72db148edcbf1ded65b15816fc714a2
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
f0e0f93d3d634d0fc02b51d72071b63c8cd2989a |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Remove forced transaction on screenshot" into nyc-dev am: 854071a38f am: 7c1e3865a9 am: 4a8ac7cb46 * commit '4a8ac7cb46500538b964bc8247ff3159fb65d9f5': SF: Remove forced transaction on screenshot Change-Id: Id3378fca35a988b475ec06e4888c5883cbeacac4
|
4a8ac7cb46500538b964bc8247ff3159fb65d9f5 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Remove forced transaction on screenshot" into nyc-dev am: 854071a38f am: 7c1e3865a9 * commit '7c1e3865a90084ae2a3efc089e4499e73d3858e7': SF: Remove forced transaction on screenshot Change-Id: I5d38586de3bf2d0bb7236383cd27f04fdbf75ae1
|
7c1e3865a90084ae2a3efc089e4499e73d3858e7 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Remove forced transaction on screenshot" into nyc-dev am: 854071a38f * commit '854071a38f250bd0638f1dfdb99b9ccc0010e7d0': SF: Remove forced transaction on screenshot Change-Id: I79297918957661befdec24345bdfff2720433188
|
c51e7ff96d97cdcdd420f54df2c3171c1016b14b |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Remove forced transaction on screenshot" into nyc-dev am: 854071a38f * commit '854071a38f250bd0638f1dfdb99b9ccc0010e7d0': SF: Remove forced transaction on screenshot Change-Id: I2a321e5ddef0fd8b4dd5b3cb3a1e409c6998cd5e
|
854071a38f250bd0638f1dfdb99b9ccc0010e7d0 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Remove forced transaction on screenshot" into nyc-dev
|
6b5d740d54fd3cf9f0f57098e981141ca0c02d9f |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Fix breakage from header change" into nyc-dev am: 80bc52aefa am: fce9f9cfce am: 8827b8a75e * commit '8827b8a75eb858ae3778fb491b136a4a029107a4': HWC2: Fix breakage from header change Change-Id: I282f18bdaccc9c792ec967775bf4779f6d91ed2c
|
8827b8a75eb858ae3778fb491b136a4a029107a4 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Fix breakage from header change" into nyc-dev am: 80bc52aefa am: fce9f9cfce * commit 'fce9f9cfce0549703e3ee79bc143ce6736b520a3': HWC2: Fix breakage from header change Change-Id: Ia891a07108bbefc8bd2782e74a86e41cf164124d
|
b66ee0e7d1553fc1e99abe72407914c18590490c |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Fix breakage from header change" into nyc-dev am: 80bc52aefa * commit '80bc52aefa56e590f05bc30ff0182d860f00b128': HWC2: Fix breakage from header change Change-Id: I02f8b45ded3d00dc2d34689f5b902d77ee74ca1e
|
fce9f9cfce0549703e3ee79bc143ce6736b520a3 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Fix breakage from header change" into nyc-dev am: 80bc52aefa * commit '80bc52aefa56e590f05bc30ff0182d860f00b128': HWC2: Fix breakage from header change Change-Id: I05e5ac7285d232074ac336611cbc14643aac9f6e
|
80bc52aefa56e590f05bc30ff0182d860f00b128 |
24-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Fix breakage from header change" into nyc-dev
|
921e9c9e5014ad09b0923a93c5c88884027fc496 |
21-May-2016 |
Jesse Hall <jessehall@google.com> |
vulkan: Update vulkan.h to 1.0.13 am: 2676338dd6 am: ba01df4adf am: 5270f67f34 * commit '5270f67f343bf34f113e013eee49bff2e9f5be4e': vulkan: Update vulkan.h to 1.0.13 Change-Id: I0d7db17319ecfaac58a6bc2ed6f507c0353a1399
|
5270f67f343bf34f113e013eee49bff2e9f5be4e |
20-May-2016 |
Jesse Hall <jessehall@google.com> |
vulkan: Update vulkan.h to 1.0.13 am: 2676338dd6 am: ba01df4adf * commit 'ba01df4adf84d0c7f382034d165c35c80dd24934': vulkan: Update vulkan.h to 1.0.13 Change-Id: I2c0bef1717ee1b0b9e12d04ae58ece0dbecfabad
|
ba01df4adf84d0c7f382034d165c35c80dd24934 |
20-May-2016 |
Jesse Hall <jessehall@google.com> |
vulkan: Update vulkan.h to 1.0.13 am: 2676338dd6 * commit '2676338dd692b7d1e1c276d82e6b0492db53ab2e': vulkan: Update vulkan.h to 1.0.13 Change-Id: I7dce6307edb8d04a5706da465b5de8457d7d236a
|
17347b2749a32bcb4348c0c518d075a2cd3248a7 |
20-May-2016 |
Jesse Hall <jessehall@google.com> |
vulkan: Update vulkan.h to 1.0.13 am: 2676338dd6 * commit '2676338dd692b7d1e1c276d82e6b0492db53ab2e': vulkan: Update vulkan.h to 1.0.13 Change-Id: I25fd0770f0ff6d45851ea924bf86adbd0d1ecb50
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
2676338dd692b7d1e1c276d82e6b0492db53ab2e |
20-May-2016 |
Jesse Hall <jessehall@google.com> |
vulkan: Update vulkan.h to 1.0.13 vulkan.h and vk_platform.h imported from github.com:KhronosGroup/Vulkan-Docs @ 2656f459333b3a1dc63619a9ebd83490eea22e93 Updated vulkan.api to reflect the changes in vulkan.h. There were no changes to any of the code we generate. I didn't update the vulkan_h.tmpl, since we're not currently using it and it was already out of date. Bug: 28878216 Change-Id: I71676683148fae7ad8799bd39386a931319aa395
puService.cpp
|
32734bb21918dcca3a6654709790edbf420de53a |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix arbitrary rotation with inverse display transform" into nyc-dev am: 885ac76b90 am: d3e7cc010b am: e88a886de3 * commit 'e88a886de313ff115575b2213b98c8adc5f2aab9': SF: Fix arbitrary rotation with inverse display transform Change-Id: I89b0819b0970daa20352928677064d0c5d8e2cc1
|
5f90cfe4f223d1347eeff5e899dfe52fc3a8839a |
18-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Set composition type before setting buffer am: 0f67b3f01f am: 20829ec6f4 am: d8c2909d0b * commit 'd8c2909d0b2c4631a6ae86136e74807fdda70db3': HWC2: Set composition type before setting buffer Change-Id: I8338c8a5be92fde418be0ccb21b1acaf484acabd
|
e88a886de313ff115575b2213b98c8adc5f2aab9 |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix arbitrary rotation with inverse display transform" into nyc-dev am: 885ac76b90 am: d3e7cc010b * commit 'd3e7cc010b361958a14f007d7ea23a892fd05df2': SF: Fix arbitrary rotation with inverse display transform Change-Id: I56924e0304e6086886f8ae45a4ab40c423e6a2ed
|
d8c2909d0b2c4631a6ae86136e74807fdda70db3 |
18-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Set composition type before setting buffer am: 0f67b3f01f am: 20829ec6f4 * commit '20829ec6f4defb154ce0c92eb356b75b1bfa26e9': HWC2: Set composition type before setting buffer Change-Id: I0f28878147fc702310582b4a4f26406efe741d80
|
d3e7cc010b361958a14f007d7ea23a892fd05df2 |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix arbitrary rotation with inverse display transform" into nyc-dev am: 885ac76b90 * commit '885ac76b90e2f3e5cfaec7bbc8ff2e1de8d62435': SF: Fix arbitrary rotation with inverse display transform Change-Id: I1d67ba1dd7589d35d8a23bda701896b802c38a79
|
20829ec6f4defb154ce0c92eb356b75b1bfa26e9 |
18-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Set composition type before setting buffer am: 0f67b3f01f * commit '0f67b3f01fc74bbd8cf4be24fce4a1e42f102282': HWC2: Set composition type before setting buffer Change-Id: Id90777e83c0455cd95c28acb94d1ed791222851c
|
19e51855bd884981b01f5d6d0958d7e391c5d352 |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix arbitrary rotation with inverse display transform" into nyc-dev am: 885ac76b90 * commit '885ac76b90e2f3e5cfaec7bbc8ff2e1de8d62435': SF: Fix arbitrary rotation with inverse display transform Change-Id: Idceb5782ac8e71e7f4e4833946a32b85df59fc69
|
7af047d29cf823a83142b91113de0933f15eeaec |
18-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Set composition type before setting buffer am: 0f67b3f01f * commit '0f67b3f01fc74bbd8cf4be24fce4a1e42f102282': HWC2: Set composition type before setting buffer Change-Id: I41f3215b2950b55d3a86b3cb01c12056371b3802
|
885ac76b90e2f3e5cfaec7bbc8ff2e1de8d62435 |
18-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix arbitrary rotation with inverse display transform" into nyc-dev
|
0f5131fe72f3e7ca599946536d1f6028bb93398d |
17-May-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Fix arbitrary rotation with inverse display transform Bug 28043535 Change-Id: I8b939e17f91cf7e5b617bbcceb9df4efcc9d0161
ayer.cpp
|
0f67b3f01fc74bbd8cf4be24fce4a1e42f102282 |
17-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Set composition type before setting buffer SurfaceFlinger was incorrectly setting the buffer handle before setting the composition type. This led to cases where the layer was initially marked as Invalid or Client, allowing HWC2 to ignore the buffer handle, even though the layer was later changed to Device before presentation. Bug: 28814745 Change-Id: I41189495dcb254f04e6b2b329c044301c5cff97c
ayer.cpp
|
14e54ba747942312f5cd143a27e603eacd7573f7 |
16-May-2016 |
Dan Stoza <stoza@google.com> |
SF: Remove forced transaction on screenshot Removes the forced transaction that screenshots used to perform before capturing the screen. This was initially added to prevent screenshot capture from sneaking in between when a transaction is closed and when it is actually applied (at the next vsync), but in the presence of deferred transactions today, forcing a transaction to occur doesn't guarantee that the last transaction that WindowManager pushed has actually been committed yet, since it may be waiting for a buffer with which to synchronize. If WindowManager wants to guarantee some arrangement of windows is present for a screenshot, it needs to set the synchronous flag to true when calling closeGlobalTransaction and wait for the call to return. Bug: 27098060 Change-Id: Iaa36d76df521076cc8ed16576f651543bae419a8
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
e77c7669bee30b7c0099172cf0c38cef92412040 |
13-May-2016 |
Dan Stoza <stoza@google.com> |
BufferQueue/SF: Add OccupancyTracker Adds an OccupancyTracker to BufferQueue. This module keeps track of how many buffers are in the queue over time, which, in combination with various aggregation of these statistics, allows SurfaceFlinger to report what fraction of the time a given layer was double- or triple-buffered. Change-Id: Ida6e967dc5483c00a633e9fe03998e420dd88502
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
fb9d4c34d09c4c1f128abe045dcc6cbbb1ae0188 |
11-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "Merge "SF: Apply translations to transparent region" into nyc-dev am: df98fb952f am: 624eb0c228" into nyc-mr1-dev-plus-aosp am: 1ba29bdefd * commit '1ba29bdefdb61d76573fb547e3cd7b398dfa7f79': SF: Apply translations to transparent region Change-Id: I46515daa4f98e0e2f9d46ea07e9f16b90fb05fad
|
014f15883520112f9ad832de277b056ba790d214 |
11-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Set state modified flag when changing sizes" into nyc-dev am: 0abac03fc9 am: fbdc2339be am: 2720e7d962 * commit '2720e7d962a307b239fa19fa3257027ea10a9167': SF: Set state modified flag when changing sizes Change-Id: Ib370a90726f56d58ef945107d1942bc5552dad8e
|
48265a0d542d8bcd82f865f3ef7e6e42598b30b3 |
11-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Apply translations to transparent region" into nyc-dev am: df98fb952f am: 624eb0c228 * commit '624eb0c2288dbc019232414971a3ab1ba4797b20': SF: Apply translations to transparent region Change-Id: Ia9227530930201dbb169510e68e7279b588269c9
|
2720e7d962a307b239fa19fa3257027ea10a9167 |
11-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Set state modified flag when changing sizes" into nyc-dev am: 0abac03fc9 am: fbdc2339be * commit 'fbdc2339be2dc54e815830165cbdd04c7dca602b': SF: Set state modified flag when changing sizes Change-Id: I431d35ca4e9b2f09bc34ac14762d40591dd3d562
|
6f736efcf27b23765de1766c74a0a565f61105de |
11-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Apply translations to transparent region" into nyc-dev am: df98fb952f * commit 'df98fb952f5328c3df3d098df39297c44bdaa022': SF: Apply translations to transparent region Change-Id: I819ad0a1728e8bfa1f3d06ecddac3dac8ddbe2b6
|
3666cc2bae3f73e90c9eb6d8a6d4ce623ee9f745 |
11-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Set state modified flag when changing sizes" into nyc-dev am: 0abac03fc9 * commit '0abac03fc9d415b27e3f93d76859aae5f7c3050f': SF: Set state modified flag when changing sizes Change-Id: Ifd3ee6abdc12d141a7de0f2a2f3800017da6a69e
|
624eb0c2288dbc019232414971a3ab1ba4797b20 |
11-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Apply translations to transparent region" into nyc-dev am: df98fb952f * commit 'df98fb952f5328c3df3d098df39297c44bdaa022': SF: Apply translations to transparent region Change-Id: I868053f63f1a170e9f91ab6410ec5c2ff5ad22d9
|
fbdc2339be2dc54e815830165cbdd04c7dca602b |
11-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Set state modified flag when changing sizes" into nyc-dev am: 0abac03fc9 * commit '0abac03fc9d415b27e3f93d76859aae5f7c3050f': SF: Set state modified flag when changing sizes Change-Id: I2268d868a7885a1c4b8a1e28af7c837d0ba6e568
|
df98fb952f5328c3df3d098df39297c44bdaa022 |
11-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Apply translations to transparent region" into nyc-dev
|
39c88e8c7d870486f703408dafd0a62e7420df05 |
11-May-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Set state modified flag when changing sizes The BufferRejecter updates the Layer state when it gets the first buffer of the new size after a size change has occurred. When this happens make sure to set the state modified flag. Bug 27780983 Change-Id: Id8c628c40164110e75f8defd68ca895d72ed2e83
ayer.cpp
|
22f7fc45af6ce8c1a2b9543315347bd44d1c9e08 |
11-May-2016 |
Dan Stoza <stoza@google.com> |
SF: Apply translations to transparent region Correctly applies translation-only transforms to the transparent region so that it aligns with the layer bounds in screen space. Bug: 28220791 Change-Id: If9137b873f4b89890127671d8c45745e079f1cbc
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
ransform.cpp
ransform.h
|
95b3a64a5f25bea6e0a11d7a1cf581d6aaf24304 |
05-May-2016 |
Chih-hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings."
|
8753c43c27bbf59860bff3e3157462d3806be494 |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add support for color modes am: 076ac67026 am: 4b966273d6 * commit '4b966273d61c6a07f17c46b17569c806527bdec9': HWC2: Add support for color modes Change-Id: I0053da59945787510ec85b66905f9a3190c17bb2
|
64343561d03af1e000287ac82a975b9c7bfa2ab8 |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up setColorTransform/setLayerDataspace am: 5df2a86063 am: 0e7daf339a * commit '0e7daf339abfa8c718cc154dd80b3f1c20c698f5': HWC2: Hook up setColorTransform/setLayerDataspace Change-Id: I1b9e5d7127a76793aedad85f3e68f6ac61610c91
|
4b966273d61c6a07f17c46b17569c806527bdec9 |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add support for color modes am: 076ac67026 * commit '076ac670262e448c531e6db7727cfade325866ca': HWC2: Add support for color modes Change-Id: I79945fd9ad8c6f4c69d2296a7b6ed5829513d039
|
0e7daf339abfa8c718cc154dd80b3f1c20c698f5 |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up setColorTransform/setLayerDataspace am: 5df2a86063 * commit '5df2a86063c6a83813fc1aa3d8938a82f7ff8f14': HWC2: Hook up setColorTransform/setLayerDataspace Change-Id: I995088f94950796152597d56d8e53a534443f8c7
|
91ea3c08bc5da21addf84603f95ad1af8cde6b01 |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add support for color modes am: 076ac67026 * commit '076ac670262e448c531e6db7727cfade325866ca': HWC2: Add support for color modes Change-Id: I349c7bf51e6840fc69320f029a995b714a2d502f
|
23df91ddf3d7e4d061359a7b729bf12932a941bd |
05-May-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Hook up setColorTransform/setLayerDataspace am: 5df2a86063 * commit '5df2a86063c6a83813fc1aa3d8938a82f7ff8f14': HWC2: Hook up setColorTransform/setLayerDataspace Change-Id: I4c58f99890f8ee26fcff0101cbcfe7c8a67a745a
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
c406791ead6d864ec693ad01a80c5f471bdc2a7a |
03-May-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix google-explicit-constructor warnings. Bug: 28341362 Change-Id: I7e061f68acdde368a3b63c029b928133646ebff2
ispSync.cpp
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWComposer_hwc1.cpp
puService.cpp
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
0b3b7b421b34cf86892640926f5e1fcd326470f4 |
02-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Clear local sync points on hide and destroy" into nyc-dev am: 54ebc56413 am: 4c3bbb1d90 * commit '4c3bbb1d90c5f5caf2e1c19a2aa3978d5a04abfb': SF: Clear local sync points on hide and destroy Change-Id: Ie15afeffa22354d95e3c2d7f8041033ef023527e
|
4c3bbb1d90c5f5caf2e1c19a2aa3978d5a04abfb |
02-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Clear local sync points on hide and destroy" into nyc-dev am: 54ebc56413 * commit '54ebc564132c4c734d5917baa5c91a36c6f915ef': SF: Clear local sync points on hide and destroy Change-Id: Ife257492cfa0c34e67fae6568a3b9aee2570c8f8
|
f9d194e07bb8af26983ac96681887874a8782099 |
02-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Clear local sync points on hide and destroy" into nyc-dev am: 54ebc56413 * commit '54ebc564132c4c734d5917baa5c91a36c6f915ef': SF: Clear local sync points on hide and destroy Change-Id: If6d5cb161e5ed9633a2719f07943f9419d2f4a09
|
54ebc564132c4c734d5917baa5c91a36c6f915ef |
02-May-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Clear local sync points on hide and destroy" into nyc-dev
|
c28ee4857b8bfe683ddeaf8eaeb89527ecfd04f0 |
29-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Return the transform to apply in getLastQueuedBuffer" into nyc-dev am: 1992e9430c am: be5b94e9c6 * commit 'be5b94e9c6fab7638d1cba6f86069cff3fc9d20b': Return the transform to apply in getLastQueuedBuffer Change-Id: I6b9d78b7112a01cd9e6b6c6d66fdc925e0c87240
|
01f30f165797d06b43eac2ee4738816f2c2a4b04 |
29-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Return the transform to apply in getLastQueuedBuffer" into nyc-dev am: 1992e9430c * commit '1992e9430c82cc0d3f1b1fbb66749934a7482e8d': Return the transform to apply in getLastQueuedBuffer Change-Id: I04656a473afd254914ac0970fcaa3d27b26e6c3e
|
be5b94e9c6fab7638d1cba6f86069cff3fc9d20b |
29-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Return the transform to apply in getLastQueuedBuffer" into nyc-dev am: 1992e9430c * commit '1992e9430c82cc0d3f1b1fbb66749934a7482e8d': Return the transform to apply in getLastQueuedBuffer Change-Id: I93be20b7f0debb41c8f21725ed98fa863916cd32
|
c8145170a4b3bfdcfd6bd08b61ad55ae4eac9cc9 |
29-Apr-2016 |
Dan Stoza <stoza@google.com> |
SF: Clear local sync points on hide and destroy Clears out a Layer's local sync points when the layer is destroyed and when it is hidden, so that any Layers waiting for frames to appear on that Layer are not blocked when attempting to apply transactions Bug: 28399096 Change-Id: I380a83624f9d7ea5797f66daa711ae4b80475bdf
ayer.cpp
|
1a61da5e28fa16ad556a58193c8bbeb32a5f636d |
28-Apr-2016 |
John Reck <jreck@google.com> |
Return the transform to apply in getLastQueuedBuffer Bug: 28428955 Change-Id: Id48f7d3bf3f5deb074cf0a6a52a41caac875db41
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
531ad78d9e9036b56314dc745300c47fe92cdd94 |
25-Apr-2016 |
Srinath Sridharan <srinathsr@google.com> |
marlin/eas: Fixing foreground/schedtune.boost path am: 2c1ff54 * commit '2c1ff54f4167eb819bde7ae8af426478bec89456': marlin/eas: Fixing foreground/schedtune.boost path Change-Id: I2a8f6efcc48d69ce242680c247b0f8fb02ae218c
|
2c1ff54f4167eb819bde7ae8af426478bec89456 |
25-Apr-2016 |
Srinath Sridharan <srinathsr@google.com> |
marlin/eas: Fixing foreground/schedtune.boost path BUG: 28378389 Change-Id: Iea0bdf33de2ae2b9abc37460a9100d5044699c7d
urfaceflinger.rc
|
76ddac5f35f6c5967fffb49103e750bb69ec707e |
21-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "BQ: Replace items from back of queue" into nyc-dev am: 9461b93f7e * commit '9461b93f7e46e71dd43b021084012ec337a5cee3': BQ: Replace items from back of queue Change-Id: I3efbf1485d2fbb4dc5fed5e4b6fa5884faa0e6c7
|
4d85da4a77203f4c361e48699e5598ebe8c77b32 |
20-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
BQ: Replace items from back of queue It's possible to have one or more non-droppable items in the queue ahead of a droppable item. In that case we want to replace the droppable one at the end of the queue. By changing the policy to always replace the last item in the queue (if it's droppable) we ensure that there will never be more than one droppable item in the queue and that it will always be the last one. Bug 27129258 Change-Id: I9a6234fe12a0095ccb93ceb9cdb74616944900b0
ayer.cpp
|
e9105ba993a3d6fc5d4fbffe8605e1e32b3d14eb |
20-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "libgui: Add getLastQueuedBuffer to BufferQueue" into nyc-dev am: 4908a01 * commit '4908a010f63c7d0a6d9a1f4b67c3453a116d1556': libgui: Add getLastQueuedBuffer to BufferQueue Change-Id: I3891dc3857fbf9fa762ddb384dc276e5683696bb
|
4908a010f63c7d0a6d9a1f4b67c3453a116d1556 |
20-Apr-2016 |
Jesse Hall <jessehall@google.com> |
Merge "libgui: Add getLastQueuedBuffer to BufferQueue" into nyc-dev
|
b638dd9d3447c45b030e8d35a148ebe5cffeb149 |
20-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Actually wait forever" into nyc-dev am: 8a56bb7 * commit '8a56bb70c736245e875635d3093d70a51394dea5': DispSync: Actually wait forever Change-Id: I2096d15e68047479f92be07d9cc98b67d62e5ab4
|
8a56bb70c736245e875635d3093d70a51394dea5 |
20-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Actually wait forever" into nyc-dev
|
50101d02a8eae555887282a5f761fdec57bdaf30 |
08-Apr-2016 |
Dan Stoza <stoza@google.com> |
libgui: Add getLastQueuedBuffer to BufferQueue Adds the ability to get the last buffer queued to a BufferQueue plus its acquire fence. Bug: 27708453 Change-Id: Iee39475740b40c854a5f46178b2934fd930e61b8
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
e22700df1cea9b284f5c86e9695923ffec175552 |
19-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Don\'t resync if HW vsync is unavailable" into nyc-dev am: 15732be * commit '15732be8aaa961a8eeb50a2cd3db76981ff2e83f': DispSync: Don't resync if HW vsync is unavailable Change-Id: I0c63cf15c144271756ac87bd1821b7843800ef34
|
15732be8aaa961a8eeb50a2cd3db76981ff2e83f |
19-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Don't resync if HW vsync is unavailable" into nyc-dev
|
0a3c4d6f8c95a89875455e989278a440822968d7 |
19-Apr-2016 |
Dan Stoza <stoza@google.com> |
DispSync: Don't resync if HW vsync is unavailable Don't attempt to resync to hardware vsync if it's not available (if the display is blanked), which should prevent unusual sequences of commands (enable vsync, then unblank) to hardware composer. Bug: 28177844 Change-Id: I9d6046fb0a346830e98829fd250642f0809d7e31
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
3f59b10742eca3aafb1b14f79a08463015671872 |
19-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix camera orientation on virtual displays" into nyc-dev am: 55b29f2 * commit '55b29f2ec5d62a13eb374501ebc4691eadd3997a': SF: Fix camera orientation on virtual displays Change-Id: I9993f7ffd7e34ea6fb81edb8006ea3d635ae1eb4
|
55b29f2ec5d62a13eb374501ebc4691eadd3997a |
19-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Fix camera orientation on virtual displays" into nyc-dev
|
8f8374d75ab17be5d168fea14d3f8e2a40ca3c66 |
19-Apr-2016 |
Dan Stoza <stoza@google.com> |
DispSync: Actually wait forever When computeNextEventTimeLocked returns INT64_MAX (because there are currently no listeners), wait until the condition variable is signaled instead of waiting for a long timeout. Since the condition variable timeout is specified using CLOCK_REALTIME behind the scenes, we can receive false wakeups in the presence of large system clock changes. Bug: 28152577 Change-Id: I88dbab5d5d0776cb25dea76a4574db055b308fd1
ispSync.cpp
|
11e3dd84bd544bfa53f0e5c3ee5d40e4d0bb0018 |
19-Apr-2016 |
Tim Murray <timmurray@google.com> |
Merge "Revert "Revert "DispSync: Always resync after inactivity""" into nyc-dev am: 6328134 * commit '6328134d8f3969e5cf345bec84b2c6455afc6a34': Revert "Revert "DispSync: Always resync after inactivity"" Change-Id: I65c59dbba8e9455eb853b15c0e08246480150acc
|
6328134d8f3969e5cf345bec84b2c6455afc6a34 |
19-Apr-2016 |
Tim Murray <timmurray@google.com> |
Merge "Revert "Revert "DispSync: Always resync after inactivity""" into nyc-dev
|
4a4e4a239f034cb8af2df9a438b26c3bc088889c |
19-Apr-2016 |
Tim Murray <timmurray@google.com> |
Revert "Revert "DispSync: Always resync after inactivity"" This reverts commit 67264e930992e43ef3351b04692d4ca59cbb01ad. We've fixed the kernel issues this exposed. bug 28198793 Change-Id: Ie895cc0a815094cce4bee3b2bf45800ee1e2fdc3
ispSync.cpp
ispSync.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
021623b5a82e44e8dc1a7def1abfed351187593c |
16-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Fix camera orientation on virtual displays Camera uses NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY to make the camera preview always look upright on the device display. This commit changes the behavior of this flag slightly. Instead of applying the inverse transform of the current display when compositing, apply the inverse transform of the primary display to all displays. This assumes that the camera orientation is tied to the primary display. Bug 2628180 Change-Id: I0da22423490a93fe943fd59e6c122aa6aaf30b11
isplayDevice.cpp
isplayDevice.h
ayer.cpp
|
7a776ec3717bfe45d48f1c03987c8657ad8a56d5 |
18-Apr-2016 |
Robert Carr <racarr@google.com> |
Add setOverrideScalingMode to SurfaceControl am: c3574f7 * commit 'c3574f7b0141c69fdca25ccafb80ff334462f9a3': Add setOverrideScalingMode to SurfaceControl Change-Id: I8752f95ed3d596c8648e5d527aae4cae00e171b9
|
c3574f7b0141c69fdca25ccafb80ff334462f9a3 |
24-Mar-2016 |
Robert Carr <racarr@google.com> |
Add setOverrideScalingMode to SurfaceControl Provide an interface for the window manager to override the client specified scaling mode. This makes it possible for the window manager to force windows to be scaleable for animations, etc, even when a resize is pending. Bug: 27891386 Change-Id: Ic4aae9917bd6869ee0dbb425979b4e21c68342a3
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
f328bc4ba5e44b6bec3cef2a216c83a18dbdca8b |
15-Apr-2016 |
Gary Smith <gary.k.smith@intel.com> |
Merge "SF: Fix the delivery of visible and damage rects to HWC" into nyc-dev am: 12402e3 * commit '12402e34ad453f58e2c9d39fa65772f6cb09a0b6': SF: Fix the delivery of visible and damage rects to HWC Change-Id: I04fea542af9f217625c1e06e3efb4fefeea19551
|
12402e34ad453f58e2c9d39fa65772f6cb09a0b6 |
15-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Fix the delivery of visible and damage rects to HWC" into nyc-dev
|
6034c207c486ca79ce97f7afeb21491b30bf8443 |
15-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "Revert "DispSync: Always resync after inactivity"" into nyc-dev am: ccf8058 * commit 'ccf8058396c3ac8d1e296b9c0ba5f6317cc90661': Revert "DispSync: Always resync after inactivity" Change-Id: I5bf3facc0f80feb4f7b994054a5fb812a84ffda8
|
ccf8058396c3ac8d1e296b9c0ba5f6317cc90661 |
15-Apr-2016 |
Tim Murray <timmurray@google.com> |
Merge "Revert "DispSync: Always resync after inactivity"" into nyc-dev
|
6451ddb8f107b2fd57c956e74935ac62b91c8a2d |
15-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Don\'t pop pending state into mCurrentState" into nyc-dev am: 9eb286a * commit '9eb286a074a8b2764b69339b0958dc5b176f1a8d': SF: Don't pop pending state into mCurrentState Change-Id: Ieb6b0f2a24a00b4c54b0a544b81fc72899305036
|
9eb286a074a8b2764b69339b0958dc5b176f1a8d |
15-Apr-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "SF: Don't pop pending state into mCurrentState" into nyc-dev
|
f5abc7801eb008708d31c8f349d4301881c51c89 |
15-Apr-2016 |
Gary Smith <gary.k.smith@intel.com> |
SF: Fix the delivery of visible and damage rects to HWC The storage space for the visible and damage regions was inside the HWCLayerVersion1 class, which is temporarily allocated while using an iterator. As such, the storage has been deleted by the time the HWC gets a pointer to it sometime later and hence the HWC reads garbage in all layers. This commit moves the storage into the DisplayData structure and hence it persists until the next frame. Bug 28200888 Change-Id: If7cc8d2de49e3e66e9d17cc45934d8e544576026
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
|
e5fc9167630372c7527f95debe3fd32e3e40a19c |
15-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Change version detection scheme" into nyc-dev am: 8bf556e * commit '8bf556ec85af8d4d47aad5a19a0633cf8b0fa17e': HWC2: Change version detection scheme Change-Id: Id81873cee64b8bae46d1722970179d0a183d60a6
|
8bf556ec85af8d4d47aad5a19a0633cf8b0fa17e |
15-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Change version detection scheme" into nyc-dev
|
05289c2b78d21308a95ea6ef8f1d8f24359147cd |
15-Apr-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Don't pop pending state into mCurrentState Let mCurrentState always represent the most up to date state, even if there are transactions we don't want to commit yet. Past snapshots of the state are kept in mPendingState. In doTransaction(), grab the correct pending state from mPendingState, but save it to a local copy that gets committed rather than overriding mCurrentState. Bug 27205755 Change-Id: Ib0ea809da1954409787c52b8f41d7963a57a6a4c
ayer.cpp
ayer.h
ests/Transaction_test.cpp
|
6bad200fba6b68fb0946c096c072ce985c18d12a |
14-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Check SidebandStream capability on load" into nyc-dev am: d4797c2 * commit 'd4797c2f3f91474baef2653ed1221aa595cc96f3': HWC2: Check SidebandStream capability on load Change-Id: I76dcda5b00f9a965ac5eaf20a7295b61c523f6d3
|
355f60461b1ec4f0035fcb5e73d36e662352cd18 |
14-Apr-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Change version detection scheme SurfaceFlinger now checks hardware composer module numbers by looking at device.version, the high byte of which corresponds to the HWC major version (0x01... for HWC 1.x and 0x02... for HWC 2.0). Bug: 28161397 Change-Id: I4560bf60c35bdb97629fda1aa1256b03122688ad
isplayHardware/HWComposer.cpp
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
67264e930992e43ef3351b04692d4ca59cbb01ad |
14-Apr-2016 |
Dan Stoza <stoza@google.com> |
Revert "DispSync: Always resync after inactivity" This reverts commit f34b9be610ce286af224364cb6e69ef6f7697ee9. Bug: 28160740 Change-Id: I48a5bd66712651b42fdc0aaf1492899d7b032977
ispSync.cpp
ispSync.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
ce1099ee4cb76cf06071f9cad450a3e9ebe8f73c |
11-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Always resync after inactivity" into nyc-dev am: 7e5e128 * commit '7e5e1287276efba71cceec75c495c21ecec4f147': DispSync: Always resync after inactivity Change-Id: I6ed67ed8139c4ab1b07e524877db505635fc22eb
|
7e5e1287276efba71cceec75c495c21ecec4f147 |
11-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "DispSync: Always resync after inactivity" into nyc-dev
|
b93445dca508213a9b67619afe006a198d356c4e |
09-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge changes I0f07043f,Ib4635ee4,I472ad9f0 into nyc-dev am: 97a46df * commit '97a46df0ee9708822f190a76047c490f54c199cd': Plumb HDR capabilities up to SurfaceComposerClient HWC2: Add getHdrCapabilities to C++ shim HWC2: Add getHdrCapabilities stub to adapter Change-Id: Ia3ad51ebcedf563dbc1275299de125571aa10930
|
97a46df0ee9708822f190a76047c490f54c199cd |
09-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge changes I0f07043f,Ib4635ee4,I472ad9f0 into nyc-dev * changes: Plumb HDR capabilities up to SurfaceComposerClient HWC2: Add getHdrCapabilities to C++ shim HWC2: Add getHdrCapabilities stub to adapter
|
c4f471e75a8ec64ec34e3f2944a5a756215d0bec |
24-Mar-2016 |
Dan Stoza <stoza@google.com> |
Plumb HDR capabilities up to SurfaceComposerClient Plumbs HDR capabilities up from HWC2 through SurfaceFlinger and ISurfaceComposer to SurfaceComposerClient. Bug: 25684127 Change-Id: I0f07043ff42bfc7a159f785fee3e84936dc3c280
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
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
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
ed40eba4c1264806a1b795bf45b0dea366ee9975 |
16-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add getHdrCapabilities stub to adapter Adds a minimal getHdrCapabilities stub to the HWC2On1Adapter, which always returns 0 supported HDR types (as per the HWC2 spec). Bug: 25684127 Change-Id: I472ad9f08d1b97d5de69d044790badf3af60da72
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
f34b9be610ce286af224364cb6e69ef6f7697ee9 |
06-Apr-2016 |
Dan Stoza <stoza@google.com> |
DispSync: Always resync after inactivity Changes DispSync to enable hardware vsync immediately when new frames arrive after a period of inactivity. No matter how hard we try, we can't avoid drifting over time without being able to detect error based on display retire fences. By enabling hardware vsync immediately, we avoid having a weird period or phase offset relative to hardware while we retrain the model. Once the model has locked, we turn hardware vsync back off to save power (until we detect drift again). Bug: 26255070 Change-Id: If4dd17c2d541015c730f47d824359d7cb4b52c3c
ispSync.cpp
ispSync.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlinger_hwc1.cpp
|
fcd8985c813f46537b3d84359dca9a8c9f83b737 |
07-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF/HWC2: Reorder makeCurrent to avoid deadlock" into nyc-dev am: 79632ee * commit '79632ee48a8cddf31a1ec15c0c5217b3d3608622': SF/HWC2: Reorder makeCurrent to avoid deadlock Change-Id: Icbb2f2178e21c213ff879e0a04c4bfda25583d28
|
79632ee48a8cddf31a1ec15c0c5217b3d3608622 |
07-Apr-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF/HWC2: Reorder makeCurrent to avoid deadlock" into nyc-dev
|
7c8ec9b282c5660c7d8214ef5dc19716903c4880 |
07-Apr-2016 |
Jesse Hall <jessehall@google.com> |
Merge changes from topic \'vkjson\' into nyc-dev am: 16ce3ce * commit '16ce3cec53f3daf18f851c776e50e146f2dfacef': GpuService: Add 'help' and 'vkjson' commands Add service "gpu" in the SurfaceFlinger process Change-Id: I46b4c2975b7e458c91e08920762906b368057084
|
2dc3be88bd85791556ab0e6df6a080989886749e |
06-Apr-2016 |
Dan Stoza <stoza@google.com> |
SF/HWC2: Reorder makeCurrent to avoid deadlock Now that we are deferring the release of FramebufferSurface buffers (so that we can return a non-speculative fence), we end up holding two acquired buffers during the call into HWComposer::commit (whereas we previously would have only been holding one, with the other having been released). This means that if the EGL implementation dequeues a buffer as part of eglMakeCurrent, neither of the FramebufferSurface buffers will be free, and the call to dequeueBuffer will block. This change fixes that issue by reordering eglMakeCurrent to occur after the deferred release. Bug: 25684127 Change-Id: I6ec55b3f7b7d0e0f5be6029751cb086feeb52fbe
urfaceFlinger.cpp
|
8b0d55e3652e68e9e2b0f4314c1eaeadc49cc2d0 |
01-Apr-2016 |
Jesse Hall <jessehall@google.com> |
GpuService: Add 'help' and 'vkjson' commands Bug: 26620936 and 27352427 Change-Id: Id0ad5b7184ddc624eddfb292a0d86546c26fb9ea
ndroid.mk
puService.cpp
|
fc038bd8fc77998a436d43027919f4500c4291e6 |
27-Mar-2016 |
Jesse Hall <jessehall@google.com> |
Add service "gpu" in the SurfaceFlinger process This service will handle shell commands for querying information about the graphics hardware and driver. It currently does nothing. Most shell command services are provided by ActivityManagerService. I didn't want to put this there, because I'd rather not load graphics drivers in the system_service process (robustness, security, etc.). SurfaceFlinger is going to have them anyway, and is the only other global always-running process that makes sense for this. Change-Id: I27e451ea62b71aed01c6ececefd76d6707912eed
ndroid.mk
puService.cpp
puService.h
ain_surfaceflinger.cpp
|
c6c17d70b37581258aef172c525e41922aa03c1d |
31-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Disable FenceTracker from makefile am: 69a1a38 * commit '69a1a389321447301a8eaba235190dc1229aefbd': SF: Disable FenceTracker from makefile Change-Id: Iff8b9ce5b551cb5e10d424e256c9462e5de50d76
|
69a1a389321447301a8eaba235190dc1229aefbd |
31-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Disable FenceTracker from makefile - Add tracing to the FenceTracker. - Disable it by default with #ifdefs, it can be enabled in the makefile. Bug 27882222 Change-Id: I640e028c4dc97b46e800a7f21cdb2cb6a4b4ff18
ndroid.mk
enceTracker.cpp
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
ab8649138e30e350ae15911dfff7c709f127f2e3 |
29-Mar-2016 |
Robert Carr <racarr@google.com> |
Merge changes I653b84e7,Ieafdc14a into nyc-dev am: abddf72 * commit 'abddf727041d2ea0e678442b2d7905afc8b33bd4': Apply position updates immediately. Move crop outside of geometry state. Change-Id: I7d4b9d49f6807748592c32432e4ab80da59bad37
|
abddf727041d2ea0e678442b2d7905afc8b33bd4 |
29-Mar-2016 |
Rob Carr <racarr@google.com> |
Merge changes I653b84e7,Ieafdc14a into nyc-dev * changes: Apply position updates immediately. Move crop outside of geometry state.
|
69663fb0de2f112f525c4dcd7e2f7e0c879daaa4 |
28-Mar-2016 |
Robert Carr <racarr@google.com> |
Apply position updates immediately. Restores the behavior prior to moving transform in to geometry state. Now geometry state and scaling mode only control parameters which would cause buffer scaling. Bug: 27729195 Bug: 27687126 Change-Id: I653b84e74407f2533c92f7647e2609fc043ed0a4
ayer.cpp
|
2dcb363c6e86b463a9f4e5925746e2f1089aef16 |
17-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Rename single buffer mode to shared buffer mode Change-Id: Id43d0737d9367981644e498942ebc0077d61038c (cherry picked from commit 3559fbf93801e2c0d9d8fb246fb9b867a361b464)
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
onitoredProducer.cpp
onitoredProducer.h
|
b5d3d2657bad1f012377dfacd354d3100a65768a |
25-Mar-2016 |
Robert Carr <racarr@google.com> |
Move crop outside of geometry state. Prior to this CL, if Layer crop is changed while a surface resize is pending, the crop will not be applied until a buffer latches at the new size. This CL makes the crop apply immediately. We can see this is the desired behavior by looking at the two cases where a resize is pending. 1. A resize is pending to make the surface smaller. In this case we need to be able to immediately update the crop so that we can shrink the visible region of the surface at an interactive rate with input. The window manager currently uses big surfaces and scaling modes to accomplish this. 2. A resize is pending to make the surface larger. In this case it doesn't matter. If we expand the crop immediately to the new surface size, then we have simply uncropped an area which is by definition transparent pixels (as we haven't latched a buffer at the new size yet). This change has conceptual soundness as well. We can see that the scaling mode will not affect properties that affect scaling (transform, width/height) but not properties which do not (crop). Bug: 27729195 Bug: 27687126 Change-Id: Ieafdc14aeecb23085793e3056a746d6f344781df
ayer.cpp
ayer.h
|
59d12e90ae09171fc8b50fd8fd02e3247c04840c |
28-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Rename single buffer mode to shared buffer mode" into nyc-dev
|
e2e39a3bb49291837c55844d73d779c6fcf4262c |
25-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Add FenceTracker" into nyc-dev am: 830f500 * commit '830f5004da53a83e23b4102ba9b72e4cb366cb34': SF: Add FenceTracker
|
830f5004da53a83e23b4102ba9b72e4cb366cb34 |
25-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Add FenceTracker" into nyc-dev
|
61be455e943463e72fa108fb01e3d1608446f03a |
23-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Add final crop implementation" into nyc-dev am: 41371bf * commit '41371bfa0dad4a4332a8cc30b066d95546e4c4fc': Add final crop implementation
|
acbe67888f0bd65d5400400f0115bae6bd6199dc |
04-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Add final crop implementation Bug 26559810 Change-Id: Idaccd13cd625c92d18665ddecebdbb266ea365f3
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
ransform.h
ests/Transaction_test.cpp
|
40845df1285b387bcbf8f43ac72228eee2606d80 |
26-Jan-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: Add FenceTracker FenceTracker tracks all fences in SurfaceFlinger. These timestamps could be used for debugging, profiling, or be exposed to the application. Change-Id: I4297a661c0a7530e744168ac7a2a66c4bca92fd5
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
enceTracker.cpp
enceTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
3559fbf93801e2c0d9d8fb246fb9b867a361b464 |
17-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Rename single buffer mode to shared buffer mode Change-Id: Id43d0737d9367981644e498942ebc0077d61038c
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
onitoredProducer.cpp
onitoredProducer.h
|
64f3f3531c72053290406bbb2bebb1dad2fff9a1 |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
Merge "Revert "DispSync: workaround HH hardware vsync issue"" into nyc-dev am: 3aa14b5e74 * commit '3aa14b5e74baabd48e5824a61377d776752a12bf': Revert "DispSync: workaround HH hardware vsync issue"
|
3aa14b5e74baabd48e5824a61377d776752a12bf |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
Merge "Revert "DispSync: workaround HH hardware vsync issue"" into nyc-dev
|
bf4f9107e9ced8662cd55a4382d715a41be7c74f |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Track move of transform into Geometry" into nyc-dev am: 52448f381c * commit '52448f381cfdd08bda31bc38e193a661e01c9626': HWC2: Track move of transform into Geometry
|
52448f381cfdd08bda31bc38e193a661e01c9626 |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
Merge "HWC2: Track move of transform into Geometry" into nyc-dev
|
22279c44183a9c71301c770c4275545500a48345 |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
Revert "DispSync: workaround HH hardware vsync issue" This reverts commit c734d95c575830ffc97fc5d2ae14b020c95d05de, which was a workaround for a bug on a device which is now obsolete. Bug: 25845510 Change-Id: I3244bfd3f758c52dfe76e9d5b0a72bbcffdf5a6f
ispSync.cpp
ispSync.h
|
baf416d62eec3045ba4fd61f2df60f3e82f12d52 |
10-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Track move of transform into Geometry Changes a line where we missed the move of transform into Geometry to fix the HWC2 build. Bug: 26454664 Change-Id: Ib44ec8705b81da2aa1b99e61449609371e533297
ayer.cpp
|
ff48c1514bda858ffca790ca1b035f12affc651d |
10-Mar-2016 |
Prathmesh Prabhu <pprabhu@google.com> |
Merge "Do not queue trivial buffer for unsupported screenshot request." into nyc-dev am: c334549ae3 * commit 'c334549ae303be666a9008d7364cd388e18ea448': Do not queue trivial buffer for unsupported screenshot request.
|
f3209b03b3adbf6868c2dcadb07adc5f865f5688 |
10-Mar-2016 |
Prathmesh Prabhu <pprabhu@google.com> |
Do not queue trivial buffer for unsupported screenshot request. When screenshot is not supported, we queue an empty buffer to the requesting producer. Besides returning a useless screenshot, this overwrites the valuable error code, returning ERROR_OK whenever we successfully return the trivial buffer. Instead, refuse to queue the trivial buffer, and return the original error code. This replaces the workaround proposed in I6da5d2fdecdef6c87d4dd7b353e2464678800110 BUG:27505438 Change-Id: I597a9be25071d2a6ddafb7d39cc1b09fb48d5fd0
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
261b94b5d76ce8db8305380816811bb507f09e9c |
04-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Revert "SF: detachLayer from Client earlier on destruction"" into nyc-dev am: 99dccfc3ec * commit '99dccfc3ec4b304d1ee3497ecbcc3322a84cf606': Revert "SF: detachLayer from Client earlier on destruction"
|
8ea4e7b878540647bb7ceeaa1d62d50cd458d9c6 |
04-Mar-2016 |
Pablo Ceballos <pceballos@google.com> |
Revert "SF: detachLayer from Client earlier on destruction" This reverts commit e338df1c2ff4ed2cd575a0e3193ef77c9cd9cb72. Bug 27330889 Change-Id: I7e62ac2623bd0e1304f36a895ee2b5f9160e2a7e
ayer.cpp
|
c01b8d93a057654ed22990e7f48de7478bd8d3cd |
03-Mar-2016 |
Robert Carr <racarr@google.com> |
Merge "Latch transform with geometry state." into nyc-dev am: fb47fe7d27 * commit 'fb47fe7d27aa8a0adcccf311b6a5ab4cab4fd49d': Latch transform with geometry state.
|
3dcabfab7ef80df5884b269fec17350a26da6f51 |
02-Mar-2016 |
Robert Carr <racarr@google.com> |
Latch transform with geometry state. WindowManager would like this feature for animating windows between sizes. For example, if we are animating from a smaller to larger window, we need to complete the resize at the beginning of the animation to avoid up-scaling. However to avoid artifacts we need the window to appear at its old size following this resize, so we use the transform to scale down. However as the transform is latched immediately, we result in a frame where the window is too small, until the resize is complete. This is a change in behavior but it's hard to understand how it could cause errors. Previously if someone wished to set the transform and resize a window in the same transaction, then the results would be undefined (depending on the state of the window buffer), and there would be no avenue for synchronization. Bug: 26454664 Change-Id: I4e8475967e0a19aa5879af965a5716eb173f9700
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger_hwc1.cpp
|
c9d972065c44860306add0172b5185bd8611f9ee |
03-Mar-2016 |
Dan Stoza <stoza@google.com> |
resolve merge conflicts of 7dbaaf19eb to nyc-dev-plus-aosp Change-Id: I7c85803051511d932ddf5cd7f97dda9ea3145520
|
7dbaaf19eb3c2abde55a7082a2bfcea059dc8b72 |
03-Mar-2016 |
Zhiquan Liu <zhiquan.liu@intel.com> |
Merge ""#warning" conflict with -Werror" am: e6b6843c5f * commit 'e6b6843c5fc19976677706518c4875a78cc736bb': "#warning" conflict with -Werror
|
4b2a105055d37579f1d234c02f4e14c38ca3ed43 |
03-Mar-2016 |
Zhiquan Liu <zhiquan.liu@intel.com> |
"#warning" conflict with -Werror if code run #warning, it will have compile error. Change-Id: Ic7f05cd722c14f3c5da89e2c3792615dd15cb798 Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
ayer.cpp
|
9e56aa0fdb5f7121b9b975c6c16db103ea4d2fe9 |
02-Nov-2015 |
Dan Stoza <stoza@google.com> |
Switch SurfaceFlinger to HWC 2.0 Enables SurfaceFlinger to speak to version 2.0 of the Hardware Composer HAL instead of version 1.x (also removing support for the framebuffer HAL). By default, however, this functionality is disabled. In order to enable it, USE_HWC2 must be set to true in Android.mk. Change-Id: I4589e02ac2165236b10ff2f7cb772f87e0d3daab
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/HWComposer_hwc1.cpp
isplayHardware/HWComposer_hwc1.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ventControlThread.cpp
ayer.cpp
ayer.h
ayerDim.cpp
enderEngine/GLES10RenderEngine.cpp
enderEngine/GLES10RenderEngine.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceFlinger_hwc1.cpp
|
fc4e202b33d33b5e11181f09a2229d3ef7ae925a |
23-Feb-2016 |
Dan Stoza <stoza@google.com> |
HWC2On1Adapter: Initialize variables and fix mutex Initializes a few variables that had been missed before, and switches the Adapter state mutex to be recursive, since it is held during the call into HWC1 prepare, which can call back into the Adapter to perform an invalidate. Change-Id: Id300e8b23403f5339562fd860c2ce9d0f2b72f27
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
1433e3d5e84ea1c836a72e3f781f7230bf5ad4f0 |
25-Feb-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: check secure layers in screenshot message handler" into nyc-dev
|
b5b3563058c178811d434ab6e8c4ead4a519701b |
23-Feb-2016 |
Pablo Ceballos <pceballos@google.com> |
SF: check secure layers in screenshot message handler - Instead of checking for the presence of secure layers on the Binder thread, check in the message handler. Transactions may have occurred in between when the check is done and when the screen shot message is handled. Bug 23757877 Change-Id: Iec74193996ca72c60f86f7c0f0b2a5dea8d19543
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
a4c2c3ba1ed2d741edfa652bf8f2bab229389e8e |
23-Feb-2016 |
Dan Stoza <stoza@google.com> |
Merge changes I8cc3ce7d,Ie1a7bfd2,Id472ed4e into nyc-dev * changes: libgui: Allow for pending releases in GLConsumer SF: HWC2 C++ shim SF: HWC2On1Adapter
|
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
ndroid.mk
isplayHardware/FloatRect.h
isplayHardware/HWC2.cpp
isplayHardware/HWC2.h
|
c6998d2391e6e54cf0664bb664e0fba2f2fce1da |
25-Sep-2015 |
Dan Stoza <stoza@google.com> |
SF: HWC2On1Adapter This provides an adapter from HWC 2.0, which SurfaceFlinger will be converted to speak, to HWC 1.x, which all current implementations support. It requires at least HWC 1.1. Change-Id: Id472ed4eef0f816403cdf2d40a56177cc7f65930
ndroid.mk
isplayHardware/HWC2On1Adapter.cpp
isplayHardware/HWC2On1Adapter.h
|
aaf51e52cfa937a8938a4429a14432a8424c66d0 |
20-Feb-2016 |
Pablo Ceballos <pceballos@google.com> |
Merge "Add interface for controlling single buffer auto refresh" into nyc-dev
|
792e529dee5b6cf839b982b4b06a37fbf1d3e28a |
11-Feb-2016 |
Dan Stoza <stoza@google.com> |
SF: Prevent non-sync transactions from syncing Clears the sync handle and frame number after registering a deferred transaction to prevent other non-synchronized transactions from erroneously getting marked as synchronized. Also changes the application of pending states such that all valid pending transactions are applied instead of breaking after the first one. Bug: 27061473 Change-Id: I98f0f26e9d9bb0d266563f209e94dfd776d8f8ea
ayer.cpp
|
ff95aabbcc6e8606acbd7933c90eeb9b8b382a21 |
14-Jan-2016 |
Pablo Ceballos <pceballos@google.com> |
Add interface for controlling single buffer auto refresh - Adds a boolean to BufferQueue that controls whether or not auto refresh is enabled in SurfaceFlinger when in single buffer mode. - Adds plumbing up to ANativeWindow. - When enabled, it will cache the shared buffer slot in Surface in order to prevent the Binder transaction with SurfaceFlinger. Bug 24940410 Change-Id: I83142afdc00e203f198a32288f071d926f8fda95
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
c243d320462e7e12c269273e37056847ba7c0672 |
28-Jan-2016 |
Dan Stoza <stoza@google.com> |
Merge "SF: Modify transaction/buffer sync logic"
|
cac353808ec1048333d7fd2f3d596fb4db567aa3 |
27-Jan-2016 |
Dan Stoza <stoza@google.com> |
SF: Modify transaction/buffer sync logic Reorganizes the transaction/buffer synchronization logic to only consider the head of the incoming BufferQueue instead of all buffers, and fixes some potential race conditions. Bug: 25951593 Change-Id: Ib2b08e7be571eb8bbd8c364fb85acf0e046b439c
ayer.cpp
ayer.h
|
ac8d239dd7c22fc2be4e2d470b9d164c3c9285e9 |
10-Nov-2015 |
Tim Murray <timmurray@google.com> |
Set cpuset from surfaceflinger. SurfaceFlinger shouldn't be limited to little cores exclusively, as the binder threads should be placed on big cores when they are in the critical path for a RenderThread. bug 25745866 Change-Id: I9fb65f6d951733f91b4735ff27018411b58b2bfb
ndroid.mk
ain_surfaceflinger.cpp
urfaceflinger.rc
|
70982a5f95f68295244e5f6cc037c193713a5259 |
12-Jan-2016 |
Dan Stoza <stoza@google.com> |
Revert "libgui: Remove custom BufferQueue allocators" This reverts commit acd56150573d3a6d449c0de01f93c6f269d121e3. Change-Id: I877f63a57fbddb4dcff71b3909b460ecc05981eb
urfaceFlinger.cpp
|
acd56150573d3a6d449c0de01f93c6f269d121e3 |
08-Jan-2016 |
Dan Stoza <stoza@google.com> |
libgui: Remove custom BufferQueue allocators Removes the ability to set a custom GraphicBuffer allocator for a BufferQueue. Custom-allocated buffers may still be used through the attachBuffer call. Change-Id: I127bdfb496fc089a61c7e266c8bd2b906d41f32e
urfaceFlinger.cpp
|
127fc63e8a15366b4395f1363e8e18eb058d1709 |
30-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add dequeue/attach timeout Adds the ability to specify the timeout when dequeueBuffer or attachBuffer block due to the lack of a free buffer/slot. By default, these will block indefinitely (which is signified by a timeout of -1). When a timeout (other than -1) is specified, non-blocking mode is disabled and the given timeout will be used instead. Bug: 25196773 Change-Id: I17fdbeebccb7c8d878703d758ac1209608258e61
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
8ce1c84abc6b1faf75db8af1d3c17c723e67ab87 |
09-Dec-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Prevent accidentally re-adding a removed layer"
|
47db6ebf45c74b6de94afed05c0aa9c1d8a0fda8 |
08-Dec-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Prevent accidentally re-adding a removed layer Bug 25887783 Change-Id: Ib13ebdfb55d40c0f2175b2bc521214a07281e69a
urfaceFlinger.cpp
|
db399019c4ad9465f3761847a26d8e2f12018124 |
03-Dec-2015 |
Haixia Shi <hshi@google.com> |
Merge "DispSync: workaround HH hardware vsync issue"
|
e338df1c2ff4ed2cd575a0e3193ef77c9cd9cb72 |
03-Dec-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: detachLayer from Client earlier on destruction - When a Layer is destroyed the Layer destructor isn't called until the next vsync refresh. However, the onRemoved() callback is called on the next invalidate. So it's possible to submit a transaction on the layer in between the call to onRemoved() and the destructor being called. - Call detachLayer() from onRemoved() instead of from the destructor so that any transactions on a destroyed Layer will fail to get the Layer object even if the destructor has yet to be called. Bug 25887783 Change-Id: Ic2371f695bc91aa7120bf6506bb834ceb536420e
ayer.cpp
|
438afe17614b357ac5482f061cbfd38e1baeb493 |
02-Dec-2015 |
Dan Stoza <stoza@google.com> |
Merge "bug#460672 framebuffer surface can\'t keep triple buffer if define NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3" am: b2e3095a60 am: 46f8beb07f am: 6f9ba3b324 * commit '6f9ba3b32492c23b3197b01c330c571714c4a3dd': bug#460672 framebuffer surface can't keep triple buffer if define NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
|
6f9ba3b32492c23b3197b01c330c571714c4a3dd |
02-Dec-2015 |
Dan Stoza <stoza@google.com> |
Merge "bug#460672 framebuffer surface can\'t keep triple buffer if define NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3" am: b2e3095a60 am: 46f8beb07f * commit '46f8beb07fe2fa28b1c216485b91b894a1c8625b': bug#460672 framebuffer surface can't keep triple buffer if define NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
|
5e8eb5ead16fa1136d769d7f8625b882e6465afc |
01-Dec-2015 |
james.zhang <james.zhang@spreadtrum.com> |
bug#460672 framebuffer surface can't keep triple buffer if define NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3 [root cause ] framebuffer surface is in the same process of surface flinger [changes ] call IGraphicBufferProducer::allocateBuffers on producer inside the DisplayDevice constructor to force-allocate all three buffers. [side effects] none [self test ]<tshark, enter and exit mainmenu>: ok [reviewers ] zhongjun.chen [change_type ] AOB --> google_original [tag_product ] common Change-Id: Ideb75d3aa1ed23b2fa4d263a120ea3ca39d01361
isplayDevice.cpp
|
c734d95c575830ffc97fc5d2ae14b020c95d05de |
24-Nov-2015 |
Haixia Shi <hshi@google.com> |
DispSync: workaround HH hardware vsync issue The HWC of HH seems to have a bug where it fails to generate vsync events upon the first eventControl call to turn on HWC_EVENT_VSYNC. The workaround is for DispSync to detect when it has received no resync samples after many presents, and return false so that SF will disable HW vsync and re-enable it in the next present. This gets the HWC of HH out of the bad state. Bug:25845510 TEST=reboot HH then immediately capture systrace while scrolling all apps Change-Id: Ie034c113d94ea53068eef75b8eac39a32788666a
ispSync.cpp
ispSync.h
|
3bddd5b7731fafd2c60e75416ccd091972d196ae |
19-Nov-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Don't use pointer if promote() fails Bug 25759725 Change-Id: I51f82154bf86ded24503c07f1932b115aa709cd4
ayer.cpp
|
fedb5f4208669480684d116db1ec2234a6bdaa26 |
17-Nov-2015 |
Todd Kjos <tkjos@google.com> |
Actively mangage EAS schedtune nodes Move foreground tasks to /sys/fs/cgroup/stune/boost/tasks (boosted weight in EAS scheduler). Move background tasks to /sys/fs/cgroup/stune/tasks (default weight). For services started with init, set "foreground" services to boosted. Change-Id: I0e489fad9510727c13e6754dabaf311c2391f395
urfaceflinger.rc
|
392db573b35d6fe09c4da094ed81c54ed528a511 |
10-Nov-2015 |
Tim Murray <timmurray@google.com> |
Set cpuset from surfaceflinger. SurfaceFlinger shouldn't be limited to little cores exclusively, as the binder threads should be placed on big cores when they are in the critical path for a RenderThread. bug 25745866 Change-Id: I9fb65f6d951733f91b4735ff27018411b58b2bfb
ndroid.mk
ain_surfaceflinger.cpp
|
0f0ecf475fbbb1af9dc17837a15a0c730ac56ca0 |
17-Nov-2015 |
Todd Kjos <tkjos@google.com> |
Actively mangage EAS schedtune nodes Move foreground tasks to /sys/fs/cgroup/stune/boost/tasks (boosted weight in EAS scheduler). Move background tasks to /sys/fs/cgroup/stune/tasks (default weight). For services started with init, set "foreground" services to boosted. Change-Id: I0e489fad9510727c13e6754dabaf311c2391f395
urfaceflinger.rc
|
04839abb2dbfe7afe57ccc91902870aab52d30b8 |
13-Nov-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Initialize mSingleBufferMode Bug 25586311 Change-Id: I2d66542c6ecb762924fa002e5487188703be8515
ayer.cpp
|
07e25abb0a9e8fa973dd9b85ba7b711f8d722e20 |
09-Nov-2015 |
Nick Kralevich <nnk@google.com> |
Merge "Allow read access to /proc entries for other UIDs" am: fd53598220 am: 877b5daecc am: 3e606062b3 * commit '3e606062b3b2e8143f5353a7028e78b25a803aa8': Allow read access to /proc entries for other UIDs
|
ab46a4922655bc75848660da4268ab85d72a6010 |
08-Nov-2015 |
Nick Kralevich <nnk@google.com> |
Allow read access to /proc entries for other UIDs Allow dumpstate (aka adb bugreport), servicemanager, and surfaceflinger to access /proc entries associated with other UIDs. Bug: 23310674 Change-Id: I385dcf0db3376ba979409cbe6fe1a468d36237ef
urfaceflinger.rc
|
6eaede6acbc672c552579ba54714227f13afae36 |
05-Nov-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge changes from topic 'single_buffer_mode' * changes: SF: Force refresh when in single buffer mode BQ: Add support for single buffer mode
|
063121849890da78b1ad7fb96c54c795de5d1fd6 |
08-Oct-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Force refresh when in single buffer mode - Add a boolean to BufferItem to track whether single buffer mode is enabled. When it is, force SurfaceFlinger to acquire a new buffer and refresh on every vsync. Bug 24940410 Change-Id: Iea67330c416b6fb14500865f98c67f1c12f23197
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
ccdfd60d79a8b7f1ed6401d0f2e8e29166a10584 |
08-Oct-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: Add support for single buffer mode - Adds a single buffer mode to BufferQueue. In this mode designate the first dequeued buffer as the shared buffer. All calls to dequeue() and acquire() will then return the shared buffer, allowing the producer and consumer to share it. - Modify the buffer slot state tracking. Add a new SHARED state for the shared buffer in single buffer mode. Also track how many times a buffer has been dequeued/queued/acquired as it's possible for a shared buffer to be both dequeued and acquired at the same time, or dequeued/acquired multiple times. This tracking is needed to know when to drop the buffer out of the SHARED state after single buffer mode has been disabled. - Add plumbing for enabling/disabling single buffer mode from Surface. Bug 24940410 Change-Id: I3fc550c74bacb5523c049a227111356257386853
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
676b1f6ed0d637b7eb1858361e0d09068f26e9fa |
29-Oct-2015 |
Haixia Shi <hshi@google.com> |
SF: more DispSync improvements. Pass the reference time to DispSyncThread. Since the phase offset is calculated using timestamps relative to the reference time, we must also adjust the phase offset by the same reference time when computing the next refresh time. Always reset phase offset to zero when updating the reference time because the reference time equals the first timestamp. After beginResync() we need to keep HW vsync enabled until the model is updated. Bug: 25113115 Change-Id: I8eae227bee91c24a99bf8e57fbebceb98d29c77d Test: check in systrace that app/sf vsync events have correct phase
ispSync.cpp
ispSync.h
|
664339a8e8d3f2d5acd5728dae666cc9a14e08f3 |
28-Oct-2015 |
Haixia Shi <hshi@google.com> |
SF: use first sample timestamp as reference. Do not use the absolute 64-bit nsecs_t timestamp directly in phase and error calculations. Compared to the estimated vsync period, the timestamp tend to many orders of magnitudes larger, and consequently the integer modulo operation used to calculate phase and error can be very sensitive to tiny fluctuation in vsync period. Bug: 25113115 Test: set kTraceDetailedInfo=true; see Phase and Error are stable in systrace Change-Id: I687703eec31b1072c606898c0424a96c0a8ca033
ispSync.cpp
ispSync.h
|
b0c8d787040974128dc7c7c2e484da66a2437815 |
29-Oct-2015 |
Rob Carr <racarr@google.com> |
Merge "Support SurfaceView synchronization."
|
7dde599bf1a0dbef7390d91c2689d506371cdbd7 |
22-May-2015 |
Dan Stoza <stoza@google.com> |
Support SurfaceView synchronization. Add API for fetching the next frame number to be produced by a given buffer producer. Add an API to SurfaceComposer to defer execution of the current transaction until a given frame number. Together these may be used to synchronize app drawing and surface control updates. Change-Id: I8e0f4993332ac0199c768c88581a453fefbaff1d
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlinger.cpp
|
e76d32d08656949399587251e761d7710b058e3a |
26-Oct-2015 |
Dan Stoza <stoza@google.com> |
Merge "surfaceflinger: Set max acquired buffer count" am: af5c3b1d6a * commit 'af5c3b1d6a9cc1d36b526291391009b2a4e097ff': surfaceflinger: Set max acquired buffer count
|
af5c3b1d6a9cc1d36b526291391009b2a4e097ff |
26-Oct-2015 |
Dan Stoza <stoza@google.com> |
Merge "surfaceflinger: Set max acquired buffer count"
|
f133d003aaac80a0932a2d8f9efd8493e56f7814 |
23-Oct-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Connect the VDS scratch surface producer - VirtualDisplaySurface has a BufferQueue for producing scratch buffers when doing mixed composition for a virtual display. - Connect/disconnect the producer end of this BufferQueue in the VirtualDisplaySurface constructor/destructor to avoid using it in a disconnected state. Bug 24733179 Change-Id: I87dab9ff4f46d422b7796670b0b4d17b7fd09165
isplayHardware/VirtualDisplaySurface.cpp
|
567dbbb6dd42be5013fcde0dadb3316d85f2fa0d |
27-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: get rid of async in producer interface - Get rid of the async flag in dequeueBuffer, allocateBuffers, waitForFreeSlotThenRelock, and QueueBufferInput. - Instead use the persistent flags mDequeueBufferCannotBlock and mAsyncMode to determine whether to use the async behavior. Bug 13174928 Change-Id: Ie6f7b9e46ee3844ee77b102003c84dddf1bcafdd
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
48d1d1fc902543ea16e5826a4739346714691d8c |
23-Sep-2015 |
Sergio Giro <sgiro@google.com> |
am f1519eeb: am 64b83133: Merge "Remove usage of SharedBuffer" * commit 'f1519eeb21ee03a956d973545f9f0f742727faaa': Remove usage of SharedBuffer
|
f1519eeb21ee03a956d973545f9f0f742727faaa |
23-Sep-2015 |
Sergio Giro <sgiro@google.com> |
am 64b83133: Merge "Remove usage of SharedBuffer" * commit '64b83133d5ec40828a10e57cfbb37c642bb7f510': Remove usage of SharedBuffer
|
c652d17c96c527c6eea8ae8b4c2a8b6ab7d57f5d |
22-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "BQ: Prevent operations on disconnected BQs"
|
6fa74696e50a2f1e8d43955a850a1a61b42089ad |
21-Sep-2015 |
Tom Cherry <tomcherry@google.com> |
am 9ec97471: add system-background cpuset * commit '9ec97471638fb98f5266826e4242e301e5dffc76': add system-background cpuset
|
9ec97471638fb98f5266826e4242e301e5dffc76 |
21-Sep-2015 |
Tom Cherry <tomcherry@google.com> |
add system-background cpuset add a new cpuset for system services that should not run on larger cores bug 24144797 Change-Id: I4f3cd34711b7ffcd2ef45ef2a3cd4642d0ef34c5
urfaceflinger.rc
|
f53f3c80bf2dcf6c1b70320765f9fc8019b829a2 |
11-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Remove usage of SharedBuffer - Remove getSharedBuffer() from Region - Don't use SharedBuffer for memory management in HWCLayerVersion1, instead keep shallow copies of the Regions. Bug 23962051 (cherry picked from commit d814cf2a3e3a2fdb73efa80539fe8af0a93da1db) Change-Id: I8fa17beed57936648c7b4defc9219dff1d5b337f
isplayHardware/HWComposer.cpp
|
583b1b32191992d6ada58b3c61c71932a71c0c4b |
04-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: Prevent operations on disconnected BQs - Update unit tests to match Bug 23763412 Change-Id: I77e59bf6b57b328433c3835450455f80a8fa454b
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
643a34c3b4dcacf3303ec33b590ca9067e475169 |
18-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "SF: Improve surface flinger unit tests"
|
ff12cba77b5b88f3978070bb970d7721225271ee |
16-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "BQ: Modify consumer buffer count interfaces"
|
e1b63cc6d4e92b95d9d5e504035a44e3cb40b722 |
14-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "Remove usage of SharedBuffer"
|
4aa427b964f22e3cf10381f8fc27e7042c322b9c |
14-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "native: Rename mBuf to mSlot"
|
d814cf2a3e3a2fdb73efa80539fe8af0a93da1db |
11-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Remove usage of SharedBuffer - Remove getSharedBuffer() from Region - Don't use SharedBuffer for memory management in HWCLayerVersion1, instead keep shallow copies of the Regions. Bug 23962051 Change-Id: I8fa17beed57936648c7b4defc9219dff1d5b337f
isplayHardware/HWComposer.cpp
|
5e4fcbe411f0a941d604d8a9974a02faa3fda170 |
02-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
SF: Improve surface flinger unit tests - Fix compiler warnings - Make checkPixel print out the actual/expected values on failure - Add unit tests for setLayerStack, setFlags, and setMatrix - Make the tests work when the display is off Change-Id: I53ac1279b967fe06ff8cdb10d3ee4c0e2349b2d0
ests/Transaction_test.cpp
|
71b2947cfd1be2795a2e1313f4b799c5588c3430 |
04-Sep-2015 |
Dan Stoza <stoza@google.com> |
am afdbddbe: am e5ce0db8: am f090d598: am 3e4c8ccc: Merge "SF: Add colorTransform to DisplayInfo" into mnc-dr-dev * commit 'afdbddbef57b3ffafa5b6a2107f37fda06dec9d4': SF: Add colorTransform to DisplayInfo
|
afdbddbef57b3ffafa5b6a2107f37fda06dec9d4 |
04-Sep-2015 |
Dan Stoza <stoza@google.com> |
am e5ce0db8: am f090d598: am 3e4c8ccc: Merge "SF: Add colorTransform to DisplayInfo" into mnc-dr-dev * commit 'e5ce0db83355bd2c8f3d265e3e254c22c6a61cd4': SF: Add colorTransform to DisplayInfo
|
19e3e06e3c65a7c001a6fe0971744ba5ff536515 |
20-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: Modify consumer buffer count interfaces - Rename setDefaultMaxBufferCount() to setMaxBufferCount(). Modify it to be hard maximum on the number of buffers that can't be overwritten by the producer. - Enforce the maximum buffer count in setMaxAcquiredBufferCount(), setMaxDequeuedBufferCount(), and setAsyncMode(). - Remove mOverrideMaxBufferCount as it's no longer needed since overriding is no longer possible. - Expose setMaxAcquiredBufferCount() in GLConsumer. - Remove disableAsyncBuffer(), it was only being used for single buffer mode. Single buffer mode is now achievable with setMaxBufferCount(). Bug 13174928 Change-Id: Ia33799f42751272a711fbd8559f7602ce9f18e4f
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
|
f2699fc3a8c12b2bf95120c068801e050168bd96 |
31-Aug-2015 |
Dan Stoza <stoza@google.com> |
SF: Add colorTransform to DisplayInfo Adds the colorTransform field, which defines a vendor-specific color transform (e.g., wide gamut, sRGB, etc.) to the DisplayInfo class, and populates it from the HWC interface. Bug: 20853317 Change-Id: I153edc36a361407656f3eb5082b96c2da2ecbec7
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
a4820004000d41e8a9680db27013856cc18badf2 |
29-Aug-2015 |
Elliott Hughes <enh@google.com> |
am 2fcd675b: am e9a779bf: am 1159b181: Merge "ignore SIGPIPE signal in native services" * commit '2fcd675b40ad9c94c1ff9506cdea63a48a81c9d6': ignore SIGPIPE signal in native services
|
2fcd675b40ad9c94c1ff9506cdea63a48a81c9d6 |
29-Aug-2015 |
Elliott Hughes <enh@google.com> |
am e9a779bf: am 1159b181: Merge "ignore SIGPIPE signal in native services" * commit 'e9a779bf5367ead7ddbd532828d8027a34b4748c': ignore SIGPIPE signal in native services
|
e9a779bf5367ead7ddbd532828d8027a34b4748c |
29-Aug-2015 |
Elliott Hughes <enh@google.com> |
am 1159b181: Merge "ignore SIGPIPE signal in native services" * commit '1159b18177c7247884d7c90c11abfe5aae39cb34': ignore SIGPIPE signal in native services
|
0944691d68089c17d71641a55192fb2fe755ec92 |
28-Aug-2015 |
Young-Ho Cha <ganadist@gmail.com> |
ignore SIGPIPE signal in native services When run dump method via dumpsys command with invalid pipe fd, native services can crash with SIGPIPE. So ignore SIGPIPE signal. Bug: https://code.google.com/p/android/issues/detail?id=184099 Change-Id: Icb15e0dff34a245c08c1b4c4bed51992ae382da4 Signed-off-by: Young-Ho Cha <ganadist@gmail.com>
ain_surfaceflinger.cpp
|
e5b755a045f4203fdd989047441259893c6fbe2d |
14-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: Get rid of setBufferCount - Remove setBufferCount from BufferQueueProducer and IGraphicsBufferQueueProducer. - Get rid of the unit tests for it. - In Surface, convert setBufferCount calls into calls to setMaxDequeuedBufferCount. - Change mOverrideMaxBufferCount to a boolean since it can now be derived from mMaxAcquiredBufferCount, mMaxDequeuedBufferCount, and mAsyncMode. Bug 13174928 Change-Id: Ia0adc737fae9e13f186df832b8428a0829041bf9
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
fa455354557f6283ff3a7d76979e52fd251c155f |
13-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
BQ: add setMaxDequeuedBufferCount Adds the new setMaxDequeuedBufferCount() function to BufferQueueProducer. This will eventually replace setBufferCount. Also add setAsyncMode. Bug 13174928 Change-Id: Iea1adcd5d74a75f67d8e9dde06d521695628ad5a
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
c64e24d611bbfdcdc4a923da5e14fabf3b392210 |
21-Aug-2015 |
Tom Cherry <tomcherry@google.com> |
am 1380c848: am 32592270: am 64e13880: Merge "bundle init.rc contents with its service" * commit '1380c8488e6bb57b7af21b3d189ae0fc941085b3': bundle init.rc contents with its service
|
1380c8488e6bb57b7af21b3d189ae0fc941085b3 |
21-Aug-2015 |
Tom Cherry <tomcherry@google.com> |
am 32592270: am 64e13880: Merge "bundle init.rc contents with its service" * commit '32592270d40d6060e19aa97949aee72c8aca0807': bundle init.rc contents with its service
|
a1f3f54c2752b4108f3b21baea6d5fd73738cbff |
21-Aug-2015 |
Tom Cherry <tomcherry@google.com> |
am 32592270: am 64e13880: Merge "bundle init.rc contents with its service" * commit '32592270d40d6060e19aa97949aee72c8aca0807': bundle init.rc contents with its service
|
74155996d931edbd19ed5b3f71a58ceff920b451 |
14-Aug-2015 |
Tom Cherry <tomcherry@google.com> |
bundle init.rc contents with its service Bug: 23186545 Change-Id: I2a70a39122b146d5bbc9b55156e769782e011bff
ndroid.mk
urfaceflinger.rc
|
47650f4f66a49e1815ad08ca4fb12a661d133abc |
05-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
native: Rename mBuf to mSlot Remove the union in BufferItem. Bug: 19769719 Change-Id: I4e496b5aafce0fc5206dc7551a741f9c262c2cd0
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
urfaceFlingerConsumer.cpp
|
29370d3bd744209a5cd6cb6384139486c3405f75 |
06-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
Merge "libgui/SF: Fix some code warnings"
|
53390e1e8c33ebee5bb8100e846f5263ba05ff73 |
04-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
libgui/SF: Fix some code warnings A couple of fixes to satisfy the Eclipse static code analysis tool. - Initialize all members in constructors - Remove unused forward declarations - Add parentheses when combining logical and bitwise operators - Fix a case statement with no break (it was intentional) Change-Id: Icecb8cc98c6f58b97ab33fffb621f0edc33a7d3c
lient.cpp
isplayHardware/FloatRect.h
essageQueue.cpp
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
47b11d38b3ce686bf5feeccb5e151f4542a7c301 |
05-Aug-2015 |
Dan Stoza <stoza@google.com> |
am bc120be8: am 2121b937: am 04eeb288: am 50be1df7: Merge "SF: Track missed frames and optionally drop them" into mnc-dr-dev * commit 'bc120be8d7ff639408048fc3f105abd0aa6cfbe2': SF: Track missed frames and optionally drop them
|
50be1df76e2c84fc3c893ec3d3e51ba427dd3ee6 |
05-Aug-2015 |
Dan Stoza <stoza@google.com> |
Merge "SF: Track missed frames and optionally drop them" into mnc-dr-dev
|
f74096ac09d83a8586579a4beda5afe1d3a25048 |
01-Aug-2015 |
Yusuke Sato <yusukes@google.com> |
Merge "Record an event log when service.bootanim.exit is set"
|
0a688f5005b512b96d676a7fa6e23be9132a492c |
31-Jul-2015 |
Yusuke Sato <yusukes@google.com> |
Record an event log when service.bootanim.exit is set to track (user-perceived) OS boot performance. Bug: 21331462 Change-Id: I54200c9a3bfce1edfd8cbdf05d850bdf199f48f2
ventLog/EventLogTags.logtags
urfaceFlinger.cpp
|
a0cdaefef2ac5ac2fea4e6f44ef10c3008b67fdc |
31-Jul-2015 |
Dan Stoza <stoza@google.com> |
am 744a09eb: am f36738d3: am dca480ff: am 03d7e301: am d87defaf: SF: Allow present if sideband stream changed * commit '744a09eb968929f9a2f339783d13ed2fbc8f6e45': SF: Allow present if sideband stream changed
|
03d7e301c8beb971df7b560d1f16503ba3d6f440 |
31-Jul-2015 |
Dan Stoza <stoza@google.com> |
am d87defaf: SF: Allow present if sideband stream changed * commit 'd87defaf486ff4e9c0066754564851cfb7be49ed': SF: Allow present if sideband stream changed
|
d87defaf486ff4e9c0066754564851cfb7be49ed |
30-Jul-2015 |
Dan Stoza <stoza@google.com> |
SF: Allow present if sideband stream changed Allows the sideband layer to be passed all the way to HWC instead of getting blocked by the updated PTS tracking code. Bug: 22291067 Change-Id: Ic2f20a7528e276fff054e86ca35789c26873b348
ayer.cpp
|
d575096d797628d7b39417fef23b78ca6e035d1a |
28-Jul-2015 |
Haixia Shi <hshi@google.com> |
Add more SF tests to Transaction_test TEST=verify all tests pass on hammerhead-eng BUG=none Change-Id: Idb4df0996ac4ebbef3784ee86bd43c584d62cf1f
ests/Transaction_test.cpp
|
14cd37cf3d7d783eaeb4cfb5f1f9e712d3b49578 |
09-Jul-2015 |
Dan Stoza <stoza@google.com> |
SF: Track missed frames and optionally drop them Adds code to track whether SurfaceFlinger has sent two frames to HWC in the same vsync window. This can occur if one frame is delayed so far it slips into the next window or just if one frame takes an abnormal amount of time. If this occurs, it shows up as FrameMissed in systrace. Also adds a property debug.sf.drop_missed_frames which, if set, tells SurfaceFlinger to skip sending a frame to HWC (i.e., calling prepare/set) when we detect this condition, which can help prevent backpressure from the HWC implementation. Bug: 22513558 Change-Id: I2df0d44cec5fd6edba419388d8c90b5710d1a5b6
urfaceFlinger.cpp
urfaceFlinger.h
|
7ca5a395ec3e6035e04e6bd8b17576ed879d9c79 |
21-Jul-2015 |
Haixia Shi <hshi@google.com> |
Delete outdated SurfaceFlinger tests. These tests either do not build or no longer make sense. We should probably write some new tests. BUG=18138368 Change-Id: I4cc2681ca65e7af1f6bbf921f02a13cd6993581c
ests/resize/Android.mk
ests/resize/resize.cpp
ests/screencap/Android.mk
ests/screencap/screencap.cpp
ests/transform/Android.mk
ests/transform/TransformTest.cpp
|
8dfd1da50d5f09ded74774745ee092e4bcd3ff5d |
20-Jul-2015 |
Haixia Shi <hshi@google.com> |
Fix build errors in test-resize. This is one of the SurfaceFlinger tests that doesn't build on TOT. BUG=18138368 Change-Id: I338867c3b80afd6d5ede462a72566b04280c7964
ests/resize/Android.mk
ests/resize/resize.cpp
|
f37143d8a55afc6481d31de1c6f8e8db9578ef1d |
09-Jul-2015 |
Michael Wright <michaelwr@google.com> |
Merge "Cancel touches as well as pointer gestures." into mnc-dev
|
ae6ae043fb87301610d521b0a6a1ab74fb8db2f6 |
07-Jul-2015 |
Dan Stoza <stoza@google.com> |
am 0eb2d398: SF: Ignore PTS more than one second in the future * commit '0eb2d398669bf11207c0fb22b11439250da0c8dc': SF: Ignore PTS more than one second in the future
|
0eb2d398669bf11207c0fb22b11439250da0c8dc |
06-Jul-2015 |
Dan Stoza <stoza@google.com> |
SF: Ignore PTS more than one second in the future Some of this logic already existed, but when we optimized SurfaceFlinger to avoid unnecessary wake-ups, we didn't carry the logic over into the new readiness test. shouldPresentNow now returns true if the timestamp is more than a second in the future (since it's likely a bogus timestamp and should be ignored). Bug: 21932760 Change-Id: Ib50970a4eb621588c0b60766c8d8d1a8bddf853b
ayer.cpp
|
6a25a2872852f23058268adcec61600460fcdfb6 |
30-Jun-2015 |
Dan Stoza <stoza@google.com> |
am 806334aa: am 1998615f: Merge "sf: Initialize EventThread before creating HWC" * commit '806334aacd089d1c419ed77021a2b1bb4f7644ef': sf: Initialize EventThread before creating HWC
|
db4850c01ff02bf7f936aa427e1fa8af9abc8f22 |
26-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Fix handling of rotated surface damage Incoming surface damage was not aware that the EGL implementation was rotating buffers in response to SurfaceFlinger's transform hint. This didn't affect all cases because the effect was to apply a 90 degree rotation instead of a 270 degree rotation. For full-screen updates, things more or less worked, but in other cases this caused corruption. This fixes that by correctly undoing the effect of rotated buffers on the incoming surface damage, and then passing that damage down untouched to HWC. Bug: 22068334 Change-Id: I226ecfc7a91fe2e16edd2aa6d9149f0d26b529d6
ayer.cpp
|
231160866738f6ed2175701f300fed1a8e8e02b0 |
18-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui/SF: Propagate SECURE Layer flag changes This allows changes to the SECURE flag to propagate down to Layers in SurfaceFlinger so that WindowManager can change it on the fly in response to device policy updates. Bug: 20934462 Change-Id: I558f6d22c6273be373f1f480365e42536af18a33
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
f9481058101c4e2b38c74048feac383664691d03 |
16-Jun-2015 |
Saurabh Shah <saurshah@codeaurora.org> |
sf: Initialize EventThread before creating HWC Once HWC is created, it could use any of the provided hooks, which could lead to a crash if the EventThread (handler) isn't initialized prior to creating HWC. Change-Id: I5ea35fe9bcb150fb74aae1295b798bd787ad6cee
urfaceFlinger.cpp
|
dc340ddb64d5a12cbe27b26991aed315edc92b28 |
19-Nov-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
surfaceflinger: Set max acquired buffer count If triple framebuffers are enabled, the number of acquired buffers isn't increased by default. Set the count to one less than the max buffers to make sure all three buffers come into play. Change-Id: I8fae1b5564fbea598e415a86b0a21c3449c92d87
isplayHardware/FramebufferSurface.cpp
|
e04e4edcd1a852058775caa34cf73e2c20dc1066 |
11-Jun-2015 |
Manoj Kumar AVM <manojavm@codeaurora.org> |
sf: Fix incorrect state reporting in dumpsys Dumpsys utility accesses layer compositionType variable with out proper protection. These variables are modified during hwc_prepare call. Existing HAL lock protection is not sufficient to address this issue. Failure to do this will result in incorrect state reporting in dumpsys. A new displayLock mutex in HWComposer will be used in both dumpsys and draw calls to ensure correct state is accessed. Change-Id: I8a57de59525adc0e089b3bed95c067c01e42b666 (cherry picked from commit e54506b81a3b81683056ad48294e37d6b4b4e36b)
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
e54506b81a3b81683056ad48294e37d6b4b4e36b |
11-Jun-2015 |
Manoj Kumar AVM <manojavm@codeaurora.org> |
sf: Fix incorrect state reporting in dumpsys Dumpsys utility accesses layer compositionType variable with out proper protection. These variables are modified during hwc_prepare call. Existing HAL lock protection is not sufficient to address this issue. Failure to do this will result in incorrect state reporting in dumpsys. A new displayLock mutex in HWComposer will be used in both dumpsys and draw calls to ensure correct state is accessed. Change-Id: I8a57de59525adc0e089b3bed95c067c01e42b666
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
40da48bfdf5d2d199aac55891d2f37822cdbee88 |
30-Oct-2014 |
Tatenda Chipeperekwa <tatendac@codeaurora.org> |
sf: Add a NULL check in getDisplayConfigs Validate the display binder by adding a NULL check in getDisplayConfigs. This will prevent a false match if the caller queries the display configs for an inactive display (whose binder is NULL by default). Without this change we might end up attempting to index the display config array, which is unpopulated for inactive displays, and this will result in a crash. (See getDisplayInfo in SurfaceComposerClient.cpp for an example of this scenario) Change-Id: Ib32a7dc8378d3438df0dba1ecd608bbcfc837717
urfaceFlinger.cpp
|
23e16bb5dae277cd20a739ca56553ae931c43ccf |
30-Oct-2014 |
Tatenda Chipeperekwa <tatendac@codeaurora.org> |
sf: Add a NULL check in getDisplayConfigs Validate the display binder by adding a NULL check in getDisplayConfigs. This will prevent a false match if the caller queries the display configs for an inactive display (whose binder is NULL by default). Without this change we might end up attempting to index the display config array, which is unpopulated for inactive displays, and this will result in a crash. (See getDisplayInfo in SurfaceComposerClient.cpp for an example of this scenario) Change-Id: I1a12f43b7c375b9c01998dadd5b658275c733fb2 (cherry picked from commit ac71c26e9180d9d181be5ec9e45da72d39144a8b)
urfaceFlinger.cpp
|
65dc7eeff096c3b909d7932c8a94e61c31f76831 |
10-Jun-2015 |
Dan Stoza <stoza@google.com> |
SF: Swap w/h when capturing rotated screenshots Swaps width and height when capturing a screenshot that is rotated by 90 or 270 degrees. Bug: 8433742 Change-Id: Ibf0b604f541e3cc271e56fe0ad04dc366beb5d79 (cherry picked from commit 3502416204d9dbd905012ee586d8bd145323809f)
urfaceFlinger.cpp
|
3502416204d9dbd905012ee586d8bd145323809f |
10-Jun-2015 |
Dan Stoza <stoza@google.com> |
SF: Swap w/h when capturing rotated screenshots Swaps width and height when capturing a screenshot that is rotated by 90 or 270 degrees. Bug: 8433742 Change-Id: Ibf0b604f541e3cc271e56fe0ad04dc366beb5d79
urfaceFlinger.cpp
|
074a13a3cb7507d8fe783441e879cff2671a23f1 |
05-Jun-2015 |
Dan Stoza <stoza@google.com> |
SF: Don't crop surface damage against viewport Apply the display transform to surface damage, but don't intersect it with the viewport. Bug: 21486007 Change-Id: I94e697cea52096a960385d5f3b89609fdcf30a02 (cherry picked from commit 17833a1b0d70cd5cea342cadea9fdbbf16748bc6)
ayer.cpp
|
53a2e97a78a2a567a17b44feaebbe57a28aa8a56 |
08-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui/SurfaceFlinger: Add getConsumerName Adds a getConsumerName method to IGraphicBufferProducer and Surface. Currently, the name is cached inside of IGBP and is update on connect and dequeueBuffer, which should be good enough for most uses. Bug: 6667401 Change-Id: I22c7881d778e495cf8276de7bbcd769e52429915 (cherry picked from commit c6f30bdee1f634eb90d68cb76efe935b6535a1e8)
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
993772a60ac43e458f16b08c27e1f97dcfcfe3e1 |
03-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add generation numbers to BufferQueue This change allows producers to set a generation number on a BufferQueue. This number will be embedded in any new GraphicBuffers created in that BufferQueue, and attempts to attach buffers which have a different generation number will fail. It also plumbs the setGenerationNumber method through Surface, with the additional effect that any buffers attached to the Surface after setting a new generation number will automatically be updated with the new number (as opposed to failing, as would happen on through IGBP). Bug: 20923096 Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2 (cherry picked from commit 812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2)
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
c6f30bdee1f634eb90d68cb76efe935b6535a1e8 |
08-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui/SurfaceFlinger: Add getConsumerName Adds a getConsumerName method to IGraphicBufferProducer and Surface. Currently, the name is cached inside of IGBP and is update on connect and dequeueBuffer, which should be good enough for most uses. Bug: 6667401 Change-Id: I22c7881d778e495cf8276de7bbcd769e52429915
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
9d2c5a7c678bd384df0fb29952cf8943e7b1b160 |
05-Jun-2015 |
Dan Stoza <stoza@google.com> |
Merge "libgui: Add generation numbers to BufferQueue" into mnc-dev
|
17833a1b0d70cd5cea342cadea9fdbbf16748bc6 |
05-Jun-2015 |
Dan Stoza <stoza@google.com> |
SF: Don't crop surface damage against viewport Apply the display transform to surface damage, but don't intersect it with the viewport. Bug: 21486007 Change-Id: I94e697cea52096a960385d5f3b89609fdcf30a02
ayer.cpp
|
812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2 |
03-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add generation numbers to BufferQueue This change allows producers to set a generation number on a BufferQueue. This number will be embedded in any new GraphicBuffers created in that BufferQueue, and attempts to attach buffers which have a different generation number will fail. It also plumbs the setGenerationNumber method through Surface, with the additional effect that any buffers attached to the Surface after setting a new generation number will automatically be updated with the new number (as opposed to failing, as would happen on through IGBP). Bug: 20923096 Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
ef78916d86fa60e08a6358af4b0b1f6bd0134164 |
29-May-2015 |
Dan Stoza <stoza@google.com> |
SF: Reduce resync samples without present Reduces the number of resync samples that DispSync will attempt to collect without an intervening present from 12 to 4. The former value was causing excessive power draw for some vendors' implementations, and reducing it doesn't seem to harm anything. Bug: 20724456 Change-Id: Ifd6e0490be67756ed001d509a38e8a36953b4618 (cherry picked from commit 9c64757f6530a0510f15f8bd75b1925a3001f83a)
ispSync.h
|
9c64757f6530a0510f15f8bd75b1925a3001f83a |
29-May-2015 |
Dan Stoza <stoza@google.com> |
SF: Reduce resync samples without present Reduces the number of resync samples that DispSync will attempt to collect without an intervening present from 12 to 4. The former value was causing excessive power draw for some vendors' implementations, and reducing it doesn't seem to harm anything. Bug: 20724456 Change-Id: Ifd6e0490be67756ed001d509a38e8a36953b4618
ispSync.h
|
42ace4b5c638d19ed71439d666bca1601a1311c1 |
28-May-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Tweak whitespace in DdmConnection Change-Id: I99e7b09e4bc3611ffb790eddfbb9b3c8b9bc5d4c
dmConnection.cpp
|
8b04725f1426d7543b5f38283ee53c95f071a7bc |
11-Apr-2015 |
Jeff Brown <jeffbrown@google.com> |
Bypass surface flinger permission check for calls from system. Early during the boot, before activity manager is ready to handle permission checks, the system needs to be able to change the display state. Added a hardcoded exemption for AID_SYSTEM (which already has permission to talk to surface flinger anyhow). Bug: 19029490 Change-Id: I6222edcab8e394e5fb6adf7a982be446e4505a1e (cherry picked from commit 3bfe51d7901e99e7f122f76ed2708e2b67b71cf9)
lient.cpp
urfaceFlinger.cpp
|
ae569747b632c2e04bddced4db969b11b5d72612 |
03-May-2015 |
Ajay Dudani <adudani@codeaurora.org> |
surfaceflinger: Fix range check for getFormat Fix potential buffer overflow error in getFormat with indices greater than MAX_HWC_DISPLAYS. Change-Id: I5e5b69d8d043e900f5e33ca9a62e94ae5f857b68 (cherry picked from commit 4e3e30c2d5a2a6f7dc4ee8696b1ac2a52dffd5dc)
isplayHardware/HWComposer.cpp
|
8e8eba5091de03d33d667ce1e6ba5fe7072926ba |
21-Oct-2014 |
Dan Stoza <stoza@google.com> |
SF: Skip render-to-texture for color transforms In cases where SurfaceFlinger is applying a color matrix (usually for accessibility features), we previously would perform a render-to- texture for the initial composition, and then apply the matrix during a copy to the framebuffer. This changes that behavior to just apply the matrix during composition without a render-to-texture pass. This may result in a perceived change of the image in cases with alpha blending, since the blending is performed at a different stage of the pipeline and the system effectively performs non-linear blends. However, neither this nor the prior render-to-texture pass is strictly correct in that regard, and this approach is less error-prone and likely faster. Change-Id: I2110ff0374f61d76df7b087dde8a1ed98990440c (cherry picked from commit f008799d3753e52c10849824ff8146985ea66284)
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
|
d74ba85c6f13bc1634ab1ae3c6c82d0fc837eb94 |
13-May-2015 |
Michael Lentine <mlentine@google.com> |
Add hotplug support for primary display. When the primary is connected/disconnected on tv devices HWComposer updates it's display parameters but doesn't destroy or recreate the display. Bug: 18698244 Change-Id: I759c8f75d3e3a7462b85eb51973fb5072b71a702 (cherry picked from commit 10613dc3b565e95d3d5f459ec70fd2f6a77f807a)
isplayHardware/HWComposer.cpp
|
b64d87515212d795405c6b3622dd365202eb4c39 |
21-May-2015 |
Michael Lentine <mlentine@google.com> |
Fix surfaceflinger tests. Update the screenshot code and add correct return values to surface flinger's capturescreenshot function. Buf: 18138368 Change-Id: Ieb42d289088589f941502fbd69da7aa939265e07 (cherry picked from commit 5a16a62950de06d48769e29f0c68a154ed7a7a89)
urfaceFlinger.cpp
ests/Transaction_test.cpp
|
f008799d3753e52c10849824ff8146985ea66284 |
21-Oct-2014 |
Dan Stoza <stoza@google.com> |
SF: Skip render-to-texture for color transforms In cases where SurfaceFlinger is applying a color matrix (usually for accessibility features), we previously would perform a render-to- texture for the initial composition, and then apply the matrix during a copy to the framebuffer. This changes that behavior to just apply the matrix during composition without a render-to-texture pass. This may result in a perceived change of the image in cases with alpha blending, since the blending is performed at a different stage of the pipeline and the system effectively performs non-linear blends. However, neither this nor the prior render-to-texture pass is strictly correct in that regard, and this approach is less error-prone and likely faster. Change-Id: I2110ff0374f61d76df7b087dde8a1ed98990440c
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
|
10613dc3b565e95d3d5f459ec70fd2f6a77f807a |
13-May-2015 |
Michael Lentine <mlentine@google.com> |
Add hotplug support for primary display. When the primary is connected/disconnected on tv devices HWComposer updates it's display parameters but doesn't destroy or recreate the display. Bug: 18698244 Change-Id: I759c8f75d3e3a7462b85eb51973fb5072b71a702
isplayHardware/HWComposer.cpp
|
5a16a62950de06d48769e29f0c68a154ed7a7a89 |
21-May-2015 |
Michael Lentine <mlentine@google.com> |
Fix surfaceflinger tests. Update the screenshot code and add correct return values to surface flinger's capturescreenshot function. Buf: 18138368 Change-Id: Ieb42d289088589f941502fbd69da7aa939265e07
urfaceFlinger.cpp
ests/Transaction_test.cpp
|
59bfd2bbed9576ecdfc01720ca47215c47d7475a |
14-May-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Handle EGL errors more cleanly Adds some more safety checking for cases where we get an error while trying to create the EGLImage. The checking puts the Layer into a failed state after detecting an error, since the shadow queue may no longer be synchronized. Bug: 20957332 Change-Id: I68b4c40eab3e58731b875ed5752f2c7d17f14bcb (cherry picked from commit 65476f3332641066a99e22338bf5cf49ce4af642)
ayer.cpp
ayer.h
|
65476f3332641066a99e22338bf5cf49ce4af642 |
14-May-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Handle EGL errors more cleanly Adds some more safety checking for cases where we get an error while trying to create the EGLImage. The checking puts the Layer into a failed state after detecting an error, since the shadow queue may no longer be synchronized. Bug: 20957332 Change-Id: I68b4c40eab3e58731b875ed5752f2c7d17f14bcb
ayer.cpp
ayer.h
|
e64a79cd8525d502723feea2190d2a85450194ee |
12-May-2015 |
Dan Stoza <stoza@google.com> |
Fix PTS handling for buffer replacement This changes the way that SurfaceFlinger's shadow buffer management works such that instead of tracking the size of the shadow queue in the BufferQueue, SF tracks the last frame number it has seen, and passes that into the acquireBuffer call. BufferQueueConsumer then ensures that it never returns a buffer newer than that frame number, even if that means that it must return PRESENT_LATER for an otherwise valid buffer. Change-Id: I3fcb45f683ed660c3f18a8b85ae1f8a962ba6f0e (cherry picked from commit a4650a50a0b35e9e4342d6600b6eb24fd94bb8e5)
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
a4650a50a0b35e9e4342d6600b6eb24fd94bb8e5 |
12-May-2015 |
Dan Stoza <stoza@google.com> |
Fix PTS handling for buffer replacement This changes the way that SurfaceFlinger's shadow buffer management works such that instead of tracking the size of the shadow queue in the BufferQueue, SF tracks the last frame number it has seen, and passes that into the acquireBuffer call. BufferQueueConsumer then ensures that it never returns a buffer newer than that frame number, even if that means that it must return PRESENT_LATER for an otherwise valid buffer. Change-Id: I3fcb45f683ed660c3f18a8b85ae1f8a962ba6f0e
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
a3b66932727503943b1c59e1846af60e0d95afa6 |
12-May-2015 |
Dan Stoza <stoza@google.com> |
libgui: Hook up onFrameReplaced This completes the plumbing from ConsumerListener::onFrameReplaced into SurfaceFlinger (and other consumers that may care). Change-Id: I376e78ace95d6748e8662e6b4d47c0dfa697a300 (cherry picked from commit dc13c5b85b099050c73297a19f1ef89308f7620b)
ayer.h
|
dc13c5b85b099050c73297a19f1ef89308f7620b |
12-May-2015 |
Dan Stoza <stoza@google.com> |
libgui: Hook up onFrameReplaced This completes the plumbing from ConsumerListener::onFrameReplaced into SurfaceFlinger (and other consumers that may care). Change-Id: I376e78ace95d6748e8662e6b4d47c0dfa697a300
ayer.h
|
98a13a1475682870f5121446f9c80aa18855c884 |
08-May-2015 |
Dan Stoza <stoza@google.com> |
Merge "SF: Apply pending transactions to new sidebands" into mnc-dev
|
4e3e30c2d5a2a6f7dc4ee8696b1ac2a52dffd5dc |
03-May-2015 |
Ajay Dudani <adudani@codeaurora.org> |
surfaceflinger: Fix range check for getFormat Fix potential buffer overflow error in getFormat with indices greater than MAX_HWC_DISPLAYS. Change-Id: I5e5b69d8d043e900f5e33ca9a62e94ae5f857b68
isplayHardware/HWComposer.cpp
|
12e0a27aa30d9db10eafe88904d3eb8fdcbcfa71 |
05-May-2015 |
Dan Stoza <stoza@google.com> |
SF: Apply pending transactions to new sidebands When a Layer's sideband stream is set, apply any pending transactions. Otherwise they would never be applied since sideband streams don't trigger updates by pushing new buffers. Bug: 20125898 Change-Id: I0c7a91cdf84e6205801f4ab64eee0b09e4c0b3e0 (cherry picked from commit 3b04e1383eca6cb1d43ebe23a421c427007690c7)
ayer.cpp
|
8afb76731a2bcb6455bf1da8e94c6267994ef1e2 |
05-May-2015 |
Dan Stoza <stoza@google.com> |
SF: Apply pending transactions to new sidebands When a Layer's sideband stream is set, apply any pending transactions. Otherwise they would never be applied since sideband streams don't trigger updates by pushing new buffers. Bug: 20125898 Change-Id: I0c7a91cdf84e6205801f4ab64eee0b09e4c0b3e0 (cherry picked from commit 3b04e1383eca6cb1d43ebe23a421c427007690c7)
ayer.cpp
|
bb58111c22b41f605a8edb6599fd3df42f6d8e4e |
01-May-2015 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Fix PTS on stale buffers"
|
ecc504043fddb7a75042ce402c67aedfac04d5e2 |
28-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix PTS on stale buffers SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was getting out of sync for a few reasons. This change fixes these by doing the following: - Adds a check to re-synchronize the shadow copy every time we successfully acquire a buffer by first dropping stale buffers before removing the current buffer. - Avoids trying to perform updates for buffers which have been rejected (for incorrect dimensions) by SurfaceFlinger. - Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the consumer to notify the BufferQueue that it is maintaining a shadow copy of the queue and prevents it from dropping so many buffers during acquireBuffer that it ends up returning a buffer for which the consumer has not yet received an onFrameAvailable call. Bug: 20096136 Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f (cherry picked from commit 2e36f2283f48ab764b496490c73a132acf21df3a)
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
2e36f2283f48ab764b496490c73a132acf21df3a |
28-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix PTS on stale buffers SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was getting out of sync for a few reasons. This change fixes these by doing the following: - Adds a check to re-synchronize the shadow copy every time we successfully acquire a buffer by first dropping stale buffers before removing the current buffer. - Avoids trying to perform updates for buffers which have been rejected (for incorrect dimensions) by SurfaceFlinger. - Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the consumer to notify the BufferQueue that it is maintaining a shadow copy of the queue and prevents it from dropping so many buffers during acquireBuffer that it ends up returning a buffer for which the consumer has not yet received an onFrameAvailable call. Bug: 20096136 Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
7b2fc930077b1e6ca5946cae6834902318209474 |
01-May-2015 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Limit to 4k Layers" into mnc-dev
|
7d89d06a6fe1bfadfe277f19dbb7e4aa021444e0 |
30-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Limit to 4k Layers Sets a limit of 4k Layers which SurfaceFlinger will allow to be in existence at any given time. An attempt to create Layers in excess of this limit will fail with NO_MEMORY. Bug: 20674586 Change-Id: I2dfaf59643d826f982b2fa44e8a9ed643176d972 (cherry picked from commit e7f8dde3f3c398c1ea1bec14e76725a760f71d31)
urfaceFlinger.cpp
urfaceFlinger.h
|
32d4b6c8e122308a7ae296406f87a1df1b611a44 |
01-May-2015 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Limit to 4k Layers"
|
aa4041f70a4068a7ce9df8bea3cda8aaf94a62f6 |
29-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix integer overflow in Mesh ctor Performs range checking on the inputs to Mesh::Mesh() before allocating the storage array. Bug: 20674682 Change-Id: I4fc918a8c312d967dd6d9f91a098b2e0a7081027 (cherry picked from commit ab79e33ef3a21a2b14bf15bc4c85aef247b4ad95)
enderEngine/Mesh.cpp
|
676d10b2709059079823698cb6b16e71a97d6d8b |
30-Apr-2015 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Fix integer overflow in Mesh ctor"
|
e7f8dde3f3c398c1ea1bec14e76725a760f71d31 |
30-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Limit to 4k Layers Sets a limit of 4k Layers which SurfaceFlinger will allow to be in existence at any given time. An attempt to create Layers in excess of this limit will fail with NO_MEMORY. Bug: 20674586 Change-Id: I2dfaf59643d826f982b2fa44e8a9ed643176d972
urfaceFlinger.cpp
urfaceFlinger.h
|
ab79e33ef3a21a2b14bf15bc4c85aef247b4ad95 |
29-Apr-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix integer overflow in Mesh ctor Performs range checking on the inputs to Mesh::Mesh() before allocating the storage array. Bug: 20674682 Change-Id: I4fc918a8c312d967dd6d9f91a098b2e0a7081027
enderEngine/Mesh.cpp
|
ad84681d31a7561344f72fe1b4e682ebc7a2ff6b |
29-Apr-2015 |
Alan Viverette <alanv@google.com> |
Remove gamma correction from color correction shader Gamma correction was incorrectly skewing both color inversion and Daltonization, which resulted in washed-out colors. Bug: 20346301 Change-Id: I34d879f902c3be115b2d23f09c3ed3902799759e (cherry picked from commit 3acd9f1d8fdffc0ed0837ebbabcac0c4014015b3)
enderEngine/ProgramCache.cpp
|
3acd9f1d8fdffc0ed0837ebbabcac0c4014015b3 |
29-Apr-2015 |
Alan Viverette <alanv@google.com> |
Remove gamma correction from color correction shader Gamma correction was incorrectly skewing both color inversion and Daltonization, which resulted in washed-out colors. Bug: 20346301 Change-Id: I34d879f902c3be115b2d23f09c3ed3902799759e
enderEngine/ProgramCache.cpp
|
6febf6c150b47a8e9ec7d77d988c176fe89ccbf2 |
24-Apr-2015 |
Dan Stoza <stoza@google.com> |
am 5d10894c: am ef47c080: am 958f5011: Merge "libgui: Allow an IGBProducer to disable allocation" * commit '5d10894c9d547449cf231f02b736da9dfdebec11': libgui: Allow an IGBProducer to disable allocation
|
9de7293b0a1b01ebe6fb1ab4a498f144adc8029f |
17-Apr-2015 |
Dan Stoza <stoza@google.com> |
libgui: Allow an IGBProducer to disable allocation Adds a new method IGBP::allowAllocation, which controls whether dequeueBuffer is permitted to allocate a new buffer. If allocation is disallowed, dequeueBuffer will block or return an error as it normally would (as controlled by *ControlledByApp). If there are free buffers, but they are not of the correct dimensions, format, or usage, they may be freed if a more suitable buffer is not found first. Bug: 19801715 Change-Id: I0d604958b78b2fd775c2547690301423f9a52165
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
c7a3cd622846f8f29b46e4c5f5bcf14857d0f779 |
23-Apr-2015 |
Dan Stoza <stoza@google.com> |
am 423b40f7: am 368270fd: am de5c15b8: Merge "SF: Always perform sideband transactions" * commit '423b40f7bd004a8ab5bca887e3855cd20c6bcc28': SF: Always perform sideband transactions
|
9e9b0445544f11fdbf21a29601567af2d1819a30 |
22-Apr-2015 |
Dan Stoza <stoza@google.com> |
SF: Always perform sideband transactions On normal Layers, we defer applying resize transactions until a buffer of the correct size arrives. This breaks with sideband streams, because buffers are not seen by SurfaceFlinger. This change applies transactions immediately for Layers which have a sideband stream attached to avoid that problem. Bug: 20428254 Change-Id: I379d8aaef460d467cdf8432764b4a504928fb65a (cherry picked from commit c300b8b506536e1bf94ffd8a3b75d46e776923e0)
ayer.cpp
|
d5296b342e51bd41c9b1d26e98978d9b9ef23a89 |
16-Apr-2015 |
Dan Stoza <stoza@google.com> |
am 66dc4ee3: am b47584f4: am 2e398e64: Merge "SF: Permit changing DispSync offsets at runtime" * commit '66dc4ee3729c4e6fea624805a1e58843ce920477': SF: Permit changing DispSync offsets at runtime
|
91dea34652ff891192148b4062a80c2e8f0852ce |
15-Apr-2015 |
Dan Stoza <stoza@google.com> |
am 19f06de0: am 40b2a8b4: am e7d20eb0: Merge "SurfaceFlinger: Pass surface damage to HWC" * commit '19f06de0930e0f741ed113c37faf306fceee39bd': SurfaceFlinger: Pass surface damage to HWC
|
db4ac3ce63074f5602b46074ffeabfea4a14d032 |
14-Apr-2015 |
Dan Stoza <stoza@google.com> |
SF: Permit changing DispSync offsets at runtime This modifies EventThread such that its phase offsets for both Choreographer and SurfaceFlinger may be modified at runtime. It also plumbs this functionality up to the SurfaceFlinger debug interface so that it is possible to rapidly test different offsets without restarting the framework. Change-Id: I426873f8553f931250dfebc9a8a4a78e9f1f4309
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
|
ee44edd0acccbf5eaa918d75737c3b65ee04fff7 |
23-Mar-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Pass surface damage to HWC Passes the surface damage from the incoming SurfaceFlingerConsumer BufferQueue down to the hardware composer HAL interface, if the HWC version number is 1.5 or greater. Bug: 11239309 Change-Id: Ic4305210593874a8d6deba3319055b2b8c57e926
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
3bfe51d7901e99e7f122f76ed2708e2b67b71cf9 |
11-Apr-2015 |
Jeff Brown <jeffbrown@google.com> |
Bypass surface flinger permission check for calls from system. Early during the boot, before activity manager is ready to handle permission checks, the system needs to be able to change the display state. Added a hardcoded exemption for AID_SYSTEM (which already has permission to talk to surface flinger anyhow). Bug: 19029490 Change-Id: I6222edcab8e394e5fb6adf7a982be446e4505a1e
lient.cpp
urfaceFlinger.cpp
|
5b20fd0882e6a1754cad7342f7ceda3753e8f567 |
24-Mar-2015 |
Jesse Hall <jessehall@google.com> |
am 28c03cca: am c2a5b469: am a527c07b: Merge "Fix mistake using width instead of height." * commit '28c03cca9835957f6e304b18358243b184fa46f8': Fix mistake using width instead of height.
|
c2a5b469a311891d8e3025aea0e4b348044dfaeb |
24-Mar-2015 |
Jesse Hall <jessehall@google.com> |
am a527c07b: Merge "Fix mistake using width instead of height." * commit 'a527c07b8d078f7da1114b7055f65b479a148729': Fix mistake using width instead of height.
|
0e7497957a029fd123b429388d84bba2930fddef |
23-Mar-2015 |
Christopher Ferris <cferris@google.com> |
Fix mistake using width instead of height. Found by rodrigo.chiossi@intel.com. Change-Id: I49d590ed39f6b47ba58a77a75d66b2964ea1cb1d
urfaceFlinger.cpp
|
11611f9be590480d7ea27bf0153558573ddcded2 |
12-Mar-2015 |
Dan Stoza <stoza@google.com> |
DO NOT MERGE SurfaceFlinger: Stop using IGBC::BufferItem Switches all uses of IGraphicBufferConsumer::BufferItem (and BufferQueue::BufferItem) to the BufferItem in libgui. Depends on frameworks/native I699ed0a6837076867ca756b28d1ffb2238f7a0d9. Cherry pick of I187b3a7d05196b6289596afac8fb9a9d4aebff76 Change-Id: I5bc79fb96b6cba6021af64b20890967aa3b7fcbf
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
82c6bcc9705eabcaf5b9e45bc81867b0e2d61a02 |
20-Feb-2015 |
Eino-Ville Talvala <etalvala@google.com> |
DO NOT MERGE Add dataSpace to buffer queues; remove old format enums. - Wire up new dataSpace parameter through buffer queue stack - Update tests to include the parameter - Switch eglApi to using dataSpace to indicate sRGB gamma/linear difference - Remove RAW_SENSOR in favor of RAW16 - Remove use of sRGB format enums - Add default dataspace to buffer queue core - Add query for default dataspace Cherry pick of I070bd2e7c56506055c419004c29e2e3feac725df Change-Id: I461952389c18051176c6b75e664f20ad369f5760
isplayHardware/HWComposer.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
|
3be1c6b60a188dc10025e2ce156c11fac050625d |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
libgui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. Cherry pick of I034abec27bf4020d84af60d7acc1939c59986dd6 plus a couple of minor changes to CpuConsumer.cpp to make it work with a prior change: Uncomment CC_LOGV on line 46 Change C-style cast to static_cast on line 71 Change-Id: Iaec610477ea0122317b0578fb74caf2383d4cf08
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
84493cd420d3d53a16ae7c745ed38afffb4e67f5 |
12-Mar-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Stop using IGBC::BufferItem Switches all uses of IGraphicBufferConsumer::BufferItem (and BufferQueue::BufferItem) to the BufferItem in libgui. Depends on frameworks/native I699ed0a6837076867ca756b28d1ffb2238f7a0d9. Change-Id: I187b3a7d05196b6289596afac8fb9a9d4aebff76
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
35283ef01b53c6fce3be11158100dd950780f19e |
10-Mar-2015 |
Dan Stoza <stoza@google.com> |
am 105aa28e: am b275b4dc: am 3949f664: Merge "SurfaceFlinger: Fix null pointer exception" * commit '105aa28eeff9d31eebc7645aecb7630918a09b2a': SurfaceFlinger: Fix null pointer exception
|
b275b4dc3e5dcbae1e171bd51165a93f16332ef4 |
09-Mar-2015 |
Dan Stoza <stoza@google.com> |
am 3949f664: Merge "SurfaceFlinger: Fix null pointer exception" * commit '3949f664c71ad1269ee0c921d176e3b4484015cc': SurfaceFlinger: Fix null pointer exception
|
24a42e9f54e971a17b829e85681c68d60a178d26 |
09-Mar-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix null pointer exception Fixes a null pointer exception in getActiveConfig Bug: 19416124 Change-Id: I45a01f67affb63a348866ce42a6013c5eb71fe8f
urfaceFlinger.cpp
|
94d5ac480286d5e4d856bb968263e6991a62002d |
06-Mar-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "Add dataSpace to buffer queues; remove old format enums."
|
b90cf07f8b3a8fe76e40b997924c2509d04575f4 |
05-Mar-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Add --static-screen stats Adds a --static-screen option to dumpsys SurfaceFlinger, which displays screen-on time broken down by the time between the prior frame and the current frame. An example dump looks like this: $ adb shell dumpsys SurfaceFlinger --static-screen Static screen stats: < 1 frames: 12.235 s (3.5%) < 2 frames: 29.898 s (8.7%) < 3 frames: 15.370 s (4.4%) < 4 frames: 13.103 s (3.8%) < 5 frames: 15.780 s (4.6%) < 6 frames: 2.022 s (0.6%) < 7 frames: 0.201 s (0.1%) 7+ frames: 256.887 s (74.4%) The buckets are exclusive, so '< 3 frames' covers the interval [2, 3) frames Bug: 19543586 Change-Id: I3253a54c23995d25e96016997acedd0775956b60
urfaceFlinger.cpp
urfaceFlinger.h
|
5b75a513e431c097ae704cba2f7affa6bfaecec9 |
20-Feb-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Add dataSpace to buffer queues; remove old format enums. - Wire up new dataSpace parameter through buffer queue stack - Update tests to include the parameter - Switch eglApi to using dataSpace to indicate sRGB gamma/linear difference - Remove RAW_SENSOR in favor of RAW16 - Remove use of sRGB format enums - Add default dataspace to buffer queue core - Add query for default dataspace Change-Id: I070bd2e7c56506055c419004c29e2e3feac725df
isplayHardware/HWComposer.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
|
53ec1f0d18a66f7d1e6c5404c14502de09b60b08 |
26-Feb-2015 |
Greg Hackmann <ghackmann@google.com> |
am beb89e11: am 6f57b269: am 56f8c6c4: Merge "Error compiling waitforvsync.cpp" * commit 'beb89e11ca777c92b7e2cc06c25f47d5a75ee7ad': Error compiling waitforvsync.cpp
|
6f57b269f9ae779a0e85919cdc7a54bfb383e402 |
26-Feb-2015 |
Greg Hackmann <ghackmann@google.com> |
am 56f8c6c4: Merge "Error compiling waitforvsync.cpp" * commit '56f8c6c42dab4c3636edb62162088e5d765fa956': Error compiling waitforvsync.cpp
|
56f8c6c42dab4c3636edb62162088e5d765fa956 |
26-Feb-2015 |
Greg Hackmann <ghackmann@google.com> |
Merge "Error compiling waitforvsync.cpp"
|
129da2ba07135d33a1690be10fa509a40778fb0d |
23-Feb-2015 |
Mark Salyzyn <salyzyn@google.com> |
am 453c6a78: am a455ec21: am d80268ba: Merge "vsync.cpp test is throwing error whe compiled" * commit '453c6a781de3dc728212d66f1ca7fda2ae984974': vsync.cpp test is throwing error whe compiled
|
a455ec21fa5341b8cee09eff73a9b465a6c28faa |
23-Feb-2015 |
Mark Salyzyn <salyzyn@google.com> |
am d80268ba: Merge "vsync.cpp test is throwing error whe compiled" * commit 'd80268ba19f9217c5459a2952580090ef84a7b78': vsync.cpp test is throwing error whe compiled
|
5b06dc00ac143e030292ada48ed8afc0ac079a30 |
14-Feb-2015 |
Nanik Tolaram <nanikjava@gmail.com> |
vsync.cpp test is throwing error whe compiled frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:55:44: error: 'ALOOPER_EVENT_INPUT' was not declared in this scope loop->addFd(myDisplayEvent.getFd(), 0, ALOOPER_EVENT_INPUT, receiver, ^ frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:64:18: error: 'ALOOPER_POLL_WAKE' was not declared in this scope case ALOOPER_POLL_WAKE: ^ frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:67:18: error: 'ALOOPER_POLL_CALLBACK' was not declared in this scope case ALOOPER_POLL_CALLBACK: ^ frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:70:18: error: 'ALOOPER_POLL_TIMEOUT' was not declared in this scope case ALOOPER_POLL_TIMEOUT: ^ frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:73:18: error: 'ALOOPER_POLL_ERROR' was not declared in this scope case ALOOPER_POLL_ERROR: ^ it is missing one header file Change-Id: Ie2fb02523a866b13a99edf837f072d101cacb466 Signed-off-by: Nanik Tolaram <nanikjava@gmail.com>
ests/vsync/vsync.cpp
|
ee9701744a01acb558cb1082de9cc1415d0dbaff |
13-Feb-2015 |
Nanik Tolaram <nanikjava@gmail.com> |
Error compiling waitforvsync.cpp The waitforvsync.cpp throws error when compiling. Following is the error log target thumb C++: test-waitforvsync <= frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp: In function 'int main(int, char**)': frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp:43:17: error: 'close' was not declared in this scope close(fd); ^ .... .... make: *** [out/target/product/grouper/obj/EXECUTABLES/test-waitforvsync_intermediates/waitforvsync.o] Error 1 the file is missing #include <unistd.h> Change-Id: I57728dbde65641cd3138625f9a590f9db8648158 Signed-off-by: Nanik Tolaram <nanikjava@gmail.com>
ests/waitforvsync/waitforvsync.cpp
|
3890c83721f93f52a7b15de65870db1d77ee1e72 |
28-Jan-2015 |
Dan Stoza <stoza@google.com> |
am 40b4e23a: Merge "resolved conflicts for merge of 1665c8e1 to lmp-mr1-dev-plus-aosp" into lmp-mr1-dev-plus-aosp * commit '40b4e23a0396614c841977e932218e3f53089a4a': Revert "SurfaceFlinger: Attempt to attribute fds to layers"
|
3d6c56914052228d7772517acd51952467947b69 |
28-Jan-2015 |
Yabin Cui <yabinc@google.com> |
am 39d890d9: am 6e32c037: Merge "Kill HAVE_PTHREADS." * commit '39d890d9aed5cb07b8a166a749299b9d24d8f137': Kill HAVE_PTHREADS.
|
40b4e23a0396614c841977e932218e3f53089a4a |
27-Jan-2015 |
Dan Stoza <stoza@google.com> |
Merge "resolved conflicts for merge of 1665c8e1 to lmp-mr1-dev-plus-aosp" into lmp-mr1-dev-plus-aosp
|
39d890d9aed5cb07b8a166a749299b9d24d8f137 |
27-Jan-2015 |
Yabin Cui <yabinc@google.com> |
am 6e32c037: Merge "Kill HAVE_PTHREADS." * commit '6e32c0377db89bafa477715b3a02431d651978cf': Kill HAVE_PTHREADS.
|
22d0bdf326de00dd50a388b55540123228cbb025 |
27-Jan-2015 |
Dan Stoza <stoza@google.com> |
resolved conflicts for merge of 1665c8e1 to lmp-mr1-dev-plus-aosp Change-Id: I0be2ecb8085f2cd9560138460bcc27d71c011608
|
1665c8e1012e535743683d9812bf28c35ee2f10a |
27-Jan-2015 |
Dan Stoza <stoza@google.com> |
Revert "SurfaceFlinger: Attempt to attribute fds to layers" This reverts commit 03eccb6616744c3789b6018680de7bf5a18f71ce. Change-Id: I4f0da7bb62bf77bb3d399aee601beae5e03928fe
ndroid.mk
urfaceFlinger.cpp
|
8fb2d25ff3e9ade7c03ebe52a89c671ee75ce484 |
27-Jan-2015 |
Yabin Cui <yabinc@google.com> |
Kill HAVE_PTHREADS. Bug: 19083585 Change-Id: I355491de945590f43c82bdcb7968b01b4bff6e06
ain_surfaceflinger.cpp
|
b62767e85573d28837c06eb9cca60ddb685b42eb |
17-Jan-2015 |
Dan Stoza <stoza@google.com> |
am a5cbb1f1: am ef1c17ae: SurfaceFlinger: Make log message 64-bit compatible * commit 'a5cbb1f18b6eb4e0db27d98bea0731393b7438d1': SurfaceFlinger: Make log message 64-bit compatible
|
3c7eb4fe2389a156432e4391af3870b21e824208 |
17-Jan-2015 |
Dan Stoza <stoza@google.com> |
am 3372cc25: resolved conflicts for merge of 03eccb66 to lmp-mr1-dev-plus-aosp * commit '3372cc25df255b94e4eb75920afaf43ee5edc39f': SurfaceFlinger: Attempt to attribute fds to layers
|
a5cbb1f18b6eb4e0db27d98bea0731393b7438d1 |
17-Jan-2015 |
Dan Stoza <stoza@google.com> |
am ef1c17ae: SurfaceFlinger: Make log message 64-bit compatible * commit 'ef1c17ae9417abc1e21e49dbc629e448efc947dc': SurfaceFlinger: Make log message 64-bit compatible
|
3372cc25df255b94e4eb75920afaf43ee5edc39f |
17-Jan-2015 |
Dan Stoza <stoza@google.com> |
resolved conflicts for merge of 03eccb66 to lmp-mr1-dev-plus-aosp Change-Id: I1f38cbe7019b2b48b1094dee154ad97c23fd22c2
|
ef1c17ae9417abc1e21e49dbc629e448efc947dc |
17-Jan-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Make log message 64-bit compatible Fixes the build on 64-bit targets that complain about using a size_t with a %d in a format string Change-Id: I7dfcd3a49eb0dbc5dffeb82bb7208de7f7925f08
urfaceFlinger.cpp
|
03eccb6616744c3789b6018680de7bf5a18f71ce |
16-Jan-2015 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Attempt to attribute fds to layers This tracks fds when layers are created and destroyed in an effort to determine which specific app (if any) is active when fds are leaked Bug: 19017008 Change-Id: I1f1d5a9cbc1399e3df3a2d350324f80b3a4e3477
ndroid.mk
urfaceFlinger.cpp
|
8eb8069a2d197c3a996f17e1ed1d1c75ac49b8c6 |
13-Jan-2015 |
Jesse Hall <jessehall@google.com> |
am 9c22ac77: am 5b730570: Merge "surfaceflinger: use Mutex timedLock instead of tryLock loop" * commit '9c22ac77e41b8bbddbb64959acabce3f3a07345d': surfaceflinger: use Mutex timedLock instead of tryLock loop
|
9c22ac77e41b8bbddbb64959acabce3f3a07345d |
13-Jan-2015 |
Jesse Hall <jessehall@google.com> |
am 5b730570: Merge "surfaceflinger: use Mutex timedLock instead of tryLock loop" * commit '5b730570be2bd1f90346a5921d0b70dc11351396': surfaceflinger: use Mutex timedLock instead of tryLock loop
|
fcd15b478c20f579388bb1368f05098dca534639 |
23-Dec-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: use Mutex timedLock instead of tryLock loop Rather than trying to acquire the state lock without waiting three times at 1 second intervals in SurfaceFlinger::dump(), just try to acquire the lock once with a 1 second timeout. Avoids spurious mutex acquire failures that lead to flaky com.android.cts.jank.opengl.CtsHostJankOpenGl results. Bug: 18842510 Change-Id: I00ce6109647de2aef8831dd2f8fa98652ba7f4e0
urfaceFlinger.cpp
|
e9b6f1f7bb590a3f9845a150c1e9286c8ad48bfe |
20-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Switch to libsigchain.a Use LOCAL_WHOLE_STATIC_LIBRARIES to instruct static linker to export symbols from the static library. (cherry picked from commit 4340a14fbfe761a46e7a655b568cbd0953773df3) Bug: 18701723 Change-Id: I70f6fdb64b0d1adbadf96c8de85870a903ec186a
ndroid.mk
igchain_proxy.cpp
|
dd883c0b08d2a60f89542b9b9f5fdabcb14885c7 |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
libgui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. This is a squashed commit based on an initial change with a couple of fixes to avoid breaking certain targets. The source commits are: d723bd7669b4fc88dc282d8bf8ba5ecb2849d22f 00d504c06ea034befe143e6b8cb34d004670ed02 429ba89cd293633d2f882165066b422c96597df2 Change-Id: I034abec27bf4020d84af60d7acc1939c59986dd6
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
d723bd7669b4fc88dc282d8bf8ba5ecb2849d22f |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
libgui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. Change-Id: I034abec27bf4020d84af60d7acc1939c59986dd6
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
753011461964c5a610c12d4dfc9ab85ab20b6977 |
05-Dec-2014 |
Dan Albert <danalbert@google.com> |
am 5588d900: Merge "Enable clang for libui/libgui/surfaceflinger" * commit '5588d9000cd1ef217185c9001d6b5ecd84db9741': Enable clang for libui/libgui/surfaceflinger
|
01049c8321aab30cd431e2febeddd79242ae5a4f |
11-Nov-2014 |
Dan Stoza <stoza@google.com> |
Enable clang for libui/libgui/surfaceflinger Enables clang and C++11 for libui/libgui/surfaceflinger, and eliminates all compile-time warnings. Change-Id: Ie237fdb5ae44f2bfcddaa884f9c65ec3f08ae50f (cherry picked from commit f10c46ef855b6410b20ebd8b1351d4d78d8eca8e)
ndroid.mk
dmConnection.cpp
isplayDevice.cpp
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
d6739d5e445e3be9ffafb9ebb8e61b5115dad3a5 |
04-Dec-2014 |
Dan Stoza <stoza@google.com> |
am db5827d3: am 5878444f: SurfaceFlinger: Listen to HWC invalidate * commit 'db5827d314ddca3d473947b4ef49e811fad70069': SurfaceFlinger: Listen to HWC invalidate
|
db5827d314ddca3d473947b4ef49e811fad70069 |
03-Dec-2014 |
Dan Stoza <stoza@google.com> |
am 5878444f: SurfaceFlinger: Listen to HWC invalidate * commit '5878444fb8da043021f30d3de739531f15390df5': SurfaceFlinger: Listen to HWC invalidate
|
5878444fb8da043021f30d3de739531f15390df5 |
03-Dec-2014 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Listen to HWC invalidate "Do less work when using PTS" broke the invalidate path up from HWC to SurfaceFlinger. When HWC would signal an invalidate, SurfaceFinger would wake up, see no new buffers, and go back to sleep. This is fine, except when the invalidate is a result of an HDMI hotplug, in which case the screen remains blank. This change makes that functionality work again. Bug: 18564815 Bug: 18558468 Change-Id: I2e2171d86839945f4e4e6555d66f7e2895bd096a
urfaceFlinger.cpp
|
347a2acf7e3a81ad861237dbc4b31f5c3c68503f |
25-Nov-2014 |
Michael Lentine <mlentine@google.com> |
am 1e611662: am b947f29a: Merge "Add clamp to Layer and update Transform inverse." into lmp-mr1-dev * commit '1e6116621bc2f7aedfd52a5f1327b530328435b0': Add clamp to Layer and update Transform inverse.
|
1e6116621bc2f7aedfd52a5f1327b530328435b0 |
25-Nov-2014 |
Michael Lentine <mlentine@google.com> |
am b947f29a: Merge "Add clamp to Layer and update Transform inverse." into lmp-mr1-dev * commit 'b947f29a6af1622cda16d0b7112595082750dd07': Add clamp to Layer and update Transform inverse.
|
28ea217ff4e0aa9b03dfc12b6f47cccc6aaaae08 |
20-Nov-2014 |
Michael Lentine <mlentine@google.com> |
Add clamp to Layer and update Transform inverse. Ensure that the adjusted transparent region is within the display bounds by clamping after the transformation is applied and clean up transform's inverse function. Bug: 18452546 Change-Id: Ia473e483ee8374177bcb84d8192eb1f0e86f022a
ayer.cpp
ransform.cpp
|
c1ced8bbcd0ab8ddb75513290954e8a56f80040e |
21-Nov-2014 |
Dan Albert <danalbert@google.com> |
am c894c204: Merge "C++11 compatibility." * commit 'c894c2045f589571c80af0648e7a9dcd7e97b6a8': C++11 compatibility.
|
3bdc5b826803dca10d3625c56de38d6c55d869c8 |
20-Nov-2014 |
Dan Albert <danalbert@google.com> |
C++11 compatibility. * Explicit conversion for atomic_uintptr_t initialization. * Fix string literal concatenation to not be a UD literal. * Use __typeof__ instead of typeof (should become decltype once this actually moves to C++11). Bug: 18466763 Change-Id: I4eedddfb945a2a703ed27317cb6e2b3041b1ebfc
dmConnection.cpp
|
e8e23c8b79a8f6f92e1db22a58ec5cffe8faf70a |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
am 686c5be4: am 6b9454d1: SurfaceFlinger: Do less work when using PTS * commit '686c5be4722dce02ae8e5580d6677f1eeea22464': SurfaceFlinger: Do less work when using PTS
|
686c5be4722dce02ae8e5580d6677f1eeea22464 |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
am 6b9454d1: SurfaceFlinger: Do less work when using PTS * commit '6b9454d1fee0347711af1746642aa7820b1ea04d': SurfaceFlinger: Do less work when using PTS
|
6b9454d1fee0347711af1746642aa7820b1ea04d |
08-Nov-2014 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Do less work when using PTS Currently, SurfaceFlinger is very dumb about how it handles buffer updates at less than 60fps. If there is a new frame pending, but its timestamp says not to present it until later SurfaceFlinger will wake up every vsync until it is time to present it. Even worse, if SurfaceFlinger has woken up but nothing has changed, it still goes through the entire composition process. This change (mostly) fixes that inefficiency. SurfaceFlinger will still wake up every refresh period while there is a new frame pending, but if there is no work to do, it will almost immediately go back to sleep. Bug: 18111837 Change-Id: I7825bacd37f40bf26edcc6a5e0f051dce45291fb
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.h
|
e12cfc23b2399ded0cc4608e47c5ba864fc5ab7d |
17-Nov-2014 |
Marco Nelissen <marcone@google.com> |
am 55f71bc0: Merge "Replace IInterface::asBinder() with a static" * commit '55f71bc0800b9ec7a779c5d30d5a90e074c2526b': Replace IInterface::asBinder() with a static
|
097ca275f4717a2c47a5d49f302ed2b72c8a1370 |
14-Nov-2014 |
Marco Nelissen <marcone@google.com> |
Replace IInterface::asBinder() with a static so we can do NULL checks again, and update calls to IInterface::asBinder() to use the new static version. Change-Id: Ia7b10eb38ca55b72278bfd33d3bf647f338b4e6a
onitoredProducer.cpp
urfaceFlinger.cpp
|
2ea926bda2fa30f3ba8d0ed2d2395a8ada952e6e |
14-Nov-2014 |
Marco Nelissen <marcone@google.com> |
Replace IInterface::asBinder() with a static so we can do NULL checks again, and update calls to IInterface::asBinder() to use the new static version. Change-Id: Ia7b10eb38ca55b72278bfd33d3bf647f338b4e6a
onitoredProducer.cpp
urfaceFlinger.cpp
|
41a0ef3e28c4d2494f6cdd1c831dd3ded7c5af4a |
14-Nov-2014 |
Dan Albert <danalbert@google.com> |
resolved conflicts for merge of 4037c458 to master Change-Id: I8a2e73b7ba48b790054e0ab99f81b2693244389e
|
4037c458a7594cb3cd81a14e7e974abc28180187 |
13-Nov-2014 |
Andreas Gampe <agampe@google.com> |
resolved conflicts for merge of 07dffa18 to lmp-mr1-dev-plus-aosp Change-Id: I42d8bc291f4f48f3098754b076889159c4b20e41
|
89fd4f7fa6bd17ce5400979c3b9e5ba0bf7e919e |
13-Nov-2014 |
Andreas Gampe <agampe@google.com> |
Frameworks/native: Wall Werror in surfaceflinger Turn on -Wall -Werror in services/surfaceflinger. Fix warnings. Change-Id: Ifef830300d9d4bc657d8f1257c02bfe8c2b4d9c5
ndroid.mk
isplayDevice.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
ayerDim.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES20RenderEngine.cpp
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
|
f10c46ef855b6410b20ebd8b1351d4d78d8eca8e |
11-Nov-2014 |
Dan Stoza <stoza@google.com> |
Enable clang for libui/libgui/surfaceflinger Enables clang and C++11 for libui/libgui/surfaceflinger, and eliminates all compile-time warnings. Change-Id: Ie237fdb5ae44f2bfcddaa884f9c65ec3f08ae50f
ndroid.mk
dmConnection.cpp
isplayDevice.cpp
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
8e624d4cad45532c09879356f3adaa3b65fdcfc9 |
07-Nov-2014 |
Dan Stoza <stoza@google.com> |
am 98d20f82: Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-dev * commit '98d20f82ca8979b30c81df9639f54ab11e1951f9': Add a BufferItem parameter to onFrameAvailable
|
98d20f82ca8979b30c81df9639f54ab11e1951f9 |
07-Nov-2014 |
Dan Stoza <stoza@google.com> |
Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-dev
|
8dc55396fc9bc425b5e2c82e76a38080f2a655ff |
04-Nov-2014 |
Dan Stoza <stoza@google.com> |
Add a BufferItem parameter to onFrameAvailable Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Also adds an onFrameReplaced callback, which is necessary if the consumer wants to do anything more than simple queue length tracking. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
ayer.cpp
ayer.h
|
ff520bb93812f9892da526ace81efce9b0872503 |
03-Nov-2014 |
Naseer Ahmed <naseer@codeaurora.org> |
am 7aa0c47e: sf: Add a NULL check in getDisplayConfigs * commit '7aa0c47e4205c6fca136c38f272d911c25c8a8fa': sf: Add a NULL check in getDisplayConfigs
|
7aa0c47e4205c6fca136c38f272d911c25c8a8fa |
03-Nov-2014 |
Naseer Ahmed <naseer@codeaurora.org> |
sf: Add a NULL check in getDisplayConfigs Validate the display binder by adding a NULL check in getDisplayConfigs. This will prevent a false match if the caller queries the display configs for an inactive display (whose binder is NULL by default). Without this change we might end up attempting to index the display config array, which is unpopulated for inactive displays, and this will result in a crash. (See getDisplayInfo in SurfaceComposerClient.cpp for an example of this scenario) Change-Id: I1a12f43b7c375b9c01998dadd5b658275c733fb2 Acked-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
urfaceFlinger.cpp
|
b43a1c9be2046345d61fb0d0a5fd06eda5cbe31e |
31-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am affc4d80: Merge "surfaceflinger: fix -Wunused-parameter warning" into lmp-mr1-dev * commit 'affc4d809edbcb3b0e49e5ccc9821b9695a57d44': surfaceflinger: fix -Wunused-parameter warning
|
18b846dda798709796be078a7978d885685df9a4 |
31-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am c7636f60: Merge "surfaceflinger: fix -Wsign-compare warnings" into lmp-mr1-dev * commit 'c7636f606270a4b79d745ec1acf049daedfa0e2f': surfaceflinger: fix -Wsign-compare warnings
|
9fc06c5e2131cdf0d76a3838215c057f57da67e3 |
31-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am 6e74e3cc: Merge "surfaceflinger: fix -Woverloaded-virtual warning" into lmp-mr1-dev * commit '6e74e3ccd972fe90d9998f6b683e25dca38f470d': surfaceflinger: fix -Woverloaded-virtual warning
|
7cd85979e81cd632c37852f7ca716089dc52e899 |
08-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: fix -Wunused-parameter warning warning: unused parameter 'mustRecompose' [-Wunused-parameter] Change-Id: I6b8c671189639d851bfa5548742de988d6fa2687 (cherry picked from d2e514f71709e6af3dbc754e59686129737f2300)
isplayHardware/FramebufferSurface.cpp
|
784421160727c434c2a2897ed3345445fcc30f75 |
08-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: fix -Wsign-compare warnings warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare] arning: comparison of integers of different signs: 'int32_t' (aka 'int') and 'const uint32_t' (aka 'const unsigned int') [-Wsign-compare] Change-Id: I823257aa7218c5fd492a3277853210db539bb2e2 (cherry picked from f9bfdc6c9449143eed674c03e15dd8278296d32b)
urfaceFlinger.cpp
|
9b901805ed2e918c25e13134757a967caaaeebb9 |
08-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: fix -Woverloaded-virtual warning warning: 'android::LayerDim::isOpaque' hides overloaded virtual function [-Woverloaded-virtual] Change-Id: Ie27a6c943f485bc89ce11e424a4e7d99805d4dd0 (cherry picked from commit 382574d116759ccc19463c03db841e3d6e2d4424)
ayerDim.h
|
1495ceb88594bf3c5963ef65ee12953dc0354546 |
08-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: fix -Wmismatched-tags warnings warning: struct 'HWComposer' was previously declared as a class [-Wmismatched-tags] warning: class 'DisplayInfo' was previously declared as a struct [-Wmismatched-tags] Change-Id: I13db9f8aab3a957ce8ff8d64598dae1807d6fe7e (cherry picked from commit 646f54105018e99ef4a30ee41f01f7d1ab66c38e)
isplayDevice.h
isplayHardware/HWComposer.h
|
d77021637e28e66be3fcc097b16869df69717df9 |
30-Oct-2014 |
Dan Stoza <stoza@google.com> |
am 1f3efb11: Don\'t run large virtual displays through HWC * commit '1f3efb11ff8c884a254f4272f0d1ee0b77ceff2f': Don't run large virtual displays through HWC
|
1f3efb11ff8c884a254f4272f0d1ee0b77ceff2f |
16-Oct-2014 |
Dan Stoza <stoza@google.com> |
Don't run large virtual displays through HWC This change watches for a MAX_VIRTUAL_DISPLAY_DIMENSION value, which will be set (if necessary) in BoardConfig.mk. If the value is set, any virtual displays that have a width or a height greater than that dimension will bypass the hardware composer HAL and be handled only by SurfaceFlinger. Bug: 17701816 Change-Id: Ia6ca44dfd6a7a9bc0f054493d3f13006bc32fa14
ndroid.mk
urfaceFlinger.cpp
|
0b91d7e27718fc530bcad78a7ff2a51b90142059 |
24-Oct-2014 |
Riley Andrews <riandrews@google.com> |
am 131866e1: Merge "Add glFlush in surfaceflinger screenshot code." into lmp-mr1-dev * commit '131866e1a4cb3c592f923e95a8c1a66291e2057a': Add glFlush in surfaceflinger screenshot code.
|
131866e1a4cb3c592f923e95a8c1a66291e2057a |
24-Oct-2014 |
Riley Andrews <riandrews@google.com> |
Merge "Add glFlush in surfaceflinger screenshot code." into lmp-mr1-dev
|
9707f4df640c3369f873a934bb05ffa5a68a5640 |
24-Oct-2014 |
Riley Andrews <riandrews@google.com> |
Add glFlush in surfaceflinger screenshot code. After creating a syncKHR object with type EGL_SYNC_NATIVE_FENCE_ANDROID, glFlush must be called before the EGL_SYNC_NATIVE_FENCE_FD_ANDROID attribute is populated with a sync fd. We currently call eglDupNativeFenceFDANDROID before issuing the flush. Bug 18052459 Taken verbatim from matthew.k.gumbel@intel.com. Change-Id: I3781d14f92862076e2bca7d27341a6dc6e7e3775
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
|
11f2e08a66f2463cbfd9cbef5c34da7ddfe2613a |
22-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am 8ad8c0a7: am afe2b1fa: surfaceflinger: don\'t close fence fds after passing to queueBuffer * commit '8ad8c0a775a1d4592479731973238b82480f76b2': surfaceflinger: don't close fence fds after passing to queueBuffer
|
8ad8c0a775a1d4592479731973238b82480f76b2 |
22-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am afe2b1fa: surfaceflinger: don\'t close fence fds after passing to queueBuffer * commit 'afe2b1fadd29149ceed639357e44e06e97c3a5ca': surfaceflinger: don't close fence fds after passing to queueBuffer
|
afe2b1fadd29149ceed639357e44e06e97c3a5ca |
21-Oct-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: don't close fence fds after passing to queueBuffer ANativeWindow::queueBuffer takes ownership of the fence fd passed to it, and will close it before returning. SurfaceFlinger's screenshot code was also closing the syncFd it passed to queueBuffer. Most of the time this meant the second close() silently failed, but in a rare race condition the file descriptor could be reused between the two close()s. Bug: 17946343 Change-Id: Ib74fcb1dce52cc21328059c99b7c4c76f41aa3a5
urfaceFlinger.cpp
|
8b81ce563f03500064e0f4c87288b8eeb3bed496 |
21-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
am cb8a9fcc: Merge "Switch to libsigchain.a" * commit 'cb8a9fcc56288378d05d80c55396db7981e3828d': Switch to libsigchain.a
|
5cf92d4a85efe7bcff4d0818d8d88afa252f7cc7 |
21-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
am cb8a9fcc: Merge "Switch to libsigchain.a" * commit 'cb8a9fcc56288378d05d80c55396db7981e3828d': Switch to libsigchain.a
|
4340a14fbfe761a46e7a655b568cbd0953773df3 |
20-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Switch to libsigchain.a Use LOCAL_WHOLE_STATIC_LIBRARIES to instruct static linker to export symbols from the static library. Change-Id: I0e41cf173be96c52cdad72b1ef4a1bf819e65dd2
ndroid.mk
igchain_proxy.cpp
|
2b1f2dac939a035475f7b0c3c3a976de4384bb98 |
07-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Link sigchain to surfaceflinger main executable And export necessary symbols to preempt calls from libart.so Bug: 15345057 Bug: 15426766 (cherry picked from commit f3da24d8cf02d7c74ff7c24eae0154a21a192fda) Change-Id: I03b632e0bf2cbaf4a0e68cd0af4e991f7f6b08e4
ndroid.mk
igchain_proxy.cpp
|
27b780b517eb18582f978da64febb31ecfa8e4bf |
16-Oct-2014 |
Dan Albert <danalbert@google.com> |
am 9cc84950: Merge "Don\'t check if this == NULL." * commit '9cc849500df0bba42d3ed19b90c38ff1dffd2262': Don't check if this == NULL.
|
759115cd6d6e4f7909342e25f1002a9d74ceee5e |
16-Oct-2014 |
Dan Albert <danalbert@google.com> |
am 9cc84950: Merge "Don\'t check if this == NULL." * commit '9cc849500df0bba42d3ed19b90c38ff1dffd2262': Don't check if this == NULL.
|
9cc849500df0bba42d3ed19b90c38ff1dffd2262 |
16-Oct-2014 |
Dan Albert <danalbert@google.com> |
Merge "Don't check if this == NULL."
|
9b9d1a4ee54817028549e3b3c49f5c9898b11406 |
14-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
am 26a28149: Merge "Link sigchain to surfaceflinger main executable" * commit '26a2814963de75f14dfbe7cf3d45e993727891cf': Link sigchain to surfaceflinger main executable
|
88e5118f07f38c96d5b438a44c42b0951c65ba0d |
14-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
am 26a28149: Merge "Link sigchain to surfaceflinger main executable" * commit '26a2814963de75f14dfbe7cf3d45e993727891cf': Link sigchain to surfaceflinger main executable
|
f3da24d8cf02d7c74ff7c24eae0154a21a192fda |
07-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Link sigchain to surfaceflinger main executable And export necessary symbols to preempt calls from libart.so Bug: 15345057 Bug: 15426766 Change-Id: If0b7f59a59824e30aa0c33dad76c7a44932180de
ndroid.mk
igchain_proxy.cpp
|
fb992b7753d73f4f18ef7aa1c8e3df5c09e6efbd |
03-Oct-2014 |
Michael Lentine <mlentine@google.com> |
am 6c925ede: Fixed discrepancy between crop and frame transparencies. * commit '6c925ede620f4080227bb1fe8a41e4b4502348f8': Fixed discrepancy between crop and frame transparencies.
|
6c925ede620f4080227bb1fe8a41e4b4502348f8 |
27-Sep-2014 |
Michael Lentine <mlentine@google.com> |
Fixed discrepancy between crop and frame transparencies. Bug: 17662777 Change-Id: I0d65d9b912a37a60e4c1d2e2e198f7709460917c
ayer.cpp
ayer.h
|
8dcdf7961b22ad36cb43d0f5353a1b5663448fd4 |
03-Oct-2014 |
Riley Andrews <riandrews@google.com> |
am 6747be9f: Generate the SurfaceFlinger shader cache on initialization * commit '6747be9fab9981ec24729cede5e0fe779e8b8914': Generate the SurfaceFlinger shader cache on initialization
|
6747be9fab9981ec24729cede5e0fe779e8b8914 |
29-Sep-2014 |
Riley Andrews <riandrews@google.com> |
Generate the SurfaceFlinger shader cache on initialization Blobcache is not yet enabled for surfaceflinger (as it should be). As a temporary workaround, generate all needed shaders during surfaceflinger initialization instead of doing the compilation on-demand during ui transitions. Change-Id: I14455b20a3f85f177d85c9c8b76d8ccc35379b39
enderEngine/ProgramCache.cpp
enderEngine/ProgramCache.h
|
36a4d17104f8a8d4523071d829ac43c8507ced64 |
02-Oct-2014 |
Riley Andrews <riandrews@google.com> |
am 6c833986: Merge "Generate the SurfaceFlinger shader cache on initialization" into lmp-mr1-dev * commit '6c8339867438c27e468a03995b98481e9e49b274': Generate the SurfaceFlinger shader cache on initialization
|
6bddbeaeb05aff19a8d69fda806c2b03b2c47c6c |
02-Oct-2014 |
Michael Lentine <mlentine@google.com> |
am db57cfbd: Merge "When eglMakeCurrent fails we need to fix the egl state." into lmp-dev * commit 'db57cfbd6f9d5795846ef237fd297cb81e429679': When eglMakeCurrent fails we need to fix the egl state.
|
c868c78b516d5fd3f5d36dc916baab6c98800d8f |
02-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am 5bf786d8: surfaceflinger: recompute visibility after sideband stream change * commit '5bf786d8f00ff8eee64ebf330dac55e33a0f97b1': surfaceflinger: recompute visibility after sideband stream change
|
a51fafc4d83ab1d1582c1c870c31be44b057aa95 |
29-Sep-2014 |
Riley Andrews <riandrews@google.com> |
Generate the SurfaceFlinger shader cache on initialization Blobcache is not yet enabled for surfaceflinger (as it should be). As a temporary workaround, generate all needed shaders during surfaceflinger initialization instead of doing the compilation on-demand during ui transitions. Change-Id: I14455b20a3f85f177d85c9c8b76d8ccc35379b39
enderEngine/ProgramCache.cpp
enderEngine/ProgramCache.h
|
17290d483b986a9838aeeb85386c14681d0d5c44 |
02-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am bacc28ef: surfaceflinger: Use landscape resolution for default dpi * commit 'bacc28ef1df329f4dc21bae44b09a6c5018af908': surfaceflinger: Use landscape resolution for default dpi
|
20daf003aaf1f01d5ef3cd60306db3cff89512c8 |
02-Oct-2014 |
Michael Lentine <mlentine@google.com> |
am db57cfbd: Merge "When eglMakeCurrent fails we need to fix the egl state." into lmp-dev * commit 'db57cfbd6f9d5795846ef237fd297cb81e429679': When eglMakeCurrent fails we need to fix the egl state.
|
db57cfbd6f9d5795846ef237fd297cb81e429679 |
02-Oct-2014 |
Michael Lentine <mlentine@google.com> |
Merge "When eglMakeCurrent fails we need to fix the egl state." into lmp-dev
|
e245cdcc004ee13920aa0b74790a2b5c758662a2 |
02-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am 5bf786d8: surfaceflinger: recompute visibility after sideband stream change * commit '5bf786d8f00ff8eee64ebf330dac55e33a0f97b1': surfaceflinger: recompute visibility after sideband stream change
|
3f121fc650d72d0103cef8e6a651093fb1589e0a |
01-Oct-2014 |
Michael Lentine <mlentine@google.com> |
When eglMakeCurrent fails we need to fix the egl state. Bug: 16676660 Change-Id: Ie7bee9c78378b9e9206060444319e6ee35e1ab74
urfaceFlinger.cpp
urfaceFlinger.h
|
5bf786d8f00ff8eee64ebf330dac55e33a0f97b1 |
30-Sep-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: recompute visibility after sideband stream change We normally recompute layer visibility when a layer gets its first buffer; before then it's treated as invisible. Sideband layers never get a buffer (as far as SurfaceFlinger knows), so never became visible. Now we also recompute visibility when a layer gets a new sideband stream. Bug: 17752511 Change-Id: I84e150f196eb2eb7bcd2616248e5e3fa73624809
ayer.cpp
|
2a8ae4ef70f2a3e0239a4df9bf33b4ff141594fe |
29-Sep-2014 |
Jesse Hall <jessehall@google.com> |
am bacc28ef: surfaceflinger: Use landscape resolution for default dpi * commit 'bacc28ef1df329f4dc21bae44b09a6c5018af908': surfaceflinger: Use landscape resolution for default dpi
|
bacc28ef1df329f4dc21bae44b09a6c5018af908 |
28-Sep-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: Use landscape resolution for default dpi When HWC doesn't provide DPI values for a display, we pick a default DPI based on resolution. The intent was that 1080p and higher displays would get XHIGH density, and lower resolutions would get TV density. In KK (and possibly forever) we had a bug that we'd always use TV density. That was fixed in L, but that fix exposed a pre-existing bug that we always used the display's height in its native orientation, rather than in landscape orientation. So an 800x1280 tablet like N7v1 started getting XHIGH density instead of the intended TV density. Bug: 17461633 Change-Id: Ia57fa49e61f36bdda63ce283ef62c9953297222c
isplayHardware/HWComposer.cpp
|
53e6b95d05da4e3c4e0fcd9a0d1ed7d56a6814a1 |
26-Sep-2014 |
Jesse Hall <jessehall@google.com> |
am 728a8da1: Merge "surfaceflinger: Check sideband stream changed to trigger sideband Layer update." into lmp-dev * commit '728a8da14638e718ede11a7a894705524fc9d171': surfaceflinger: Check sideband stream changed to trigger sideband Layer update.
|
1b5c8839f7bbdebb3b30a6584e67402e8cb4a979 |
26-Sep-2014 |
Jesse Hall <jessehall@google.com> |
am 728a8da1: Merge "surfaceflinger: Check sideband stream changed to trigger sideband Layer update." into lmp-dev * commit '728a8da14638e718ede11a7a894705524fc9d171': surfaceflinger: Check sideband stream changed to trigger sideband Layer update.
|
0ea1cb91954ac1ad0973a6b9482dcb2fee2449f5 |
23-Sep-2014 |
chenhg <chenhg@marvell.com> |
surfaceflinger: Check sideband stream changed to trigger sideband Layer update. BUG: 17382907 Change-Id: I65fd037bd25238ae68a3976468ae7fd7ce49c562
ayer.h
|
147372fdf9fae688114121228247497d43514ab7 |
19-Sep-2014 |
Lajos Molnar <lajos@google.com> |
resolved conflicts for merge of 67d8bd66 to lmp-mr1-dev-plus-aosp Change-Id: I5e7e6fdf0d2afe6c3e4a0ed6ef96afb4713a72bc
|
435d9cde2777950c1d93b0982839d6796c5688b2 |
19-Sep-2014 |
Lajos Molnar <lajos@google.com> |
resolved conflicts for merge of 67d8bd66 to lmp-dev-plus-aosp Change-Id: I2e9aab90ac53bb32630598f50cc26f6e46acf6d6
|
67d8bd66aaf04805cb8f2616ba964141b865e3b9 |
11-Sep-2014 |
Lajos Molnar <lajos@google.com> |
surfaceflinger: add getDisplayStats() method This is used by media service to schedule video frames at the proper time, based on precise vsync timings. Bug: 14659809 Change-Id: I1a90603f3dc09dca9aa4f90a3aa845fab56e0a5e
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1474f8864faafebc92ff79959bb5c698bd29b704 |
09-Sep-2014 |
Dan Albert <danalbert@google.com> |
Don't check if this == NULL. Entering a method with this == NULL is undefined behavior. Clang whines about this. Change-Id: Ibde628395ca10dfef0d2f59e81280576f104b83c
urfaceFlinger.cpp
|
4355c0c98644c37f0511257403bbfb71b342e2df |
12-Sep-2014 |
Dan Albert <danalbert@google.com> |
am e1e3d278: Merge "Clean cruft out of makefiles." * commit 'e1e3d278549eb6389eb0b5fa3f13a4ac079a55a2': Clean cruft out of makefiles.
|
b79dfe672138805b4f70183fd738d9af58591148 |
12-Sep-2014 |
Dan Albert <danalbert@google.com> |
Clean cruft out of makefiles. Cleans up manual uses of stlport and bionic (and removes uses of private bionic headers). Change-Id: I157309d702e59152adfa3450939082248ae4c043
ests/Android.mk
|
7d587c31d5c9a2f76f69073036f521dc75045656 |
11-Sep-2014 |
Dan Albert <danalbert@google.com> |
Merge "Silence warnings about unused parameters."
|
5746f1497814e105352214f1bba242317856605a |
10-Sep-2014 |
Dan Albert <danalbert@google.com> |
am fb017a4c: Merge "Fix clang warnings about struct vs. class." * commit 'fb017a4c3b23741f737093c3fcb78087bbe5e73c': Fix clang warnings about struct vs. class.
|
9e0e103b654b93ac526c27fd3106caac1d3006fc |
10-Sep-2014 |
Dan Albert <danalbert@google.com> |
Silence warnings about unused parameters. Change-Id: I503aafbdeaec3f53241872dc52af9f8b73a1416c
isplayDevice.cpp
isplayHardware/VirtualDisplaySurface.cpp
ayer.cpp
ayerDim.cpp
urfaceFlinger.cpp
ain_surfaceflinger.cpp
|
aeb8ab8c34343bd64a4b2247615ea3da97fa02f6 |
10-Sep-2014 |
Dan Albert <danalbert@google.com> |
Fix clang warnings about struct vs. class. Change-Id: I9f26cd01ac3153efa6d77a4133686842e2d63203
isplayDevice.h
isplayHardware/HWComposer.h
|
c3ebe66b49cfba035e1fd0e160a13db38eb81b0e |
05-Sep-2014 |
Riley Andrews <riandrews@google.com> |
Add rotation to surfaceflingers screen cap. + This is needed so that activity manager does not have to do cpu side rotations when capturing recents thumbnails. Change-Id: If998008e675ad01305db8399fd643cf4608b7025
isplayDevice.cpp
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
4d407a0f05ad9ba3c232ff5b6742495660c0e4ab |
25-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: Trace HW vsync enable This makes it possible to tell whether two HW vsync signals are too far apart because one was late, or because we turned HW vsync off briefly between them. Bug: 17259382 Change-Id: If4fba2a8a6013568349949ce87c5c36f0468d2a2
isplayHardware/HWComposer.cpp
|
eb21986df0429d63f5e9678741730f07f17dcbad |
22-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Update currentConfig variable when active display is changed." into lmp-dev
|
d3e6914ceaafebaee09b0095aad6d001b75e787a |
21-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Update currentConfig variable when active display is changed. Bug: 17182607 Change-Id: I8631c105a9e0fa402a7d9670717becc9857af935
isplayHardware/HWComposer.cpp
|
d4548dd0272f5a4edee1d7ff070458728848b35c |
20-Aug-2014 |
Jesse Hall <jessehall@google.com> |
am 514e30a9: am c3d1889e: Merge "surfaceflinger: skip composition for empty frames" into klp-modular-dev * commit '514e30a96cefad109509ce01622fa7f82f3f318c': surfaceflinger: skip composition for empty frames
|
514e30a96cefad109509ce01622fa7f82f3f318c |
20-Aug-2014 |
Jesse Hall <jessehall@google.com> |
am c3d1889e: Merge "surfaceflinger: skip composition for empty frames" into klp-modular-dev * commit 'c3d1889e508038efe240ed1974ed377a2e12835c': surfaceflinger: skip composition for empty frames
|
949ea0868de1df7e2f28a32d777cc41f901d6770 |
20-Aug-2014 |
Naseer Ahmed <naseer@codeaurora.org> |
sf: Clear display configs when hot pluggable display is disconnected Display configs for external displays are stored in the framework everytime we receive a hot plug to connect. However, since the configs are not cleared on disconnect, framework will just assume that the configs are valid. This does not work for use cases when you connect/disconnect external displays with different resolutions. e.g. 1080p to 4K and vice-versa With this change we clear the display configs and repopulate when we receive a hot plug to connect. Change-Id: I2eeab186a8d8668a53390a2413b2ce5e044a1845 Acked-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
isplayHardware/HWComposer.cpp
|
4d7c41008d0945b58d802e04d0bea28e9b739a5f |
20-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Destroy eglSurface before recreating." into lmp-dev
|
f2568dea419562ad75b2e79dcbd358af34e9f8ad |
20-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Destroy eglSurface before recreating. Bug: 16856208 Change-Id: Ifb5c8997afab4bc922356a3542d1f899a2546855
isplayDevice.cpp
|
7b90258c7b1b6caf7fbbf62423723d0f4cdc79aa |
20-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Fix inverse orientation when original is not applied first. Change-Id: I6f1a11950c77c99800acbf08a672bc1b2310b0b5
ayer.cpp
|
1440963470cda68be762957e2efb7ecbe1570366 |
19-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Fix camera orientation by swapping horizontal and vertical flips when needed. Bug: 16637957 Change-Id: I66de597546fdc19e0af9e6150ca20460ab36bf8b
ayer.cpp
|
b7a0549c983bef103ce07eb3af5905febc6e538e |
15-Aug-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: skip composition for empty frames By not committing the results of composition for empty frames, we avoid spitting out series of black frames for virtual displays that don't have visible layers. We still draw one black frame when going from having layers to not having any. In particular, this avoids having a series of empty frames due to re-compositing the primary display in the period between creating the virtual display and adding layers to it. Bug: 16786752 Change-Id: I7e9b2ed2e407d8d49c7af736b447d4c6181b0ad8
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
f75514079434cefcdb746e8b083708d6de5f86ff |
19-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Incorporate TransformToDisplayInverse into the crop calculation. Change-Id: Ia9757b3a43d3b8f99df9fef2ed4d11c43b5abdd2
ayer.cpp
|
2cfbef255b0e1b1b8fad3cba0e447d79a7b8203b |
20-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Fix inverse orientation when original is not applied first." into lmp-dev
|
62205596b9848d9d7d9de90aa0f5682d6ce17ea3 |
20-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Fix camera orientation by swapping horizontal and vertical flips when needed." into lmp-dev
|
b3abe7c06a834d92439d034b29e3b5af632de130 |
19-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Incorporate TransformToDisplayInverse into the crop calculation." into lmp-dev
|
866399093f9f60e7305f291e688abb456bace710 |
15-Aug-2014 |
Riley Andrews <riandrews@google.com> |
Take advantage of sync points during screen cap. Do not wait for the screen capture to complete within surface flinger, instead pass a sync point back with the captured gralloc buffer. Change-Id: I7137c0e0fc710688d1d61f189159418fb27ea263
urfaceFlinger.cpp
|
b54ee7704e46529e02386cf39eba93a34a527c61 |
07-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Change output format to not throw warning on volantis. Change-Id: Id66eb61bdb1ceccfb7aefa0aa70793dac807c257
isplayHardware/HWComposer.cpp
|
5af281f4abb0401ebb4e614291a19780b71f236c |
07-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Fix HWComposer Surface Crop when surface is rotated Bug: 15091149 Change-Id: I97ecd8af9636da9403fafdb3f9b846f95053ebb7
ayer.cpp
|
a02e9484be6894f8a4db7049d432f534a4e0a676 |
31-Jul-2014 |
Eric Penner <epenner@google.com> |
Merge "SurfaceFlinger: Prevent deadlock by updating an atomic layer set." into lmp-dev
|
51c59cd1e73be3787eb75bebd87fc41739c65adb |
29-Jul-2014 |
Eric Penner <epenner@google.com> |
SurfaceFlinger: Prevent deadlock by updating an atomic layer set. Bug: 12934849 Change-Id: I9dede7316f1e967de4140bd731ac810115ea302f
ayer.h
urfaceFlinger.cpp
|
9ae79d869a37633fa956a4f16f3fa45b23c189f1 |
31-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Build fix for size_t on 64bit. Change-Id: Ic16895b30d78ba8a635b709adbae31a590501b20
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
|
258ee43fbcbc752cb08c134a12c08d5d99c4a866 |
31-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Build fix for printf with int64 and size_t Change-Id: I642584cce7dd43e6d491a49228b0bce047d53354
isplayHardware/HWComposer.cpp
|
fd9d183cd8c859ab8480dea572430398438ba8b5 |
31-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Build fix to use the correct source. Change-Id: If36710be600dd0e15c31682e0343f281baa55627
isplayHardware/VirtualDisplaySurface.cpp
|
7306c670eb3ddb471d983a7458eb9f522afd0763 |
30-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Add error for format and make sure setActiveConfig fails with an invalid mode. Change-Id: Iacdb5cbad125787f96c64c88d432fc541c4cad1a
ndroid.mk
urfaceFlinger.cpp
|
47e45405d1533aa73307014f7bf371e118695cf3 |
19-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Allow for resizing of Virtual Displays. Modify SurfaceFlinger to use VirtualDisplaySurface in all cases when a virtual display is used. Add functionality in VirtualDisplaySurface to resize the buffers aquired in the QueueBufferOutput. Add transaction support in SurfaceFlinger for resize. Add the modification of the size in DisplayDevice. Change-Id: Iae7e3556dc06fd18d470adbbd76f7255f6e6dd6b Tested: None
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
1f6078aef71b1d3f080cd565adbec350c71088dd |
27-Jun-2014 |
Michael Wright <michaelwr@google.com> |
Have VirtualDisplays send SF resize messages when resizing Change-Id: I76d15b22099a659450ec875836c9bf2b6584838f
urfaceFlinger.h
|
6c9e34a98a63033b80bd1c24c7aa1304f912f10a |
14-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Modified SurfaceFlinger to implment setActiveConfig and getActiveConfig. This can be used to change the current display mode of the device. Change-Id: Icdc3fb58389b861dc77b68102083da6f7a96eccb Tested: None (cherry picked from commit 2651fa94635a96d653038fb389a0dd827338f8d3)
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
03414a1cfe6c1222fd7723949bd622f9cba145aa |
01-Jul-2014 |
Riley Andrews <riandrews@google.com> |
Turn on support for async cursor update in surfaceflinger. If available, surfaceflinger will use the hwc setCursorPositionAsync() api to change the position of supported cursor layers outside of the usual prepare/set loop. Change-Id: Ib3fc5c0c390b3489ddbba202379840a1d2748917
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
2ad9d8a6e71f80b373c3ed0fece26b286d846292 |
15-Jul-2014 |
Ruben Brunk <rubenbrunk@google.com> |
Merge "Add sticky transform to surfaceflinger." into lmp-dev
|
1681d95989271f3a9ac0dbb93d10e4a29f2b4444 |
28-Jun-2014 |
Ruben Brunk <rubenbrunk@google.com> |
Add sticky transform to surfaceflinger. Bug: 15116722 - Adds a sticky transform field that can be set from a SurfaceFlinger client Surface. This transform is added to any transform applied to the Surface. Change-Id: Idaa4311dfd027b2d2b8ea5e2c6cba2da5779d753
ayer.cpp
ayer.h
|
b154c42c39c1499c26d88fff8ca642cd86f91098 |
13-Jul-2014 |
Jesse Hall <jessehall@google.com> |
Improve memory coherence management in screenshot code [DO NOT MERGE] The existing code worked in practice, but wasn't quite correct in theory and relied on implementation details of other code. It's still somewhat unusual and subtle, but now is correct-in-theory (I believe) and a little better documented. Bug: 16044767 Change-Id: I22b01d6640f0b7beca7cbfc74981795a3218b064 (cherry picked from commit c61576794e75898a829eac52fc524c8e907b4b02)
arrier.h
urfaceFlinger.cpp
|
24cd98eef88ac93f80c327f8d74f0a1ae0aceee4 |
13-Jul-2014 |
Jesse Hall <jessehall@google.com> |
Compile libsurfaceflinger with Clang and -std=c++11 [DO NOT MERGE] This is necessary to use C11/C++11 stdlib atomics, which the next change will do. This change also fixes a couple bits of syntax that both GCC and Clang refuse to compile in -std=c++11 mode. Change-Id: Ia14d9d6b537a3bb106c23e19a277e48be180754c
ndroid.mk
isplayHardware/VirtualDisplaySurface.cpp
urfaceFlinger.cpp
|
e9b23b6588a44d4205d466faf282de948ce09e51 |
15-Jul-2014 |
Jesse Hall <jessehall@google.com> |
surfaceflinger: Make all sources depend on Android.mk This forces all SurfaceFlinger sources to be recompiled when the Makefile changes; that's overkill sometimes but makes sure everything gets recompiled when compile options (or similar) changes. Change-Id: I2b3c3090fc1c35078e13c77fbb1a78d447c39158
ndroid.mk
|
dc56bf721a9f29621fd57e1d861142fa9b2d3663 |
30-Jun-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add allocateBuffers method"
|
e49ba8e2ed8e17156eb00c8fc8e2285df62bc018 |
24-Jun-2014 |
Dan Stoza <stoza@google.com> |
GLConsumer: Stop using default constructor params Removes the dependency on default constructor parameters for GLConsumer so that a different constructor prototype can safely be added. Change-Id: I0da924bbd4c141edbf305598c1be8bc575654680
urfaceFlingerConsumer.h
|
29a3e90879fd96404c971e7187cd0e05927bbce0 |
20-Jun-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add allocateBuffers method This adds an allocateBuffers method to BufferQueue, which instructs it to allocate up to the maximum number of buffers allowed by the current configuration. The goal is that this method can be called ahead of render time, which will prevent dequeueBuffers from blocking in allocation and inducing jank. This interface is also plumbed up to the native Surface (and, in another change, up to the Java Surface and ThreadedRenderer). Bug: 11792166 Change-Id: I4aa96b4351ea1c95ed5db228ca3ef98303229c74
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
cd13f9da9920b42843071b4ea2d01af55b590e35 |
20-Jun-2014 |
Ruchi Kandoi <kandoiruchi@google.com> |
Merge "SurfaceFlinger: send VSYNC power hints to IPowerManager"
|
ef472ec40a0fbb0ef96b79bef846f20b73da4971 |
02-Apr-2014 |
Ruchi Kandoi <kandoiruchi@google.com> |
SurfaceFlinger: send VSYNC power hints to IPowerManager VSYNC power hints are now sent via binder to IPowerManager. SurfaceFlinger no longer loads a second copy of the PowerHAL. VSYNC power hints are sent in batches and not on per frame basis. Change-Id: Ia5a839ab3c857cffae7089f810b4315d4ed23fcf
ndroid.mk
isplayHardware/PowerHAL.cpp
isplayHardware/PowerHAL.h
ventThread.cpp
ventThread.h
|
eac96b9bfd476e1c7866e5ae685e941be97513dd |
19-Jun-2014 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Fix rect out-of-bounds checks"
|
91b2ca8562763c981c4ce93148db80adb51d0cb6 |
13-Jun-2014 |
Andy McFadden <fadden@android.com> |
Add two new display info fields This adds SurfaceFlinger's app VSYNC offset and buffer deadline values to DisplayInfo. Bug 14612039 Change-Id: Ie0ab21d388fe2764f2b6f71bd1cefa33dc861a73
urfaceFlinger.cpp
|
be31f447984b3ab4ac011353b6b53216b4335e04 |
11-Jun-2014 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Fix rect out-of-bounds checks Rects' right and bottom edges are treated as exclusive, so when checking against maximum width and height, we should use > instead of >=. Change-Id: Ifcdf6813c13fcab1a55f16c21064e765e93d49f0
urfaceFlinger.cpp
|
20071e5028adb6d7ced81843d33e4d0baa0768ed |
11-Jun-2014 |
Wengang Wu <wgw@motorola.com> |
am e3d37a7b: Enable support RGBX_8888 for omap3 * commit 'e3d37a7b55f86f5d005dd67f828dcf51fe60c0f6': Enable support RGBX_8888 for omap3
|
e3d37a7b55f86f5d005dd67f828dcf51fe60c0f6 |
06-Jun-2014 |
Wengang Wu <wgw@motorola.com> |
Enable support RGBX_8888 for omap3 Bug: 14995811 Change-Id: Iaeb5a5ad0e3bcf215613f24f2570ae0d8267c016
ndroid.mk
urfaceFlinger.cpp
|
7227b96a73aaca975df0a04613f317e6f42545ed |
12-Jun-2014 |
Prashant Malani <pmalani@google.com> |
Merge "surfaceflinger: Replace blank/unblank with setPowerMode"
|
1210f2ab822e4c24333abd4af498ff20af0224fa |
11-Jun-2014 |
Wengang Wu <wgw@motorola.com> |
am 20071e50: am e3d37a7b: Enable support RGBX_8888 for omap3 * commit '20071e5028adb6d7ced81843d33e4d0baa0768ed': Enable support RGBX_8888 for omap3
|
645b1f7ffb41d21a60765d1ec54ba82f14a36a59 |
10-Jun-2014 |
Andy McFadden <fadden@android.com> |
Replace "lower power mode" experiment This replaces the previous low-power mode experiment, which discarded refresh events, with a new experiment that alters the refresh period. (see also I2849e5ea335c0d2509fea1c315392bce7f20451d ) The feature is enabled by specifying a nonzero value for the "refresh skip count", which indicates the number of periods to skip. For example, the command: adb shell service call SurfaceFlinger 1016 i32 1 sets a skip count of '1', yielding a 30Hz refresh rate on a device with a 60Hz display. Changing the last value to '2' would set the refresh to 20Hz. '0' returns to the default behavior. Bug 15523257 Change-Id: I00039c22a55750e74035644c63800e4bee1c774a
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
|
5167ec68fed047bf65b1eb0c6091534682135eef |
22-May-2014 |
Andy McFadden <fadden@android.com> |
Disable DispSync resync when not needed If app and SF events aren't using phase offsets, we don't need to maintain the DispSync model. We just turn hardware VSYNC on whenever something wants to draw. This avoids some edge cases where we were doing too much resync work. Also, updated the systrace output. The "VsyncOn" line was a combination of SF and app event threads, and would occasionally be very weird. Removed VsyncOn, renamed VSYNC to VSYNC-app, and added VSYNC-sf. Also, added more details to the --dispsync dumpsys output. Also, renamed global constants to not look like local variables. Bug 15516453 Change-Id: I0da10b72f0d9a7b7eb5202d87cc18967f698adbd
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
|
2c9b11f0291210c9b9513a1a0cce6afebd361b3b |
25-May-2014 |
Prashant Malani <pmalani@google.com> |
surfaceflinger: Replace blank/unblank with setPowerMode We replace the blank/unblank calls in surfaceFlinger with a more generic setPowerMode() routine. Some displays support different power modes (for example, with reduced color palettes). Depending on the use case we should be able to toggle these modes, so as to achieve incremental power savings. Initially, three power modes will be supported: - HWC_POWER_MODE_OFF - HWC_POWER_MODE_DOZE - HWC_POWER_MODE_NORMAL HWC_POWER_MODE_OFF will correspond to blanking the display, while HWC_POWER_MODE_NORMAL will correspond to unblanking. HWC_POWER_MODE_DOZE will put the display into a low power setting, if it is supported in hardware. If such a low power mode is not supported, it should be treated as a call to set the mode to HWC_POWER_MODE_NORMAL. As a consequence of adding the mPowerMode field, the mScreenAcquired is no longer required, and thus references to it are removed and replaced equivalent references to mPowerMode. We also add the glue code to connect the services invocation of setting a power mode and the HAL implementation in HWComposer. Bug: 13472578 Change-Id: I431595ecf16d2f2c94259272db3dd42f29636204 Signed-off-by: Prashant Malani <pmalani@google.com>
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
823bcce3abf536ee130a50551130d10589547cf4 |
29-May-2014 |
Brian Carlstrom <bdc@google.com> |
am 4ae6a267: am f3e4fda0: Merge "Remove dependencies on runtime_libdvm and libdvm.so in general" * commit '4ae6a26719feb21b7fa1cc5f307b591858a30f26': Remove dependencies on runtime_libdvm and libdvm.so in general
|
617f974e63b9e696cf578115a401d1a85534226e |
29-May-2014 |
Brian Carlstrom <bdc@google.com> |
Remove dependencies on runtime_libdvm and libdvm.so in general Bug: 14298175 (cherry picked from commit aefe55f0fb9e69be205497ef4fc3432d2f7a2d8b) Change-Id: I05b1a7dd1ef30b3366b52b46bfc7b39cfb3be198
dmConnection.cpp
|
5cd72e457e8f301b2a73f8046719a0e3e5788e13 |
29-May-2014 |
Brian Carlstrom <bdc@google.com> |
am aefe55f0: Remove dependencies on runtime_libdvm and libdvm.so in general * commit 'aefe55f0fb9e69be205497ef4fc3432d2f7a2d8b': Remove dependencies on runtime_libdvm and libdvm.so in general
|
aefe55f0fb9e69be205497ef4fc3432d2f7a2d8b |
29-May-2014 |
Brian Carlstrom <bdc@google.com> |
Remove dependencies on runtime_libdvm and libdvm.so in general Bug: 14298175 Change-Id: I74b4a3dabf89c6b53bfe688c45d6e1167880fd95
dmConnection.cpp
|
c18790018be5d7ea7061ccbc81f3044e74adc823 |
23-May-2014 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Add sourceCrop to screenshot Adds a sourceCrop Rect parameter to screenshot commands, which allows clients to capture only a portion of the screen instead of the whole screen. Bug: 15137922 Change-Id: I629447573cd34ffb96334cde7ba02490b9ea06d8
isplayDevice.cpp
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
f0058ca0e592485ac9e5a4aedb0dd8fa187625ef |
20-May-2014 |
Andy McFadden <fadden@android.com> |
Add IMPLEMENTATION_DEFINED to dump The "dumpsys SurfaceFlinger" output shows pixel formats in human-readable form now. Add IMPLEMENTATION_DEFINED. Change-Id: If567e34dad4b940fbfb4d0b70c65f6ab8cd5f5e7
isplayHardware/HWComposer.cpp
|
39cde06aee5bc9338b1ed26513233cb54e9b446d |
09-May-2014 |
Andy McFadden <fadden@android.com> |
am b6601961: Merge "DO NOT MERGE Add "dumpsys SurfaceFlinger --dispsync"" into klp-modular-dev * commit 'b66019615da8750588f1233a77b9c686b0a248c3': DO NOT MERGE Add "dumpsys SurfaceFlinger --dispsync"
|
a7f75c0dfbe6cda235123ccbb5a81638a5432f02 |
09-May-2014 |
Andy McFadden <fadden@android.com> |
Merge "Add "dumpsys SurfaceFlinger --dispsync""
|
232f5bc675f92015190e39d46586e6f87cb6fbeb |
08-May-2014 |
Andy McFadden <fadden@android.com> |
DO NOT MERGE Add "dumpsys SurfaceFlinger --dispsync" Dumps the current DispSync state. Bug 14651879 (this is a near-cherrypick of Ide4e6dbd58b117bc1a6b97b57d10cd92ec86dc84) Change-Id: I6e6c8452ede5c2d5098db1b884d28226e77d9a03
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
ain_surfaceflinger.cpp
|
c751e92c56de5f335a36e68607c7a6c627dcd0dc |
08-May-2014 |
Andy McFadden <fadden@android.com> |
Add "dumpsys SurfaceFlinger --dispsync" Dumps the current DispSync state. Bug 14651879 Change-Id: Ide4e6dbd58b117bc1a6b97b57d10cd92ec86dc84
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
ain_surfaceflinger.cpp
|
d0ed571be0886987ddc7285341a8b9cb22f96899 |
09-May-2014 |
Andy McFadden <fadden@android.com> |
Merge "Add mutex"
|
150ecd8c1bd5543bf0a65ac838a7409131106716 |
08-May-2014 |
Andy McFadden <fadden@android.com> |
Add mutex Change-Id: I81072031e74a5cca8384e4e8bce4babf2187d8bb
ispSync.cpp
|
dd02391756dff240c178f7cba21d73d62821007e |
06-May-2014 |
Dan Stoza <stoza@google.com> |
Merge "Enable changing display configuration"
|
7f7da32569f8e0b3d383a40b95f8ac1d55afd801 |
03-May-2014 |
Dan Stoza <stoza@google.com> |
Enable changing display configuration This allows querying and switching display device configurations through the ISurfaceComposer/SurfaceComposerClient interface. Bug: 14320401 Change-Id: I8c22165698950e5da32204c1c4da92122f91a715
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
98e1ebc026726ba045cea69b1b8c371d95db9893 |
02-May-2014 |
Andy McFadden <fadden@android.com> |
Merge "Improve SurfaceFlinger PTS estimation"
|
41d67d7ab4da1c393497a620a116a854b3c618e7 |
26-Apr-2014 |
Andy McFadden <fadden@android.com> |
Improve SurfaceFlinger PTS estimation Get the next refresh time from DispSync instead of guessing based on the current time. Change-Id: I8dc72a3217bfd4e9b4c905034194d1a298cad69a
ispSync.cpp
ispSync.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
urfaceFlinger.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
9471c69773db672254012c43856b0c73b843b4d6 |
02-May-2014 |
Jesse Hall <jessehall@google.com> |
Merge "Handle failed requestBuffer after successful dequeueBuffer"
|
f52b3c88f18c0546526996c839fbce74172e11c7 |
25-Apr-2014 |
Ruchi Kandoi <kandoiruchi@google.com> |
SurfaceFlinger: Adds the functionality to reduce refresh rate to half of the default. Feature added for the low power mode. Change-Id: I2849e5ea335c0d2509fea1c315392bce7f20451d Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
ispSync.cpp
ispSync.h
urfaceFlinger.cpp
|
0b63cd105cae094c21aafaa2bac8322427e75827 |
30-Apr-2014 |
Jesse Hall <jessehall@google.com> |
Handle failed requestBuffer after successful dequeueBuffer If the virtual display consumer disconnects after the VirtualDisplaySurface dequeues a buffer but before it requests it, the request will fail. Previously the error was ignored, and the caller would get a success result but a NULL buffer. Now the dequeued buffer is cancelled and the error propagated to the caller. Bug: 14140551 Change-Id: I91547885c2cf6063dc7a8f02d97f2df282cdde2c
isplayHardware/VirtualDisplaySurface.cpp
|
466954565be8cac018e86e3bddad4e1f4850fa70 |
25-Apr-2014 |
Andy McFadden <fadden@android.com> |
Merge "Update HWC dump format"
|
bba1385d1cfdbe80d7e5f441d943edd4c5708eca |
23-Apr-2014 |
Dan Stoza <stoza@google.com> |
am f3c07d4f: Fix virtual display nesting * commit 'f3c07d4f70f33c2fe5b14ca8fbcdfa4133cc72c7': Fix virtual display nesting
|
4df87bd1f6f68126e5e9081fc1365ae500e375db |
22-Apr-2014 |
Andy McFadden <fadden@android.com> |
Update HWC dump format Shortens a few fields. Displays the format as a string. Change-Id: Ib471f05603763e250bad165db610f8e173e8423a
isplayHardware/HWComposer.cpp
ayer.h
|
f3c07d4f70f33c2fe5b14ca8fbcdfa4133cc72c7 |
05-Feb-2014 |
Dan Stoza <stoza@google.com> |
Fix virtual display nesting This fixes the cycling rendering loop caused by nesting virtual displays by preventing them from recomposing if their contents haven't changed. (cherry-pick from master I600365c0fd5d3ad93e04295d26cf9de177ffc79b) Bug: 12101046 Change-Id: I6182993d53537781aedb522f97a50f06eed8b80f
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
fb39827ebce4637dcba03770f6644cf67e932e06 |
21-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Increase max slots from 32 to 64"
|
febd4f4f462444bfcb3f0618d07ac77e3fc1f6ad |
10-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Increase max slots from 32 to 64 Increases NUM_BUFFER_SLOTS from 32 to 64 and changes the mask returned by IGBC::getReleasedBuffers from 32 to 64 bits. Bug: 13174352 Change-Id: Ie8ef0853916cfb91f83881c7241886bb1950f01a
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
d9822a3843017444364899afc3c23fb5be6b9cb9 |
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueueProducer: add detachNextBuffer Adds a new method, IGBP::detachNextBuffer, that effectively does dequeue + request + detach in a single call, but does not need to know anything about the dequeued buffer, and will not block on dequeue. This is mostly for the upcoming StreamSplitter to use in its onBufferReleased callback. Change-Id: Ie88a69de109003acebaa486a5b44c8a455726550
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
fd34b65f717b84fa06d8c37f41b070f41d0ad3a3 |
11-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add producer buffer-released callback"
|
cf8684b2063c0458da634be0fae7ccabf3f50176 |
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Adding render stats APIs to UiAutomation (framework native)."
|
d85084b2b65828442eafaff9b811e9b6c9ca9fad |
20-Mar-2014 |
Svetoslav <svetoslavganov@google.com> |
Adding render stats APIs to UiAutomation (framework native). bug:12927198 Change-Id: Ibb1c07f7d89e11281e5c1f27f412a29ac6f9c4ab
lient.cpp
lient.h
rameTracker.cpp
rameTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
4cd47b2e0eac8eb1c4a9d69e716e6dc0e2da7227 |
10-Apr-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Fix sideband stream issues"
|
b3d0bdf0dbc19f0a0d7d924693025371e24828fd |
08-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Remove Bn version of create* It turns out that there's no reason to have both I* and Bn* versions of the createBufferQueue method, so I removed the Bn* version. Change-Id: I66aeb09e10458ae540ddf1f38d2d0154ea8f315b
ayer.cpp
onitoredProducer.cpp
onitoredProducer.h
|
afe3081e0e224a3d88da2e8f211e994f833cc6bb |
31-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Fix sideband stream issues - Notify a listener when sideband stream is set - Mark a layer as visible when sideband stream is set, even though no buffer is queued. Change-Id: I9652bf530f2b5ce331533ec1bb3b10a815ca191c
ayer.cpp
|
4098f03d5c9fb8522279ca04da70bec6793b2caa |
05-Apr-2014 |
Ruchi Kandoi <kandoiruchi@google.com> |
Revert "SurfaceFlinger: send VSYNC power hints to IPowerManager" This reverts commit d469a1c3285b974cf2637517cc25727da8f82668.
ndroid.mk
isplayHardware/PowerHAL.cpp
isplayHardware/PowerHAL.h
ventThread.cpp
ventThread.h
|
d469a1c3285b974cf2637517cc25727da8f82668 |
02-Apr-2014 |
Ruchi Kandoi <kandoiruchi@google.com> |
SurfaceFlinger: send VSYNC power hints to IPowerManager VSYNC power hints are now sent via binder to IPowerManager. SurfaceFlinger no longer loads a second copy of the PowerHAL. VSYNC power hints are sent in batches and not on per frame basis. Change-Id: Icc2eee5df56135bd24dc244a84e7c12dd5511fec
ndroid.mk
isplayHardware/PowerHAL.cpp
isplayHardware/PowerHAL.h
ventThread.cpp
ventThread.h
|
f0eaf25e9247edf4d124bedaeb863f7abdf35a3e |
21-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add producer buffer-released callback Add a callback to the producer side, onBufferReleased, which will be called every time the consumer releases a buffer back to the BufferQueue. This will enable a buffer stream splitter to work autonomously without having to block on dequeueBuffer. The binder object used for the callback replaces the generic IBinder token that was passed into IGraphicBufferProducer::connect to detect the death of the producer. If a producer does not wish to listen for buffer release events, it can pass in an instance of the DummyProducerListener class defined in IProducerListener.h, if it even cares about death events (BufferQueue doesn't enforce the token being non-NULL, though perhaps we should). Change-Id: I23935760673524abeafea2b58dccc3583b368710
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
onitoredProducer.cpp
onitoredProducer.h
|
8b834ffd9b1c5df77413e99a3fdfacf6cd89ed52 |
28-Mar-2014 |
Jesse Hall <jessehall@google.com> |
am 1b751203: am 50ef8562: Merge "GraphicProducerWrapper may return false transact status" * commit '1b7512036f3ea55cb1f62777ba6e56aad781f11c': GraphicProducerWrapper may return false transact status
|
1b7512036f3ea55cb1f62777ba6e56aad781f11c |
28-Mar-2014 |
Jesse Hall <jessehall@google.com> |
am 50ef8562: Merge "GraphicProducerWrapper may return false transact status" * commit '50ef8562fe7289495ad8592226f3c4d546119892': GraphicProducerWrapper may return false transact status
|
c2633ce19bdbca4cbf8d6a225ede68a0afd693b9 |
20-Mar-2014 |
bdeng3X <bingx.deng@intel.com> |
GraphicProducerWrapper may return false transact status GraphicProducerWrapper(GPW) changed how the methods of BpGraphicBufferProducer(BpGBP) are executed. First, "fake" BpGBP is created. Its remote is GPW. The GPW has wrapped the real BpGBP. All the method calls to the fake BpGPB will be intercepted by the GPW inside it when the methods run into remote()->transact(). Then the GPW will invoke the transact() of the real BpGBP. And Everything runs well except that the GPW forgets to store the transact status and always return NO_ERROR to the fake BpGBP. It would be disastrous if the binder call of the IGBP failed and the out parameter "reply" of transact() was in unkown state. E.g. the queueBuffer() in the fake BpGBP will try to operate on the "reply". This will crash the SurfaceFlinger. Change-Id: I01b31f64e1fc92804da3f16c1fb1420dcfb3b855 Signed-off-by: bdeng3X <bingx.deng@intel.com> Signed-off-by: Guobin Zhang <guobin.zhang@intel.com>
urfaceFlinger.cpp
|
b9b088375d33a87b201cdbe18be71802e2607717 |
13-Mar-2014 |
Dan Stoza <stoza@google.com> |
Remove deprecated BufferQueue constructor Bug: 13415624 Change-Id: I9fe15e45daa7351f1db34ee75bfee6f19cb347d3
ndroid.mk
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
onitoredProducer.cpp
onitoredProducer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.h
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
8bf3b1a4964188d4ad0b96cd12174f2ba5c1eddd |
18-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Revert "Implement video plane layer""
|
29fa9590ad32d918cb32cc88898ec53d28e1ad5a |
17-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Revert "Implement video plane layer" This reverts commit f837c93a1b392dbc4f7099d0c4fb723e32ca438e. Change-Id: I6a1aa9ad0aca023267dc53d19c950b1535123ca7
ndroid.mk
ayerVideoPlane.cpp
ayerVideoPlane.h
urfaceFlinger.cpp
urfaceFlinger.h
|
993146092f8205d9747f082ccd63c09b536caa4e |
14-Mar-2014 |
Mark Salyzyn <salyzyn@google.com> |
am d4dabf87: am cdbf28b3: Merge "native frameworks: 64-bit compile issues" * commit 'd4dabf872ac0a12e12aebae9032f7d62762c2aeb': native frameworks: 64-bit compile issues
|
73ed82f809a40560fd3a6d53d18e5c846362d764 |
13-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Merge "Add sideband streams to BufferQueue and related classes"
|
d4dabf872ac0a12e12aebae9032f7d62762c2aeb |
13-Mar-2014 |
Mark Salyzyn <salyzyn@google.com> |
am cdbf28b3: Merge "native frameworks: 64-bit compile issues" * commit 'cdbf28b3f7f5327f4cb0eb95b8326bf4c24c87ba': native frameworks: 64-bit compile issues
|
92dc3fc52cf097bd105460cf377779bdcf146d62 |
12-Mar-2014 |
Mark Salyzyn <salyzyn@google.com> |
native frameworks: 64-bit compile issues - Fix format (print/scanf) - Suppress unused argument warning messages (bonus) Change-Id: I05c7724d2aba6da1e82a86000e11f3a8fef4e728
ispSync.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWComposer.cpp
essageQueue.cpp
enderEngine/GLES11RenderEngine.cpp
enderEngine/Program.cpp
|
88a459a9b37f3b4eb3c9a044ad7af30616ad66c9 |
12-Mar-2014 |
Dan Stoza <stoza@google.com> |
VirtualDisplaySurface: no attach/detach support Change-Id: I630dd6e352940318c33a4e072d2f33a6ec58c556
isplayHardware/VirtualDisplaySurface.cpp
|
c9ed7d376882ff3c32913473fecd729c804dad0e |
12-Mar-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Allow detaching/reattaching buffers"
|
399184a4cd728ea1421fb0bc1722274a29e38f4a |
04-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Add sideband streams to BufferQueue and related classes Sideband streams are essentially a device-specific buffer queue that bypasses the BufferQueue system. They can be used for situations with hard real-time requirements like high-quality TV and video playback with A/V sync. A handle to the stream is provided by the source HAL, and attached to a BufferQueue. The sink HAL can read buffers via the stream handle rather than acquiring individual buffers from the BufferQueue. Change-Id: Ib3f262eddfc520f4bbe3d9b91753ed7dd09d3a9b
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
9f3053de78630815d60cf48a2cf2348cc5867c45 |
07-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Allow detaching/reattaching buffers Adds detachBuffer and attachBuffer calls to both the producer and consumer sides of BufferQueue. Buffers may be detached while dequeued by the producer or acquired by the consumer, and when attached, enter the dequeued and acquired states, respectively. Bug: 13173343 Change-Id: Ic152692b0a94d99e0135b9bfa62747dab2a54220
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
cd554e36a85e39556149ce4609da6e5fe0a6a176 |
10-Mar-2014 |
Alan Viverette <alanv@google.com> |
Don't simulate color space after correction Change-Id: Ied0918ffa2be5f9382e693f442b142b3e068e735
ffects/Daltonizer.cpp
|
55886cb12828a2cb57b82efaf30050ea9dc418bb |
08-Mar-2014 |
Greg Hackmann <ghackmann@google.com> |
am 7429e4f7: am 112aa42e: Merge "SurfaceFlinger: fix 64-bit format string warnings" * commit '7429e4f7d43cd42563ce77a3a4a861a392bc750f': SurfaceFlinger: fix 64-bit format string warnings
|
7429e4f7d43cd42563ce77a3a4a861a392bc750f |
08-Mar-2014 |
Greg Hackmann <ghackmann@google.com> |
am 112aa42e: Merge "SurfaceFlinger: fix 64-bit format string warnings" * commit '112aa42e91b4bb0cde334753e2ad05e3f248b377': SurfaceFlinger: fix 64-bit format string warnings
|
86efcc0cbc1d94250b72ef1f2ea8700a04cd2781 |
07-Mar-2014 |
Greg Hackmann <ghackmann@google.com> |
SurfaceFlinger: fix 64-bit format string warnings Change-Id: Idacfbf0601743fba1c5de7632201a66a307a2710 Signed-off-by: Greg Hackmann <ghackmann@google.com>
isplayDevice.cpp
ventThread.cpp
rameTracker.cpp
urfaceFlinger.cpp
|
e4cf2f20dd10bfaf96d636bb5363aa25f8bc95ae |
27-Feb-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Implement video plane layer"
|
f837c93a1b392dbc4f7099d0c4fb723e32ca438e |
24-Feb-2014 |
Wonsik Kim <wonsik@google.com> |
Implement video plane layer Binding with video source will follow. Change-Id: Ic14e9757f5b61f4055cbeda47c1bafae0a621abb
ndroid.mk
ayerVideoPlane.cpp
ayerVideoPlane.h
urfaceFlinger.cpp
urfaceFlinger.h
|
a9d27063a1d5586116acb50c5a37ff29684993eb |
25-Feb-2014 |
Jesse Hall <jessehall@google.com> |
am 9d65631f: am c9bf3ba4: Merge "Virtual Display async mode is overridden" * commit '9d65631f5de153b50331d9f63225fe60ba70f8bc': Virtual Display async mode is overridden
|
9d65631f5de153b50331d9f63225fe60ba70f8bc |
25-Feb-2014 |
Jesse Hall <jessehall@google.com> |
am c9bf3ba4: Merge "Virtual Display async mode is overridden" * commit 'c9bf3ba411c66dd1d977c81f1aca08109cbf8c86': Virtual Display async mode is overridden
|
4ee5696dfbcea1078b24e7c089de74e7cf4e55ca |
21-Feb-2014 |
John Dong <johnd@broadcom.com> |
Virtual Display async mode is overridden Virtual Display async setting is overridden by eglApi.c causing stall during composition. Set the async mode after eglCreateWindowSurface() b/13139121 Change-Id: I336ca145552e387217cd8bea6e4b7f5f490a274d Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
isplayDevice.cpp
|
d14b0c1860c9a16297064fbec84395369bbd74af |
21-Feb-2014 |
Colin Cross <ccross@android.com> |
am 361d9df3: am 6b4ecf31: Merge "surfaceflinger: add BoardConfig.mk variable to force 32-bit" * commit '361d9df38cf9760baffc863d5364a1df9cf8be6b': surfaceflinger: add BoardConfig.mk variable to force 32-bit
|
361d9df38cf9760baffc863d5364a1df9cf8be6b |
21-Feb-2014 |
Colin Cross <ccross@android.com> |
am 6b4ecf31: Merge "surfaceflinger: add BoardConfig.mk variable to force 32-bit" * commit '6b4ecf314461067c0e05130edaf785fb010f471a': surfaceflinger: add BoardConfig.mk variable to force 32-bit
|
89450d45ac6ac70c8b36872e9a0c53457e24be61 |
21-Feb-2014 |
Colin Cross <ccross@android.com> |
surfaceflinger: add BoardConfig.mk variable to force 32-bit Individual devices may need to force surfaceflinger to compile for 32-bit if they don't have 64-bit GL libraries. Change-Id: I3703b2f8e36e90cf125d9ed5e6318c3506861948
ndroid.mk
|
44c35ec4a94eb33f7ee0df085c5d2d56d99962cf |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Allow "opaque" flag to be updated. DO NOT MERGE Moves the "opaque layer" from Layer to Layer::State. This allows it to be updated as part of a transaction. Bug 12387406 Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
c701401f8cec2e5309f8b57e2b97baced5093274 |
15-Feb-2014 |
Dan Stoza <stoza@google.com> |
Allow disabling layer rotation during screenshots Add the ability to ignore layers' transformation matrices during screenshot capture, which will allow the window manager to capture unrotated images for recents during the device rotation animation. Bug: 11805195 Change-Id: I854d87bc84ca06ef9a054a454af1c080ee66fbb8
isplayDevice.cpp
ayer.cpp
ayer.h
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
urfaceFlinger.h
|
7143316af216fa92c31a60d4407b707637382da1 |
05-Feb-2014 |
Dan Stoza <stoza@google.com> |
Fix virtual display nesting This fixes the cycling rendering loop caused by nesting virtual displays by preventing them from recomposing if their contents haven't changed. Bug: 12101046 Change-Id: I600365c0fd5d3ad93e04295d26cf9de177ffc79b
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
d592f32df91a857a6649699281f497586e478840 |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Merge "Allow "opaque" flag to be updated"
|
4125a4ffaf374ca9c0773f256998557d3325343e |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Allow "opaque" flag to be updated Moves the "opaque layer" from Layer to Layer::State. This allows it to be updated as part of a transaction. Bug 12387406 Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
ef11a6c887891be04c4ca9cc60bcad8d022189b3 |
28-Jan-2014 |
Jesse Hall <jessehall@google.com> |
am ade9a911: am f65ebc3b: am f5bcb391: Merge "SurfaceFlinger: mFbProducerSlot initailization" * commit 'ade9a911d04dbd4bfbd3e80a917ea67a581b4797': SurfaceFlinger: mFbProducerSlot initailization
|
fdfde88d0bcd0b293c9deb37f49254bdd97e4dac |
23-Jan-2014 |
mayank parshar <mayankp@broadcom.com> |
SurfaceFlinger: mFbProducerSlot initailization b/12487813 SurfaceFlinger crash is observed during simulation of Secondary display Note: change 14e8b01a761180250671f3d6494532d8bd04fa8e removed the initialization leading to the crash when simulating secondary display. Restore the initialization to solve the problem. Change-Id: Iae5845fb82735e01de5cc0dc582d13c27e3c614f Signed-off-by: mayank parshar <mayankp@broadcom.com> Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
isplayHardware/VirtualDisplaySurface.cpp
|
467113c6fcb1f4714d84d6d097c5525ae0130d00 |
26-Jan-2014 |
Jesse Hall <jessehall@google.com> |
am 25f75c36: am 8c303f7e: am fcf9c1ba: Merge "SurfaceFlinger: mFbFence initialization" * commit '25f75c361098086ffa2b87dcc3f22ac5f64c05be': SurfaceFlinger: mFbFence initialization
|
b988f85fc44efd24f11f2e5ab8fb9b653916f666 |
10-Jan-2014 |
mayank parshar <mayankp@broadcom.com> |
SurfaceFlinger: mFbFence initialization MobC00383030 b/12487813 SurfaceFlinger crash is observed while connecting to Wi-Fi display. Note: change 14e8b01a761180250671f3d6494532d8bd04fa8e removed the initialization leading to the crash when running through the HWC composition path. Restore the initialization to solve the problem. Change-Id: I581defc7135ac512080c0da06a62b1dae7d218c4 Signed-off-by: mayank parshar <mayankp@broadcom.com> Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
isplayHardware/VirtualDisplaySurface.cpp
|
524672571f1df138eb913e672aaa74e0257aa8c0 |
03-Jan-2014 |
Jesse Hall <jessehall@google.com> |
am 03691218: am e5f7bf74: am b6c21004: Merge "Implement per-display EGLConfig and configless EGLContext" * commit '03691218ada2fb7e084ad4ae7ddd54f9b28d5611': Implement per-display EGLConfig and configless EGLContext
|
10ca42cbdc75c6a36d0b72dadbe845d990e31e95 |
03-Jan-2014 |
Jesse Hall <jessehall@google.com> |
am 4c37d088: am 6c7dcfa9: am 662d3134: Merge "Move EGLConfig selection to RenderEngine" * commit '4c37d0886ca06c290e205cad2798406361bbbf53': Move EGLConfig selection to RenderEngine
|
19e872912af66c53a4350afcc333bbafaf6a2294 |
24-Dec-2013 |
Jesse Hall <jessehall@google.com> |
Implement per-display EGLConfig and configless EGLContext Bug: 12230666 Change-Id: Icca608b108cbdcab9cf01a9236d8cdbda000a836 Signed-off-by: Jesse Hall <jessehall@google.com>
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
|
05f8c703d4a050669ff8f406be3a9dc2357935f7 |
24-Dec-2013 |
Jesse Hall <jessehall@google.com> |
Move EGLConfig selection to RenderEngine Bug: 12230666 Change-Id: I8d1111a7e0fd9d9e2525e6a80da8ce46d7dd085d Signed-off-by: Jesse Hall <jessehall@google.com>
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
494600a755971db9638dd8b85053b410d5ca265b |
19-Dec-2013 |
Brian Carlstrom <bdc@google.com> |
am 285bfefb: am c1bf6fa9: am 7fea2361: Merge "Track Looper decoupling from ALooper" * commit '285bfefb01f24e98348628c115eb6c524417ea82': Track Looper decoupling from ALooper
|
fe761ab6c72bdcdb8a2cf0df1524f526d8609fee |
13-Dec-2013 |
Brian Carlstrom <bdc@google.com> |
Track Looper decoupling from ALooper Change-Id: I612f0de7002e24948a4cbbea7b416b4fbb3929aa
essageQueue.cpp
|
324c69b542cf051e86cead592ff6a103ce1dbb34 |
08-Nov-2013 |
Jesse Hall <jessehall@google.com> |
am 1ee45c2d: am 14e8b01a: Don\'t change the framebuffer target until we render a new one * commit '1ee45c2d2d816ee912624d81ff1b0aaa98e8fa74': Don't change the framebuffer target until we render a new one
|
14e8b01a761180250671f3d6494532d8bd04fa8e |
07-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Don't change the framebuffer target until we render a new one Continuing to send the last-rendered framebuffer to HWC on subsequent frames allows the HWC to read partially-composed regions that haven't changed, instead of re-composing from scratch. Bug: 11573910 Change-Id: I8829877d2a06001f1e1b3f168cbba71c7b217b2d
isplayHardware/VirtualDisplaySurface.cpp
|
ad78055746c9b1b3f0563133971800812bfed1f6 |
07-Nov-2013 |
Jesse Hall <jessehall@google.com> |
am 2d32aa59: am 356c2386: Merge "Provide virtual display output buffer to HWC in prepare" into klp-dev * commit '2d32aa5918de1c12c54a32e8eb28bbc96d430796': Provide virtual display output buffer to HWC in prepare
|
356c23865d588659f1eea55bbe7e2b16b9cff08e |
07-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Provide virtual display output buffer to HWC in prepare" into klp-dev
|
45c9c0477de6d376019d458fbe17c07cf64f72ca |
06-Nov-2013 |
Jesse Hall <jessehall@google.com> |
am f111ee13: am 49318631: Merge "Don\'t use implementation-defined format with CPU consumers" into klp-dev * commit 'f111ee13a6f5d8606c5dc7a5cc07cedf929e69a8': Don't use implementation-defined format with CPU consumers
|
493186312a9a8c0215da0d6d3a9b0369491c0796 |
06-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Don't use implementation-defined format with CPU consumers" into klp-dev
|
f7a675837bdad03d398c9b6f0f593b9c51c679b5 |
06-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Provide virtual display output buffer to HWC in prepare We were already making sure the HWComposer class had the handle before prepare, but it wasn't passing the handle along to HWC as intended. Partial fix for bug: 11430248 Change-Id: I25f672c4fdfaa6a81fe0acb24d9ad05153ee17dc
isplayHardware/HWComposer.cpp
|
1a8e6bf9661a4939f3c70e055143575d77fc6756 |
05-Nov-2013 |
Jamie Gennis <jgennis@google.com> |
am 39c5ea2c: am ee874caa: Merge "DispSync: remove delay when enabling vsync events" into klp-dev * commit '39c5ea2caaddd7ea44eaeed38d3760fbc421ad56': DispSync: remove delay when enabling vsync events
|
497ba0e08503806571b52ebe27cc7eee4c0e71a7 |
05-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Don't use implementation-defined format with CPU consumers If the virtual display surface is being consumed by the CPU, it can't be allowed with HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED since there is no way for the CPU consumer to find out what format gralloc chose. So for CPU-consumer surfaces, just use the BufferQueue's default format, which can be set by the consumer. A better but more invasive change would be to let the consumer require a certain format (or set of formats?), and disallow the producer from requesting a different format. Bug: 11479817 Change-Id: I5b20ee6ac1146550e8799b806e14661d279670c0
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
41c3c496ff507554da1c6099c600809608bdbb81 |
29-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
DispSync: remove delay when enabling vsync events This change fixes a bug that caused an extra frame of latency when enabling vsync event callbacks in DispSync. The bug was related to the logic that prevents the two events from firing with very little time between them due to updates to the vsync model. Bug: 11479720 Change-Id: Ie7eaff9e92ffb7b7b6cb4d3d4402c96cbd29af7e
ispSync.cpp
|
45cb6ec7158939964f96a2a7ff6dc7591ebf9bb5 |
25-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 96002be4: am c354effe: Fix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS * commit '96002be4bd4b8bbfecba2cc45bdf0b47f06464bc': Fix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS
|
c354effe97be26638618e3bc0da81a3f8b384b20 |
25-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Fix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS related to b/8316155 - Implement HWComposer 1.3 w/ virtual display support Change-Id: I2dc8d65a74174aa833cc491264f97f1f2df49307
ndroid.mk
isplayHardware/VirtualDisplaySurface.cpp
|
6fdaaf5c7cf7c511a5e3cea8aaafdad7ff12e596 |
24-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am a54a8b63: am 93fcb823: Merge "Add a boardconfig to force HWC composition of virtual displays" into klp-dev * commit 'a54a8b63d191d2c1c4669f89b32c4b8a9c04cd31': Add a boardconfig to force HWC composition of virtual displays
|
014dd9f0f28c3992f9fae62a62fa7e8bfe750a06 |
24-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 48775386: am c5807f90: Merge "Use implementation-defined format when HWC writes to output buffer" into klp-dev * commit '487753868aa86902f723dbdedd7083783701188d': Use implementation-defined format when HWC writes to output buffer
|
6a968462f9ce4d93d81fcc13672073e3e6eb2e0f |
04-Oct-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
Add a boardconfig to force HWC composition of virtual displays When this boardconfig is defined, even when all virtual display composition is done by GLES, the HWC will be forced to copy from the GLES framebuffer to the output buffer. On some hardware this allows HWC to do format conversions that would otherwise have to be done by the consumer, with worse power and/or performance. Bug: 8316155 Change-Id: If980ecc589f138cef063eafa757f7f748196713e
ndroid.mk
isplayHardware/VirtualDisplaySurface.cpp
|
1e27ba234c5bfd4f6535ee221a6c20407a50f868 |
27-Sep-2013 |
Jesse Hall <jessehall@google.com> |
Use implementation-defined format when HWC writes to output buffer When GLES isn't writing to the output buffer directly, request an implementation-defined format with minimal usage flags, leaving the format choice up to gralloc. On some hardware this allows HWC to do format conversions during composition that would otherwise need to be done (with worse power and/or performance) by the consumer. Bug: 8316155 Change-Id: Iee6ee8404282036f9fd1833067cfe11dbadbf0bf
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
cd65a2c51e2f0d7756274fad0ad2c2fe698d2229 |
16-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am bbfbe93c: am 0a645cc5: SurfaceFlinger: give SF its own vsync phase * commit 'bbfbe93c0d2d6c7818e23219d2925f02ddf5bd92': SurfaceFlinger: give SF its own vsync phase
|
5727fc08ba39bb53e9191447e1b3144ea244ae0e |
16-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am 47c772e8: am d1700756: SurfaceFlinger: Add EventControlThread * commit '47c772e8ec28eb0a3df9c8edd252f292c7c8e152': SurfaceFlinger: Add EventControlThread
|
c6694b4cb4829164cd490869c557103f310fd761 |
16-Oct-2013 |
Jesse Hall <jessehall@google.com> |
resolved conflicts for merge of e94d204a to master Change-Id: Idb2030dbb25a2e4b972492587558b25a305e68bd
|
0a645cc5a935e67a8d1effc7679a838160b971d8 |
15-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: give SF its own vsync phase This change allows SurfaceFlinger to run at a different vsync phase offset from that used by external listeners. Bug: 11175503 Change-Id: I561c53a5659fa6dc1e3e4ae30340f3c1a6adceb4
ndroid.mk
urfaceFlinger.cpp
urfaceFlinger.h
|
d1700756ec9520c3fba22f9a14fd064a6e288810 |
14-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Add EventControlThread This change adds a new thread for calling HWComposer's eventControl asynchronously. The DispSync-based vsync approach ends up enabling and disabling HWComposer's vsync callbacks at arbitrary times, and some HWComposer implementations do not have these calls optimized. Bug: 11175503 Change-Id: I719be82bd200b391c61d40863b991c7b59acdfd6
ndroid.mk
ventControlThread.cpp
ventControlThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
adbb3062e1a3d675531367c055572664fc46280d |
15-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am a04fd39c: am 8e26b28b: Filter out vsync events from HWC with duplicate timestamps * commit 'a04fd39cb88bb6df5f639464f70795f58cd0aefa': Filter out vsync events from HWC with duplicate timestamps
|
948fe0ce74c13e1bbff233883c158519fa8fb293 |
14-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Disable hardware vsync when blanking the screen Bug: 11220224 Change-Id: I99d0a42e1a6bb0aaf89706f6d100e9ef2a5deaa4
urfaceFlinger.cpp
urfaceFlinger.h
|
8e26b28be62e7c0e093900540db5e5cdcf52a0ff |
14-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Filter out vsync events from HWC with duplicate timestamps Bug: 11220224 Change-Id: I4efe0b66ea8969bf0ec3c4fcb325d354c8a0c315
isplayHardware/HWComposer.cpp
|
4df2dae1c9265460c50635d2d37a547171239473 |
14-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 44b09f8b: am 44e45cfe: Merge "DispSync: don\'t compensate for wakeup latency" into klp-dev * commit '44b09f8b55bef56e06ad584db231916c17e30f5b': DispSync: don't compensate for wakeup latency
|
9c8b3097e6a6023af0432a369740a98510faf975 |
14-Oct-2013 |
Andy McFadden <fadden@android.com> |
am af4ae923: am 6410c8c4: Merge "Use black for blackout layer" into klp-dev * commit 'af4ae923c3f8a2e40d74eb6291da16b4a6514449': Use black for blackout layer
|
44e45cfeb37a04c206730b12ff001525ebe42a7b |
13-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Merge "DispSync: don't compensate for wakeup latency" into klp-dev
|
6410c8c4097f1a3246aa3d03b3291d47f982bc4b |
11-Oct-2013 |
Andy McFadden <fadden@android.com> |
Merge "Use black for blackout layer" into klp-dev
|
c6f216955966e93ea983ba800e651af3de6c90e3 |
11-Oct-2013 |
Andy McFadden <fadden@android.com> |
Use black for blackout layer SurfaceFlinger was rendering dark purple for secure content, which showed up when we took a screen shot for the orientation change animation. Use black instead. Bug 11157921 Change-Id: I3895e8168891d49dc5b84eed599bcd0a303bb70a
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES20RenderEngine.cpp
|
19cd5bc78c6aa3fc4b828e6e33d0a52e0e34ac91 |
11-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 8c76d2a1: am 5c65efe2: Merge "Wake up disp sync thread when setting display period" into klp-dev * commit '8c76d2a16ede579fd2069647ff73591bb6d6a235': Wake up disp sync thread when setting display period
|
5c65efe2b1d632226f02751e6b1d3cfd7c8ecb26 |
11-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Wake up disp sync thread when setting display period" into klp-dev
|
72f69d9f2348efa580c7e1e1659865c638e41357 |
10-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Wake up disp sync thread when setting display period Bug: 10624956 Change-Id: I272c15f319521bfbd1bb70451366c7dd84d60bf9
ispSync.cpp
|
95e4a7d9f357d276fa0dcecd3936b0e95c473a4f |
10-Oct-2013 |
Andy McFadden <fadden@android.com> |
am c00ab7b5: am 2d8d120d: Fix blank / partial screenshots * commit 'c00ab7b5aafb7625ad7ebd2af107936df3efc98b': Fix blank / partial screenshots
|
0d5c60edf11fdded738acf3f78a0c667599cd60d |
10-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
DispSync: don't compensate for wakeup latency This change removes the wakeup latency compensation from the software-generated vsync events. Choreographer can't handle timestamps in the future, so don't aim for early wake-ups with the expectation that the actual wake-up will be late. Bug: 11153576
ispSync.cpp
|
2d8d120dc175c131a75e93fb1de61a9f432ddce9 |
10-Oct-2013 |
Andy McFadden <fadden@android.com> |
Fix blank / partial screenshots The screen capture code wasn't waiting for the render to finish, so sometimes you'd see an empty or partial image. Bug 11131777 Change-Id: Ic64087322ce3bb15bb5f4fb1eb07579880fe6197
urfaceFlinger.cpp
|
b85d2cf0a20e46261db8fee4839840f0ef715c68 |
09-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
resolved conflicts for merge of 790b6d09 to master
|
faf77cce9d9ec0238d6999b3bd0d40c71ff403c5 |
31-Jul-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: SW-based vsync events This change adds the DispSync class, which models the hardware vsync event times to allow vsync event callbacks to be done at an arbitrary phase offset from the hardware vsync. This can be used to reduce the minimum latency from Choreographer wake-up to on-screen image presentation. Bug: 10624956 Change-Id: I8c7a54ceacaa4d709726ed97b0dcae4093a7bdcf
ndroid.mk
ispSync.cpp
ispSync.h
isplayHardware/HWComposer.cpp
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
794c5ba973f6d107a8277f3f389cb3051c6ce5d7 |
04-Oct-2013 |
Alan Viverette <alanv@google.com> |
Simplify color adjustment using homogeneous coordinates Change-Id: Ie31abacb134c29d82a6041fa7d521f68a1a273af
enderEngine/ProgramCache.cpp
urfaceFlinger.cpp
|
c5214289d6279d71d7396a941e5ad6969ba053dc |
02-Oct-2013 |
Dave Burke <daveburke@google.com> |
am 9b4b1180: am 06993503: Merge "only clear FB when asked for the opaque layer" into klp-dev * commit '9b4b1180941f4d2ef9d3e7bd26bc1855ff9fb141': only clear FB when asked for the opaque layer
|
0699350336cccc244bb6c52a0d910f9599253812 |
02-Oct-2013 |
Dave Burke <daveburke@google.com> |
Merge "only clear FB when asked for the opaque layer" into klp-dev
|
fee52e20b9fc9a02dbeeb75458972c14682c5400 |
02-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am f3fa0712: am 93573e91: Merge "Treat composition frames with no layers as using GLES composition" into klp-dev * commit 'f3fa0712282e760c316f44cba05f884f9399b98f': Treat composition frames with no layers as using GLES composition
|
10a9ca1c6934092132bb7d5f0073dec68c017294 |
02-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 72d270c5: am b716e570: Set the outbuf acquire fence after we actually have it. * commit '72d270c5f0918d1dc7a6a1774b80469c9f28b7ea': Set the outbuf acquire fence after we actually have it.
|
93573e91c22ba8329222c69cd7f099f5703fb444 |
02-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Treat composition frames with no layers as using GLES composition" into klp-dev
|
0c6fd94c13402ef56010cc2f122768bf9bf35dd9 |
02-Oct-2013 |
Jesse Hall <jessehall@google.com> |
am 92d7c3ee: am b65f32eb: Fix two EGLConfig selection bugs * commit '92d7c3ee03109cf2d465a103b828b7d7d3ee9848': Fix two EGLConfig selection bugs
|
b716e57048e945d5bceda33c2434c65d06464dba |
02-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Set the outbuf acquire fence after we actually have it. In GLES-only mode, we don't have the outbuf acquire fence until after GLES composition is done for the frame. We were setting the fence in HWC's state immediately after dequeueing the buffer from the consumer, before GLES had started. This fence got passed through HWC and on to the consumer, so the consumer was reading the buffer before GLES was done writing to it. Now we update HWC's state just before set(), when we know we have the right fence. Bug: 11000763 Change-Id: Iea9db4c69634c352dc2d600f0bdb6bef2a432636
isplayHardware/VirtualDisplaySurface.cpp
|
ac68302e1cde8b931073929311fd6654a3253fc7 |
02-Oct-2013 |
Mathias Agopian <mathias@google.com> |
only clear FB when asked for the opaque layer a layer need to be considered NOT opaque if it has a plane-alpha. Bug: 10846930 Change-Id: Ibd8981b63ede4560c7096bacc4cff46a7eb2a8bb
urfaceFlinger.cpp
|
d05a17fbb3772051d287f1f8830a7f00964f7ec2 |
01-Oct-2013 |
Jesse Hall <jessehall@google.com> |
Treat composition frames with no layers as using GLES composition When there are no window layers for a display, SurfaceFlinger clears the undefined region using GLES. Some of the places that check for GLES composition weren't considering this special case, in particular: - We were skipping the eglSwapBuffers() on these frames. - We were putting VirtualDisplaySurface in HWC-only composition mode. This change centralizes the logic for this special case. Bug: 10957068 Change-Id: I2deaf2ed101e8ea76708862a6bb67751b6078794
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
b65f32ebe2c86869b07ac1c986660dfb2187b7d3 |
28-Sep-2013 |
Jesse Hall <jessehall@google.com> |
Fix two EGLConfig selection bugs This fixes two bugs introduced by Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d (a) There is no invalid EGLConfig value, in particular zero is valid. Checking return values of eglGetConfigs and eglChooseConfig is the only way to determine success. (b) The "simple" EGLConfig query used as the emulator fallback should not include EGL_RECORDABLE; the emulator doesn't have it. Bug: 10935622 Change-Id: Ib798a24e7cf06a679811c46eaa45d39174a715ec
urfaceFlinger.cpp
urfaceFlinger.h
|
ff98f3e598cc5ccf8daaf18ba93600b5b1a61a26 |
26-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 338acd68: am 86206b41: Merge "fix initialization of framebuffer target crop rect on hwc 1.3" into klp-dev * commit '338acd6869532f2684cbd1e4f273eaffc6d4ef6d': fix initialization of framebuffer target crop rect on hwc 1.3
|
2b3d0c407987f6f47ccc2e9ebd6c61dbd0c37306 |
26-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 0ff4b283: am 6da15f46: fix crashers with wifi/virtual displays * commit '0ff4b28396d77a0ed2f191836895a891108a8b5b': fix crashers with wifi/virtual displays
|
86206b41b2ff000e086301c6bafb8da577e563b2 |
26-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Merge "fix initialization of framebuffer target crop rect on hwc 1.3" into klp-dev
|
8f63c2049b93819c41d390fc4222b9307e3a61c7 |
26-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix initialization of framebuffer target crop rect on hwc 1.3 Bug: 10936771 Change-Id: If283e5e231ca34b93e0b1784bb4e8e4c7bfd75de
isplayHardware/HWComposer.cpp
|
6da15f46f5f8b38e31384d641f8d3db2c3c6ea30 |
26-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix crashers with wifi/virtual displays Bug: 10647742 Change-Id: I4b8ed9da52ef95af3a3b3a04b98514a3776a674d
isplayHardware/VirtualDisplaySurface.cpp
urfaceFlinger.cpp
|
1c479c56da44c8942ab3d858ebcc19e4a6f76786 |
20-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 754bad45: am d555684c: reinstate black-screenshot debugging code * commit '754bad4534e9a2de8b4e3ecbe097993c71246f91': reinstate black-screenshot debugging code
|
4d5755389d111eb58ba5bdade84a39614dd222ed |
20-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am f589dd29: am e2a3e872: Merge "Fix GLES context version selection" into klp-dev * commit 'f589dd2915587994d3dd36eff2191962fe0b71c0': Fix GLES context version selection
|
d555684cb36dfb959694db76962e570184f98838 |
20-Sep-2013 |
Mathias Agopian <mathias@google.com> |
reinstate black-screenshot debugging code turned off by default. Bug: 10809349 Change-Id: I3e6b8c7860e6b0e122b8f07de4020967cd1f005c
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
6de9653ac876a4cae03d32c1134c56c795b1b11c |
20-Sep-2013 |
Christopher Ferris <cferris@google.com> |
Merge "Remove unnecessary include."
|
d142f4b787abae7a5c392ded0dd2741574a0bce2 |
20-Sep-2013 |
Christopher Ferris <cferris@google.com> |
Remove unnecessary include. All these files are including utils/CallStack.h, but none of the code uses any CallStack objects. Change-Id: I38c3a346a3bd0ddbff368d0f7f8b3f3d78fc0432
isplayHardware/HWComposer.cpp
|
2185f8b420ee1b150f761893a9c47cffff645cde |
19-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Fix GLES context version selection Explicitly selects an ES 2.0 config first, then an ES 1.x config, before attempting the fallback path for the emulator. Bug: 10820214 Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d
enderEngine/RenderEngine.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
0f0e845113b02d1a3a00271d3b5449bee7053dd2 |
19-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am a7e1660b: am c1c05de4: fix camera API 2.0 orientation * commit 'a7e1660b257326f99261e7c9b2d58c9d2e68d0b0': fix camera API 2.0 orientation
|
c1c05de415854eb7a13a16b7e22a22de8515123a |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix camera API 2.0 orientation we add a flag to ANativeWindow::setBufferTransform that means "apply the inverse rotation of the display this buffer is displayed onto to". Bug: 10804238 Change-Id: Id2447676271950463e8dbcef1b95935c5c3f32b2
isplayDevice.cpp
isplayDevice.h
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
7229e98229a6bc218d5c6fd50209134a78754149 |
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 3f342c11: am 02b62df7: Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev * commit '3f342c113360eacc1e9c1ff481cb03f700a50117': Make sure do disconnect from a BQ when its client dies.
|
02b62df7119b27c89d91d96938d8f4f5232b296b |
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev
|
cd9fd427ac4ee8312fd42b8e643805861d9d94b2 |
17-Sep-2013 |
Jesse Hall <jessehall@google.com> |
am b8080d9a: am 2a36497e: Merge "Stop using default value for Surface producerControlledByApp parameter" into klp-dev * commit 'b8080d9a3b760617c5dde7b1d2d63aa2bcecf3a7': Stop using default value for Surface producerControlledByApp parameter
|
365857df8b94c959dea984a63013f6e7730ef976 |
12-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Make sure do disconnect from a BQ when its client dies. Bug: 5679534 Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
83cafffeac037ab2f9d00f98f8d2f3da8fc9b857 |
17-Sep-2013 |
Jesse Hall <jessehall@google.com> |
Stop using default value for Surface producerControlledByApp parameter Bug: 10785749 Change-Id: Ifbf9340e5eabe621a69e990ec3e05ac51f8db66a
isplayDevice.cpp
urfaceFlinger.cpp
|
9c5a3335110769993d3fe997bdf1d594954d4304 |
13-Sep-2013 |
Alan Viverette <alanv@google.com> |
Add API for pushing color transforms to SurfaceFlinger BUG: 9057596 Change-Id: Iea0953366eac875b7968897a75472c25a137edb5
enderEngine/ProgramCache.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
ff2ed70fa30f04b90dd1a2c06ec2319e157152d7 |
02-Sep-2013 |
Mathias Agopian <mathias@google.com> |
color blindness enhancement This is an attempt at improving the experience of users with color vision impairement. At this time this feature can only be enabled for debugging: adb shell service call SurfaceFlinger 1014 i32 PARAM with PARAM: 0 : disabled 1 : protanomaly/protanopia simulation 2 : deuteranomaly/deuteranopia simulation 3 : tritanopia/tritanomaly simulation 11, 12, 13: same as above w/ attempted correction/enhancement The enhancement algorithm tries to spread the "error" such that tones that would otherwise appear similar can be distinguished. Bug: 9465644 Change-Id: I860f7eed0cb81f54ef9cf24ad78155b6395ade48
ndroid.mk
ffects/Daltonizer.cpp
ffects/Daltonizer.h
ayer.cpp
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/Mesh.h
enderEngine/Program.cpp
enderEngine/Program.h
enderEngine/ProgramCache.cpp
enderEngine/ProgramCache.h
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
ransform.cpp
ransform.h
|
9b5534b0e5e1510f56e6a2c58ad0816167603ebd |
31-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge changes I8283a989,I64add89a into klp-dev * changes: switch to use mat4 vector and matrix classes for graphics use
|
87967c186995d1500875c495cba8f04f7cff76cc |
30-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Force async behavior for the virtual display output BufferQueue" into klp-dev
|
8db92553e9e6263cd41eaf1a1ebc9e3f88f92b5f |
30-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Force async behavior for the virtual display output BufferQueue Bug: 10551087 Change-Id: I40bbb2b87d64420939a0ea309254f281437dab56
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
19733a32799f792125913e746e8644d16f8dc223 |
29-Aug-2013 |
Mathias Agopian <mathias@google.com> |
minor clean-up of the GLESRenderer Change-Id: I978dea25b7687fbbbb283f09c24e115d9bad49a2
ayer.cpp
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
|
931bda1c472ba8c8e965bdba6757ff94154df903 |
29-Aug-2013 |
Mathias Agopian <mathias@google.com> |
reset the gl viewport at each frame for each display Bug: 10097128, 9506003 Change-Id: Ie0403a631e339a9134216224f3366f46ece58b53
isplayDevice.cpp
urfaceFlinger.cpp
|
a8c386f1c36e916c1df18d41a22104d655a89817 |
27-Aug-2013 |
Mathias Agopian <mathias@google.com> |
switch to use mat4 Change-Id: I8283a989cfd2b74d53958150bc90298bc083fee7
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES20RenderEngine.cpp
enderEngine/Program.cpp
enderEngine/Texture.cpp
enderEngine/Texture.h
|
f2e4fcd96c11861bd0af1a9525344c1b691c9de9 |
24-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge changes I34935d21,If423cd29 into klp-dev * changes: handle several vsync signal correctly only use format compatible with CPU consumers
|
ed127ea3834045597a072dcf31877ff3084582ff |
24-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge "make sure SF initialization is ran at target priority and correct thread group" into klp-dev
|
9414d67f46d315873502b909ee51bab7abf3f9cc |
24-Aug-2013 |
Mathias Agopian <mathias@google.com> |
make sure SF initialization is ran at target priority and correct thread group SF can spawn threads (indirectly) during initialization and we want those to be spawned at URGENT_DISPLAY_PRIORITY (in theory they should set their own, but some code lives in vendor libraries and doesn't). Bug: 10430209 Change-Id: I5b3a8f979297de287614c8eafd8267bef1176e4b
ndroid.mk
urfaceFlinger.cpp
ain_surfaceflinger.cpp
|
bcab7b17b1c5476935a6f2f916922b4eb57991a4 |
24-Aug-2013 |
Mathias Agopian <mathias@google.com> |
fix DimLayer in GLES2.0 SF DimLayer state wasn't initialized properly. Bug: 10442967 Change-Id: I384c1d85c58c96ae29d5daa1fabee9f4ce003501
enderEngine/GLES20RenderEngine.cpp
|
bef42c50ebda2d63400f92611e1dd857c03bb38c |
22-Aug-2013 |
Mathias Agopian <mathias@google.com> |
handle several vsync signal correctly Change-Id: I34935d2197ce8e914fef2f110896e47b44225ad2
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
4ceff3d5efd27c164788bb2b3f0fd17c691a0204 |
22-Aug-2013 |
Mathias Agopian <mathias@google.com> |
screenshot layers wouldn't work in some cases specifically when the display size and the screenshot window size didn't match, the buffer would be rejected. We simply fix this by setting the scalling mode to "SCALE_TO_WINDOW". Bug: 9992306 Change-Id: Ib821767899af330bb70d3cbbfa7d41b02794a075
ayer.cpp
urfaceFlinger.cpp
|
a525483dc73df39a72c9b4865102a86704b3622c |
21-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Fix a bug where non-cropped layer could be scaled incorrectly" into klp-dev
|
d2cf8c2f07b4285a224acd262e6f052c37dbc0b0 |
21-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Provide HWC prepare with a valid output buffer" into klp-dev
|
7127d17db148ad388a4eb3c152d4c257c6015476 |
21-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Fix HWComposer dumping of float source crops" into klp-dev
|
32551478fc5417d3b7b5e33a202eb6ca66061f7d |
21-Aug-2013 |
Andy McFadden <fadden@android.com> |
Merge "Fix virtual displays for HWC 1.0" into klp-dev
|
0e8f1443b87f9009159cef6394de48894f98f826 |
21-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Fix a bug where non-cropped layer could be scaled incorrectly If a layer is not cropped but its bounds are outside of the viewport (i.e.: clipped), the crop rectangle passed to hw composer would be invalid because it started invalid in the first place (to indicate "no crop"). Bug: 10410944 Change-Id: I4ae4d49a1adef0be7fa4304ecf84b1a5b7d03fe0
ayer.cpp
|
028dc8f2d72bc7cd4fbe7808781443125a742f78 |
21-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Provide HWC prepare with a valid output buffer We weren't dequeing and setting the output buffer until just before set(). This didn't allow HWC to make decisions in prepare() based on the output buffer format, dimensions, etc. Now we dequeue the output buffer at the beginning of the composition loop and provide it to HWC in prepare. In GLES-only rendering, we may have to cancel the buffer and acquire a new one if GLES requests a buffer with properties different than the one we already dequeued. Bug: 10365313 Change-Id: I96b4b0a851920e4334ef05080d58097d46467ab8
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
353ddc6e77816352107537c215dc8302f6e8587a |
21-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Fix HWComposer dumping of float source crops Change-Id: I45a9344b5fab17ccb54bebd01382d738a03860e6
isplayHardware/HWComposer.cpp
|
22a99f0fc2884227b9d7e46959fcbe6270667efb |
21-Aug-2013 |
Andy McFadden <fadden@android.com> |
Fix virtual displays for HWC 1.0 We weren't swapping the buffers. Bug 10366404 Change-Id: I43eb7648231bedf24899da6fc0d9acc09e0b047e
isplayDevice.cpp
|
4f4f0943489d9113c66ac22b58cfba8c21dfa879 |
20-Aug-2013 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger now runs in the process's main thread it used to spawn its own thread and return the main thread to the binder thread pool -- this was confusing the naming of things in the kernel. Bug: 10331839 Change-Id: I2d13a6d73409a38109300fcbe6a04b4c41cb5d00
ndroid.mk
lient.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
ain_surfaceflinger.cpp
|
90f59bf9eba79b27629505bc2709d84e7c811c8b |
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
Merge "Re-enable frame dropping for non-auto timestamps" into klp-dev
|
7c6278de6e2aed171362012d578d8bd093c8f280 |
18-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Use new HWC display type/count constants." into klp-dev
|
49457ac092071a8f964f7f69156093657ccdc3d0 |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Encapsulate textures into their own Texture class the main reason for doing this is so that we can have access to informations about a texture (like its dimension) close to where we generate and use shaders in ES 2.0. Previously, there wasn't any way to get to a texture's size from a RenderEngine implementation. Bug: 8679321 Change-Id: I388b338a70d07e3e8177dde248710ea1e4c82dff
ndroid.mk
ayer.cpp
ayer.h
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/Program.cpp
enderEngine/ProgramCache.cpp
enderEngine/RenderEngine.h
enderEngine/Texture.cpp
enderEngine/Texture.h
|
3c25621ad7d13f64d3ab95a27fa970fbc9998f73 |
16-Aug-2013 |
Andy McFadden <fadden@android.com> |
Re-enable frame dropping for non-auto timestamps This change adds an entire field to note whether the timestamp was auto-generated by Surface or supplied by the application. The value is used when deciding whether or not to drop frames based on buffer presentation timestamps. If a desired presentation time was set explicitly, BufferQueue will use that value to decide if a frame should be dropped. If the timestamp was generated by Surface at the time the buffer was queued, the timestamp is ignored. Bug 10151804 Change-Id: Ibd571a7578351063b813cbdad2ddbeed70655ba5
isplayHardware/VirtualDisplaySurface.cpp
|
9e663de4fe1dcc872373ee530c60a375624671c3 |
16-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Use new HWC display type/count constants. Change-Id: I774d0c68906ac6dc69268f708c30a6b0868b8816
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
e048a4374c4e355c361f5eec0482ac85df0c73fe |
16-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Add support for EGL_KHR_gl_colorspace" into klp-dev
|
e0ec2a956840fa70387883f422b6020c1dfc6bad |
16-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Fix ES2 composition on some devices" into klp-dev
|
2eaefe198a0cae1ee0b6366797a6b074c76df9ef |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Simplify handling of opaque layers in shader generation just ensure the alpha value is 1.0 in the opaque case when reading the color from the texture or the global color. Bug: 8679321 Change-Id: Ia38b30e97c3bce5a2d534a40c0d66e0bfc3ea40d
enderEngine/ProgramCache.cpp
|
458197de008be8fe561286b09f4edddb2f5c540a |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Fix ES2 composition on some devices - turns out fragment shaders don't have default precision by default - GLES 1.x extensions that became core in GLES 2.0 don't always work as extensions in GLES 2.0 (!) Bug: 8679321 Change-Id: I5a4a93e158247910399325a965af5d2e3bbece9b
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/ProgramCache.cpp
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
|
6db4ff621898573b41abf570271a04a13bd36a69 |
15-Aug-2013 |
Andy McFadden <fadden@android.com> |
Disable GLES 2.x rendering Bug 10340705 Change-Id: I91f3baf0d79655d8d031c100d0b116f745c2fbef
enderEngine/RenderEngine.cpp
|
892f22dcb96927b4a4f9ab7badd6f2c9f4f37c1f |
15-Aug-2013 |
Andy McFadden <fadden@android.com> |
Initialize mIndent Bug 10334731 Change-Id: Ia3aa118a1516cc480b0d85179b78c4447f982dd6
enderEngine/ProgramCache.cpp
|
5cdc8994a0ecd751a6350b16a1bef8b6b0d09b11 |
14-Aug-2013 |
Mathias Agopian <mathias@google.com> |
don't reallocate the mesh each time we use it the Mesh object can be part of each Layer (at least currently). also reworked the Mesh code a bit to make it easier to access the vertex data. Change-Id: I0490851ba898f0aa2e55b62958dcd8bdb535e98b
ayer.cpp
ayer.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES20RenderEngine.cpp
enderEngine/Mesh.cpp
enderEngine/Mesh.h
enderEngine/RenderEngine.cpp
|
3f84483382be2d528918cc1a6fbc6a7d68e0b181 |
08-Aug-2013 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger now uses GLES 2.x when available Bug: 8679321 Change-Id: I2b152d01fb4e2de2ea9fe87f1ddbd6826d7520d7
ndroid.mk
isplayDevice.cpp
ayer.cpp
ayer.h
ayerDim.cpp
enderEngine/Description.cpp
enderEngine/Description.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLES20RenderEngine.cpp
enderEngine/GLES20RenderEngine.h
enderEngine/Mesh.cpp
enderEngine/Mesh.h
enderEngine/Program.cpp
enderEngine/Program.h
enderEngine/ProgramCache.cpp
enderEngine/ProgramCache.h
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
5ff5a84e4829bad9eb44cc9a32d8579ca089051b |
14-Aug-2013 |
Mathias Agopian <mathias@google.com> |
allow "system" screenshots even when the secure flag is set we need too allow this case so that things like the rotation animation can work. with this change we only permit these screenshot if the destination is SurfaceFlinger itself. Bug: 10235036 Change-Id: I66fea5391e52b0d7f17f25827572b236f2d9eb71
urfaceFlinger.cpp
|
c2e41222bf02a6579763974f82d65875cfa43481 |
08-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Add support for EGL_KHR_gl_colorspace Change-Id: I684d0b8556cd6c84ee4b4d67e1bb95c3b96fccfb
ayer.cpp
|
a6bb107434ad36739c21e1f72ac8d0107808a7b9 |
08-Aug-2013 |
Mathias Agopian <mathias@google.com> |
make sure we have a context when creating the 1st surface also add an option to dump the stack trace when calling a GL function without a context. Change-Id: I57b72bb8c322ac4253c3077bf150621bd9863b69
urfaceFlinger.cpp
|
6c913be9ca95fd6b556d056e165a4ba6dc69795b |
08-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Add ISurfaceComposer::destroyDisplay Bug: 10191053 Change-Id: Ia89286f95421344a60ffedaaca5825c4e3cd7f9e
urfaceFlinger.cpp
urfaceFlinger.h
|
ff866e7642033d8f68c11eaa16d0afcecf0bab5b |
07-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Set the swap interval of virtual display surfaces to 0"
|
f460f55c84b0a75de749b8a784059f5ff423ed93 |
07-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Set the swap interval of virtual display surfaces to 0 This prevents slow/malicious virtual display consumers from backpressuring SurfaceFlinger and preventing it from updating other displays. Bug: 10193714 Change-Id: I3e877d97202628d2d9abea24b66576f38299c14d
isplayDevice.cpp
isplayDevice.h
|
3ca76f416bc8665a97636ca8a2d0128b9da9d92c |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
remove support for glReadPixels screenshot path this was only needed on some chipset we're not supporting in KLP. Change-Id: I2e8fc07f135030bd61d2e241a8e426f1a4316425
urfaceFlinger.cpp
urfaceFlinger.h
|
db89edc94bd2a78226b407f9f7261e202e7fa325 |
02-Aug-2013 |
Mathias Agopian <mathias@google.com> |
All consumers now take an IGraphicBufferConsumer instead of a BufferQueue this means they only have access to the consumer end of the interface. we had a lot of code that assumed consumers where holding a BufferQueue (i.e.: both ends), so most of this change is untangling in fix that Bug: 9265647 Change-Id: Ic2e2596ee14c7535f51bf26d9a897a0fc036d22c
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlingerConsumer.h
|
a4e19521ac4563f2ff6517bcfd63d9b8d33a6d0b |
01-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Binderize the consumer side of BufferQueue While currently untested, this should allow to move the BuffereQueue in the consumer process and have everything work as usual. Bug: 9265647 Change-Id: I9ca8f099f7c65b9a27b7e7a3643b46d1b58eacfc
urfaceTextureLayer.cpp
|
aaff4ef717c08f6aed7ccd96e1d65222ceb4fd17 |
30-Jul-2013 |
Mike J. Chen <mjchen@google.com> |
SurfaceFlinger: Set the result of binderized screencapture A recent change to screencapture to have the call to IGraphicBufferProducer happen on the incoming binder thread didn't set the result so the result was always returned as NO_ERROR. This made screencap fail on some devices (e.g. Wolfie) which relies on some kind of fallback mechanism to generate the screencap but the fallback mechanism doesn't get triggered because the error isn't returned. Bug: 9989385 Change-Id: I2aee91ea1034869fcbb0f49b9a0087c3cff43bbe Signed-off-by: Mike J. Chen <mjchen@google.com>
urfaceFlinger.cpp
|
ad678e18b66f495efa78dc3b9ab99b579945c9e2 |
24-Jul-2013 |
Mathias Agopian <mathias@google.com> |
single buffer mode for BufferQueue Bug: 9891035 Change-Id: Id1ab5f911a6dc4c1d8235e65775b3d3635231ad4
isplayHardware/FramebufferSurface.cpp
urfaceFlingerConsumer.cpp
|
c2414bb0989763641ca57cf72c11ef6d86565a23 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of HAL pixelformats 5551 and 4444 Change-Id: I39409103144c1ba09078c4ddc323a58987fb09ea
ayer.cpp
|
dd533712f8dd21c0dadfd5ce8a0ad85aa3e96ada |
27-Jul-2013 |
Mathias Agopian <mathias@google.com> |
make transparent pixels transparents again apparently boolean logic in hard... Change-Id: Ie70401fe12e0fa00b0b8c7cc475c1438cdbbf531
ayer.cpp
|
5773d3f5b2694c647e010246dff99acc70131289 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of PixelFormatInfo and simplify things Change-Id: I025a362cc12d5b9b794fac14be500e25aab65396
ayer.cpp
urfaceFlinger.cpp
|
1d4f79c48237e8720538b59cd2ecb5a2a5e5e9d8 |
24-Jul-2013 |
Jamie Gennis <jgennis@google.com> |
Merge "surfaceflinger: add frame duration logging"
|
6547ff4327aa320fbc9635668d3fc66db7dd78f6 |
17-Jul-2013 |
Jamie Gennis <jgennis@google.com> |
surfaceflinger: add frame duration logging Change-Id: Ib414a45e7e191f23a2726cbbbeb606e9ce68a3b5
ventLog/EventLog.cpp
ventLog/EventLog.h
ventLog/EventLogTags.logtags
rameTracker.cpp
rameTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
7ffaa7c60d51cc0eb731158de2ac3df9c50cc0b4 |
22-Jul-2013 |
Mathias Agopian <mathias@google.com> |
move services executables sources in their respective src folder Change-Id: Ic65434a26c7fed1699abf0851fec6faa40e09c0c
ndroid.mk
ain_surfaceflinger.cpp
|
7cdd786fa80cf03551291ae8feca7b77583be1c5 |
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make ANW.setSwapInterval(0) work again we can now queue/dequeue a buffer in asynchrnous mode by using the async parameter to these calls. async mode is only specified with those calls (it is not modal anymore). as a consequence it can only be specified when the buffer count is not overidden, as error is returned otherwise. Change-Id: Ic63f4f96f671cb9d65c4cecbcc192615e09a8b6b
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
595264f1af12e25dce57d7c5b1d52ed86ac0d0c9 |
17-Jul-2013 |
Mathias Agopian <mathias@google.com> |
BufferQueue improvements and APIs changes this is the first step of a series of improvements to BufferQueue. A few things happen in this change: - setSynchronousMode() goes away as well as the SynchronousModeAllowed flag - BufferQueue now defaults to (what used to be) synchronous mode - a new "controlled by app" flag is passed when creating consumers and producers those flags are used to put the BufferQueue in a mode where it will never block if both flags are set. This is achieved by: - returning an error from dequeueBuffer() if it would block - making sure a buffer is always available by replacing the previous buffer with the new one in queueBuffer() (note: this is similar to what asynchrnous mode used to be) Note: in this change EGL's swap-interval 0 is broken; this will be fixed in another change. Change-Id: I691f9507d6e2e158287e3039f2a79a4d4434211d
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
bce7611e8e4514026bf12f96baaf9168f6d5894e |
16-Jul-2013 |
Jesse Hall <jessehall@google.com> |
Fix build -- update for function signature change Change-Id: I9c2448d5853c69ec7e962847fdaba9a99906cc42
isplayHardware/VirtualDisplaySurface.cpp
|
3bc38408882487dc2a63ba036394addd839b0695 |
16-Jul-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Rewrite VirtualDisplaySurface"
|
7f069d79e7f04192610ef93901c89835fea46444 |
16-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Merge "always pass the BufferQueue explicitely to consumers"
|
38efe86d9459cf5c96a24a34cc5cbf31fdba7e19 |
07-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Rewrite VirtualDisplaySurface The previous implementation assumed that the HWC could read and write the same buffer on frames that involved both GLES and HWC composition. It turns out some hardware can't do this. The new implementation maintains a scratch buffer pool to use on these mixed frames, but on GLES-only or HWC-only frames still does composition directly into the output buffer. Bug: 8384764 Change-Id: I7a3addb34fad9bfcbdabbb8b635083e10223df69
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
8f938a53385a3c6d1c6aa24b3f38437bb2cc47ae |
13-Jul-2013 |
Mathias Agopian <mathias@google.com> |
always pass the BufferQueue explicitely to consumers Change-Id: I883b0a7b19d8e722f9ab714ba6f49e658b02ca86
ayer.cpp
urfaceFlingerConsumer.h
|
883140d0bff7ea516c27ade0215c4671b6512f88 |
13-Jul-2013 |
Jesse Hall <jessehall@google.com> |
Merge "SurfaceFlinger: EventThread: Fix Vsync array size."
|
5c876fa6b2a75ccfa7efe97b5f660b9c19d280e0 |
12-Jul-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
SurfaceFlinger: EventThread: Fix Vsync array size. Vsync array size is specified as HWC_DISPLAY_TYPES_SUPPORTED whose value luckily happens to be 2. That enum is actually used for querying hwc for the number of displays supported. The implementation file EventThread.cpp correctly accesses the array upto HWC_NUM_DISPLAY_TYPES Change-Id: I36e3f0913e7d6fda7bbf4449c1fb32c7f18bb934 Signed-off-by: Amara Venkata Mastan Manoj Kumar<manojavm@codeaurora.org> Signed-off-by: Saurabh Shah <saurshah@codeaurora.org>
ventThread.h
|
c33f9a76b5dff1a9b4e4d0c76459c0d5b36a0d74 |
11-Jul-2013 |
Andy McFadden <fadden@android.com> |
Merge "Pay attention to buffer timestamps"
|
1585c4d9fbbba3ba70ae625923b85cd02cb8a0fd |
28-Jun-2013 |
Andy McFadden <fadden@android.com> |
Pay attention to buffer timestamps When acquiring a buffer, SurfaceFlinger now computes the expected presentation time and passes it to the BufferQueue acquireBuffer() method. If it's not yet time to display the buffer, acquireBuffer() returns PRESENT_LATER instead of a buffer. The current implementation of the expected-present-time computation uses approximations and guesswork. Bug 7900302 Change-Id: If9345611c5983a11a811935aaf27d6388a5036f1
isplayHardware/FramebufferSurface.cpp
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
6b44267a3beb457e220cad0666c039d3a765cdb2 |
10-Jul-2013 |
Mathias Agopian <mathias@google.com> |
fix SF buffer cropping When a buffer had a crop (meaning its content is scaled to the window size) and a window crop was defined, the resulting crop couldn't be expressed properly because h/w composer's API was limited to integers, since this is fixed in h/w composer 1.3, we take adventage of this to make sure we get the correct crop. this bug could result in the buffer being scaled by an incorrect ratio and be slightly offset; moreover, it would produce different results from the GL code path, which is always correct. Change-Id: I8e20e00b6e26177d14f4ab4d2cd581e26c818892
isplayHardware/FloatRect.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
|
2ed0fe59b482f8d6b35a50ebc8e9e060813f4568 |
09-Jul-2013 |
Mathias Agopian <mathias@google.com> |
fix a bug where surfaceflinger and system_server could deadlock because surfaceflinger handles screenshot in a different thread from the binder thread that requested it and because the IGraphicBufferProducer is a synchronous interface calling back into the system server; it is possible for the latter to run out of binder threads (b/c it holds a lock while calling into SF). The solution is to make sure all calls on IGraphicBufferProducer happen on the incoming binder thread. We achieve this by creating a IGBP wrapper which is given to the screenshot code. Bug: 8734824 Change-Id: I2be85660d9dc65d239d68f6d3ab3c973c13b34cc
urfaceFlinger.cpp
|
547e98f33c829eb2e3948a57e491a9106afa1f5e |
09-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Refactor SF. Move all GL operations in their own class."
|
fee2b463c5fbe8fa0132d03634ccc02ea55c1505 |
03-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Debug code for detecting all black pixels screenshots Bug: 9120292 Change-Id: If60db32524db973bb1f905ba3cb415c2a1cd7e71
urfaceFlinger.cpp
urfaceFlinger.h
|
875d8e1323536e16dcfc90c9674d7ad32116a69a |
08-Jun-2013 |
Mathias Agopian <mathias@google.com> |
Refactor SF. Move all GL operations in their own class. this is the first step to add support for GLES 2.x, this change breaks the dependency of SF on GLES 1.x by moving all operation into their own class. Bug: 8679321 Change-Id: I0d2741eca2cefe67dfd9cf837cac10c4d126928b
ndroid.mk
isplayDevice.cpp
isplayDevice.h
LExtensions.cpp
LExtensions.h
ayer.cpp
ayer.h
ayerDim.cpp
ayerDim.h
enderEngine/GLES10RenderEngine.cpp
enderEngine/GLES10RenderEngine.h
enderEngine/GLES11RenderEngine.cpp
enderEngine/GLES11RenderEngine.h
enderEngine/GLExtensions.cpp
enderEngine/GLExtensions.h
enderEngine/RenderEngine.cpp
enderEngine/RenderEngine.h
urfaceFlinger.cpp
urfaceFlinger.h
|
98d3d6ec1250248574f2e8d72e5c934fecbcd734 |
27-Jun-2013 |
Lajos Molnar <lajos@google.com> |
SurfaceFlinger: fix releaseBuffer in updateTexImage Allow releasing a buffer acquired in the past. Change-Id: I3f27f1caec109c1a47286fc4d2235c6e1afe9022 Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 9516405
urfaceFlingerConsumer.cpp
|
1eae0ee49402c39f1b08cc8fec129023f86494b7 |
06-Jun-2013 |
Mathias Agopian <mathias@google.com> |
clean-up SurfaceFlinger a bit - most methods on Layer didn't need to be virtual - more consistency in naming drawing/current state Change-Id: Ieb7b4951b40fc673b807994ed21ae4aea7281068
ayer.cpp
ayer.h
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
|
2e3a7f1e3d4e6f2d4ceecf2121d3ba2fd2ef84df |
06-Jun-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Basic binary event-log helpers"
|
7cc6df59572582652078df5aeac9e6c67d7fa81e |
05-Jun-2013 |
Mathias Agopian <mathias@google.com> |
fix a possible deadlock when removing a layer and destroying a client generally the last reference to a Layer is released in commitTransaction() with mStateLock held. Layer itself only holds weak references to Client, however, ~Layer() briefly promotes this weak reference -- during that time the all other strong references to that Client go away, ~Layer is left with the last one... then hell breaks loose as ~Client is called, which in turn needs to acquire mStateLock. We fix this by holding a temporary copy of the drawing state during the transaction so that the side-effects of copying the current state into the drawing state are seen only after mStateLock has been released. Bug: 9106453 Change-Id: Ic5348ac12283500ead87286a37565e8da35f1db2
urfaceFlinger.cpp
|
85cce376cbeecb185ba485c69643bfabe72fe794 |
05-Jun-2013 |
Mathias Agopian <mathias@google.com> |
Basic binary event-log helpers EventLog can be used from SurfaceFlinger to log jank statistics events to the binary event log. Change-Id: If0fbbe7d7111f10957697166d37fd0c3418109bb
ndroid.mk
ventLog/EventLog.cpp
ventLog/EventLog.h
ventLog/EventLogTags.logtags
|
29c3f352797d9d2ddf055d8f888e7694ef8b3947 |
22-May-2013 |
Jesse Hall <jessehall@google.com> |
Prevent opaque windows from making framebuffer translucent To keep the code readable now that we have four different texenv configurations, this change separates the decisions about what configuration to use from the GL calls to set up the configuration. Bug: 8963244 Change-Id: Ia07a306a7809ba8f93493d0160ccbd509e948581
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
c5d7b7d323bba8772a9005f7d300ad983a04733a |
03-May-2013 |
Lajos Molnar <lajos@google.com> |
BufferQueue: track buffer-queue by instance vs. by reference Instead of representing the buffer-queue as a vector of buffer indices, represent them as a vector of BufferItems (copies). This allows modifying the buffer slots independent of the queued buffers. As part of this change, BufferSlot properties that are only been relevant in the buffer-queue have been removed. Also, invalid scalingMode in queueBuffer now returns an error. ConsumerBase has also changed to allow reuse of the same buffer slots by different buffers. Change-Id: If2a698fa142b67c69ad41b8eaca6e127eb3ef75b Signed-off-by: Lajos Molnar <lajos@google.com> Related-to-bug: 7093648
isplayHardware/FramebufferSurface.cpp
urfaceFlingerConsumer.cpp
|
2381033ad001960c606d13e3a4198e5da3672ec7 |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
am e6eef6c1: am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer * commit 'e6eef6c136b007f3a7e1e19884875b855c0c5f95': make the warning timout of Fence::waitForever() implicit and longer
|
e6eef6c136b007f3a7e1e19884875b855c0c5f95 |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer * commit 'ea74d3b78d607cde17790a7bb83e6f68ffd34cfd': make the warning timout of Fence::waitForever() implicit and longer
|
ea74d3b78d607cde17790a7bb83e6f68ffd34cfd |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
make the warning timout of Fence::waitForever() implicit and longer - timeout is now 3 seconds instead of 1 - simplifies the API a bit - allows us to change/tweak this timeout globaly Bug: 8988871 Change-Id: I8d3c6ec43a372f602fb3f29856710339f86c0ec9
isplayHardware/HWComposer.cpp
|
59eaeed5fabc27942d62327fa460ebb8bd2f3822 |
14-May-2013 |
Jesse Hall <jessehall@google.com> |
am 28fc78bf: am e8fed71d: Merge "Abort surface composition if hw surface is invalid" * commit '28fc78bf5fbb6288a27f3f25565a960a1873b0ef': Abort surface composition if hw surface is invalid
|
28fc78bf5fbb6288a27f3f25565a960a1873b0ef |
14-May-2013 |
Jesse Hall <jessehall@google.com> |
am e8fed71d: Merge "Abort surface composition if hw surface is invalid" * commit 'e8fed71da2d3e03ef933d308520bab5b860f05aa': Abort surface composition if hw surface is invalid
|
c8c71096195de0128e57574b1ddf685838ceb2f0 |
05-Mar-2013 |
Michael Chock <mchock@nvidia.com> |
Abort surface composition if hw surface is invalid If an invalid display device is detected during surface composition (e.g., a simulated secondary display is removed), abort the composition. Change-Id: Ia6afb2e287882d8ae0614eb25463d3f85b687adf
urfaceFlinger.cpp
|
f3e85d432749ca77ad707bec523b67d741d43e6e |
11-May-2013 |
Mathias Agopian <mathias@google.com> |
take the "transparent region" into account for blending until now it was only used to discard a layer entirely. we're now reducing the size of the layer if it is still visible, if possible. this works for instance when a surfaceView is used and only the menu bar is displayed over it. Change-Id: I3f5527c5cd1e69ecc968272c8948f1513ada8c55
ayer.cpp
|
6c7f25afb75ac155bad0b3bc17c0089d0337d060 |
10-May-2013 |
Mathias Agopian <mathias@google.com> |
reformat Rect.{cpp|h} Change-Id: I45b1f6646541a1abacce1e70df00a770e47b820e
isplayDevice.cpp
ayer.cpp
|
b6df7d0e4c2117ca476662bd52b6745b3d8a305f |
09-May-2013 |
Mathias Agopian <mathias@google.com> |
make all libsurfaceflinger and libsensorservice symbols's visibility hidden we only export the main entry-point. this saves about 150KB. Change-Id: I55eb2b6705386fdfa43860deb62f9cdd2a0982aa
ndroid.mk
urfaceFlinger.h
|
c0db61966a172c953b4259bd0501c9b6781f0f31 |
09-May-2013 |
Jesse Hall <jessehall@google.com> |
am dda42952: am 64f3b2fd: Merge "Remove experimental HWC virtual display support" into jb-mr2-dev * commit 'dda4295221f831560ca9d554cd9b7be1c672d0b6': Remove experimental HWC virtual display support
|
e737c11cd83a449d9a544c5c6d4e0dfd42250a56 |
07-May-2013 |
Jesse Hall <jessehall@google.com> |
Remove experimental HWC virtual display support Bug: 8384764 Change-Id: I97b52ed83ad85466bd91cb9291308994048568a1
ndroid.mk
isplayHardware/BufferQueueInterposer.cpp
isplayHardware/BufferQueueInterposer.h
isplayHardware/HWComposer.cpp
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
0aea53ff3f71f9f8df55d1cf58fd586442582643 |
24-Apr-2013 |
Mathias Agopian <mathias@google.com> |
use a Framebuffer Object to render all screenshots this allows us to render into a buffer with a pixelformat of our own choice; this is much faster on all platform. Bug: 8582615 Change-Id: I61298fc8e43fa6f92044c5123955cb5c7897dab7
urfaceFlinger.cpp
urfaceFlinger.h
|
3e25fd8609b100a75721be82d1d499f0ae9083cb |
22-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Add a --color option to dumpsys SurfaceFlinger colorize a bit the output of dumpsys SurfaceFlinger to make it easier to read. Right now it will bold the title of each section and use green for the name of each layer. Change-Id: I0d9f18d115401cb45109d244ef3a278481f68cc6
olorizer.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
74d211ae26a0257c6075a823812e40b55aa1e653 |
22-Apr-2013 |
Mathias Agopian <mathias@google.com> |
clean-up/simplify all dump() APIs remove the scratch buffer parameter and use String8::appendFormat() instead. Change-Id: Ib96c91617c8e7292de87433d15cf6232b7d591b0
isplayDevice.cpp
isplayDevice.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
ventThread.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
bd1153382e7a9d89922bea999a52ca21d46d6caa |
19-Apr-2013 |
Mathias Agopian <mathias@google.com> |
allow dumpsys SurfaceFlinger in user builds from the shell user Bug: 8659013 Change-Id: I1de43bb5808cb8c1103cfc73dca59ff70fc13f91
urfaceFlinger.cpp
|
48be323236f9fc41620a17e182eea800351812c5 |
13-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Merge "make sure to update the "current state" when we "fake" the transaction" into jb-mr2-dev
|
6c67f0fe457f758fc875e1178d8fd5258fd8f6df |
13-Apr-2013 |
Mathias Agopian <mathias@google.com> |
make sure to update the "current state" when we "fake" the transaction this mimics the code we used for the size. basically we need to also update the "current state" because it gets copied to the "drawing state" when a transaction occurs, and it would "undo" our change. Bug: 8511430 Bug: 8581533 Change-Id: I08c02abbf21b7f168f7124cd14ee717d7d3d502c
ayer.cpp
|
5e5bed60d03b5556ada351b010ed14ae8f1515ae |
12-Apr-2013 |
Chet Haase <chet@google.com> |
Merge "DO NOT MERGE Make sure surfaces always have latest orientation info" into jb-mr2-dev
|
180f10de6f504d2ba56ff32ae8ed53c58bb458e9 |
11-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Improve screenshot performance on some devices (DO NOT MERGE) this affects devices that need a glReadPixels(). We use a FBO instead of a GlConsumer as an intermediate render target, this saves 2 calls to eglMakeCurrent(). On Galaxy Nexus this allows us to go from ~135ms to ~35ms for recent's screenshots. Bug: 8582615 Change-Id: I6b25291ecc235f1927579bbb2db3c731e985c6e8
urfaceFlinger.cpp
urfaceFlinger.h
|
91d25932b6651b20159a737da6140cf8a6aaaf08 |
12-Apr-2013 |
Chet Haase <chet@google.com> |
DO NOT MERGE Make sure surfaces always have latest orientation info When the screen is turned off, the current stack is set to -1. This causes logic in iSurfaceFlinger's handleTransactionLocked() function to fail to match the current stack, and the latest orientation is not set into the layer. This causes BufferQueue, later, to potentially set an obsolete transformHint on a created surface (such as in the case with ImageWallpaper's Egl surface, in the bug below). The fix is to note this situation and use a default value for the DisplayDevice, which should have the current orientation information. Issue #8508397 ImageWallpaper sometimes rendered in wrong orientation causing a ~30-40% drop in graphics performance Change-Id: Ibae15d73b289a8343c67f4f6bb77fdf11dd95ee7
urfaceFlinger.cpp
|
d19e519f673adcc5d12fcca549e577eea74f31aa |
11-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Merge "fix another bug where screenshots could end-up all black" into jb-mr2-dev
|
9eb1f0558b5fc78920602afe7bcfa3115bb1f6be |
11-Apr-2013 |
Mathias Agopian <mathias@google.com> |
fix another bug where screenshots could end-up all black SF transactions were always handled on VSYNC which allowed the screenshot to sneak-in between closing the transaction and vsync (before it's latched), resulting in a screenshot with the previous state. we now always force transactions to happen immediately before screenhots. Bug: 7552304 Change-Id: I0afc86b7e8366173daff5b9988bbb4d2a0f43860
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
|
8a0cb4ee0b6c351de82987efb472fa38dfaf608a |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Add liblog Bug: 8580410 Change-Id: I2ca4fa00dde0b574df3619134836bcb9315bd506
ndroid.mk
|
1df59c93fea8bec21b8084c34aface086f1e0896 |
06-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Tell HWComposer the dimensions of virtual displays" into jb-mr2-dev
|
d5e345b0cf5c1c5aaa5c10a1a4c759e74d77fb37 |
06-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Actually set the virtual display output buffer." into jb-mr2-dev
|
1c569c4d45f89ec05abf8f8fe3a560e68bf39a8e |
05-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Tell HWComposer the dimensions of virtual displays HWComposer queries the HWC for dimensions of physical displays, but can't do that for virtual displays. The dimensions are used to set the display frame of the framebuffer target layer passed to HWC, and implicitly the dimensions of the virtual display. Bug: 8316155 Change-Id: I9cbd2530d2fa878f86128a1472def520b5d694a5
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
6d5b8e600e77164d3b5e51b89bf9c940fd7b4ea2 |
05-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Clean up HWC state when releasing a DisplayDevice" into jb-mr2-dev
|
2ba647e9f5249d9ed97739d29d879064e31ba34a |
04-Apr-2013 |
Jesse Hall <jessehall@google.com> |
Actually set the virtual display output buffer. Bug: 8316155 Change-Id: Ida1ac47e5a932fdaad3ec862e121cfe55d255699
isplayHardware/VirtualDisplaySurface.cpp
|
2ca79399b933935eb1b6c0ec1f746f8c4475369c |
03-Apr-2013 |
Mathias Agopian <mathias@google.com> |
latch transparent region hint only when we get a new frame since the transparent region hint really depends on the content of the window containing the SurfaceView (it's calculated by the view hierarchy based on overlapping views), it makes sense to latch it only when the content of the window (the app) changes. This should help fixing drawing artifacts when changing the layout of a window containing a SurfaceView. Bug: 8511430 Change-Id: Ic3aa668495293cb4d82a2cd7dcf3b6a337287678
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
33ceeb32582739dd74e404593d9ddf8adf5100bb |
02-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Fix include paths Change-Id: If5350a3de995cc0cb1afea067e7ce168bc00d3f5
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWComposer.cpp
|
ca08833d5ea99130797e10ad68a651b50e99da74 |
29-Mar-2013 |
Mathias Agopian <mathias@google.com> |
don't use compile-time configuration of libgui as much as possible We now detect at runtime which sync features to use, which allows us to remove a lot of the compile-time configuration options. There is still one option though, to disable KHR_fence_sync on some devices (which are more efficient without it). - added a backdoor to get the vendor's EGL strings the new logic is: - use always ANDROID_native_fence_sync if available - fallback to KHR_fence_sync if available and not disabled by the compile-time option - use KHR_wait_sync if available and either of the above is enabled Change-Id: I9c4b49d9ff1151faf902cc93bd53ea5f205aaabf
LExtensions.cpp
urfaceFlinger.cpp
urfaceFlingerConsumer.cpp
|
8171aece3d89a2107eda02c0e9daf79518b40174 |
29-Mar-2013 |
Mathias Agopian <mathias@google.com> |
fix uninitialized attribute in SurfaceFlinger Change-Id: I8277f67e297a8b6a99195387060d03154a2cd929
LExtensions.cpp
|
b1196e6356a02c30d95522d3f2e13ffe3dc91d21 |
28-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Remove unused clz.cpp Change-Id: Ieed91a45ba0e865a0d47d84effe9439aaab4371f
lz.cpp
|
02d86567d95b99e1142941ed7ec23a4465822813 |
25-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Clean up HWC state when releasing a DisplayDevice DisplayDevices can be released when DisplayManager removes them from the display list, or (for virtual displays) when the surface is set to NULL. We were only cleaning up HWC resources associated with the display in the first case. Bug: 8384764 Change-Id: Id3d226dd7178fbe6d0a2ac4e2660b864ee073de3
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
ffe1f19ca9707f84cb9fdb06209bf36cd8c2ef0a |
22-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix virtual displays for HWC<=1.1 If we're using a HWC that doesn't support virtual displays, or we have more virtual displays than HWC supports concurrently, the VirtualDisplaySurface should simply be a passthrough from source (GLES) to sink. This change also tries to distinguish between display types and HWC display IDs a little better, though there's more to do here. Probably needs a higher-level rethink; it's too error-prone now. Bug: 8446838 Change-Id: I708d2cf262ec30177042304f174ca5b8da701df1
isplayDevice.cpp
isplayDevice.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
48bc05b56df9919fc39c5f2e3ea6535560eec98f |
21-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix dump when virtual display exists SurfaceFlinger::getLayerSortedByZForHwcDisplay only worked for builtin displays. Bug: 8384764 Change-Id: I989275407fb2f06d166a6e70321c3211e27e562e
urfaceFlinger.cpp
urfaceFlinger.h
|
851cfe834295224cd64bdd499872b95b19c4de8c |
20-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Isolate knowledge that fb target == output buffer HWComposer didn't allow the virtual display output buffer to be set directly, instead it always used the framebuffer target buffer. DisplayDevice was only providing the framebuffer release fence to DisplaySurfaces after a commit. This change fixes both of these, so both HWComposer and DisplayDevice should continue to work if VirtualDisplaySurface changes to use separate framebuffer and output buffers. It's also more correct since VirtualDisplaySurface uses the correct release fence when queueing the buffer to the sink. Bug: 8384764 Change-Id: I95c71e8d4f67705e23f122259ec8dd5dbce70dcf
isplayDevice.cpp
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
afaf14b9fbfe8943d845e2f01e8a401ad7a4d854 |
20-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Use descriptive aliases instead of HWC_NUM_DISPLAY_TYPES Bug: 8384764 Change-Id: Ia2563fab19dbc6e4a95bed03445e609334841cca
isplayHardware/HWComposer.cpp
|
13f01cbdbd34779a234bc674df79e23672fd5c0b |
20-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Pass sp<Fence>s around instead of file descriptors Change-Id: Iac70584a2207940730e8f803a543e4e9a4000c47
isplayDevice.cpp
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
ayer.cpp
|
8d8c75976171d194ca8f94727b22e3bf7676b9dd |
22-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Release virtual display buffer immediately after HWC set" into jb-mr2-dev
|
ed985574148a938bc3af24442eead313cc62521c |
22-Mar-2013 |
Mathias Agopian <mathias@google.com> |
make sure screenshot are in a format supported by Bitmap.java Change-Id: I0fb9cc4088f9c1fd27e6c017b0a7c5617adb4660
urfaceFlinger.cpp
urfaceFlinger.h
|
50210b9a8d19cb90fc283d8d99e46cd34ac17d2e |
22-Mar-2013 |
Mathias Agopian <mathias@google.com> |
fix a typo that broke all screenshots Bug: 8450197 Change-Id: I5b986cc0ff9c5e689d06a51ba68ab537d03d1f3d
urfaceFlinger.cpp
|
0188eeff1fecc3813ddb236be3e2b7a9ad156482 |
22-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Merge "only use glReadPixels() when needed when taking screenshots" into jb-mr2-dev
|
70a6e88dbd52605f35f290eba52a05bdc6fc8042 |
22-Mar-2013 |
Mathias Agopian <mathias@google.com> |
initialize planeAlpha (to 0xFF) for the FB_TARGET Bug: 8422625 Change-Id: I7b72456c2e01ed92e675cc1bfa0cfd0d2ce5064e
isplayHardware/HWComposer.cpp
|
b4b1730abb7824dc084468c4942f010d94a7e039 |
21-Mar-2013 |
Mathias Agopian <mathias@google.com> |
only use glReadPixels() when needed when taking screenshots some drivers don't support this yet, so we use a system property to enable the glReadPixels "workaround" for them: ro.bq.gpu_to_cpu_unsupported=1 Change-Id: I74d6a3a8f0cee8d5a507b72c760cf247e39195e0
urfaceFlinger.cpp
urfaceFlinger.h
|
7414965606f82ac2bcace5d3e2c8a4810517bf1e |
20-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Release virtual display buffer immediately after HWC set Previously we only queued a virtual display buffer to the sink when the next frame was about to be displayed. This may delay the "last" frame of an animation indefinitely. Now we queue the buffer as soon as HWC set() returns and gives us the release fence. Bug: 8384764 Change-Id: I3844a188e0f6ef6ff28f3e11477cfa063a924b1a
isplayDevice.cpp
isplayHardware/BufferQueueInterposer.cpp
isplayHardware/BufferQueueInterposer.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
abe815dd6978b718c04f6e22e1a893d2b51d11a1 |
20-Mar-2013 |
Mathias Agopian <mathias@google.com> |
rework how we take screenshots for a CPU consumer We're not using IMemoryHeap as a transport anymore, instead we're providing a CpuConsumer and use the IGraphicBufferProducer version of the screenshot API. However, some GPU drivers don't support properly a GPU to CPU path, to work around this, we use a temporary BufferQueue on the server side for the GL rendering, and we use glReadPixels into the CpuConsumer (we're now using a CPU to CPU path which is always supported). Currently this "wrapping" is always performed, but it can be bypassed on devices that support the GPU to CPU path. This also addresses a DoS attack vector on SurfaceFlinger, where an application could consume all of SF's filedescriptors by creating a lot of screenshots in a row. Bug: 8390553 Change-Id: I9e81514c2a7711b9bb393f74305be7d2abe08f1c
urfaceFlinger.cpp
urfaceFlinger.h
|
ef64b75a936ffd194673dbce6766995f86b42ba9 |
18-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Don't log an error on HWC1.1+ devices with no FB HAL Change-Id: I015e5a1a1f926181e51f82525f69beff71bd70cd
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
fae23b8757a6e1b70997db28a2eaf34f9ddc9b84 |
19-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Merge changes I61ae54f3,I57cb668e,I7a3f1e1a,Id28a2f9b into jb-mr2-dev * changes: Add BufferQueueInterposer and use it for virtual displays Add DisplaySurface abstraction Fix argument types in IGraphicBufferProducer methods Minor cleanups/fixes before virtual display refactoring
|
80e0a397a4712666661ecc629a64ec26e7f6aac3 |
15-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Add BufferQueueInterposer and use it for virtual displays BufferQueueInterposer allows a client to tap into a IGraphicBufferProducer-based buffer queue, and modify buffers as they pass from producer to consumer. VirtualDisplaySurface uses this to layer HWC composition on top of GLES composition before passing the buffer to the virtual display consumer. Bug: 8384764 Change-Id: I61ae54f3d90de6a35f4f02bb5e64e7cc88e1cb83
ndroid.mk
isplayHardware/BufferQueueInterposer.cpp
isplayHardware/BufferQueueInterposer.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
|
99c7dbb24994df2f3e175f7b25dd2c9dd92a72f0 |
14-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Add DisplaySurface abstraction DisplayDevice now has a DisplaySurface instead of using FramebufferSurface directly. FramebufferSurface implements DisplaySurface, and so does the new VirtualDisplaySurface class. DisplayDevice now always has a surface, not just for virtual displays. In this change VirtualDisplaySurface is just a stub; buffers still go directly from GLES to the final consumer. Bug: 8384764 Change-Id: I57cb668edbc6c37bfebda90b9222d435bf589f37
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplaySurface.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/VirtualDisplaySurface.cpp
isplayHardware/VirtualDisplaySurface.h
urfaceFlinger.cpp
|
7adb0f8a9fdb961692ffd2f0c65cacb155143f64 |
07-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Minor cleanups/fixes before virtual display refactoring None of these should change behavior, except for removing some incorrect log messages when using a virtual display. - HWComposer::getAndResetReleaseFenceFd() checks the HWC version, so no need to do that in the DisplayDevice::onSwapBuffersCompleted(). However, it should check that mFramebufferSurface is not NULL like it is for virtual displays. - Comment that FramebufferSurface::dump() overrides the non-virtual ConsumerBase::dump(), and fix it so the right thing happens regardless of the static type of the pointer/reference the callee has. FramebufferSurface::dump() could be removed right now, but I'd need to bring it back in a later change. - Use the right enum for validating display type ids. - Don't try to send hotplug events for virtual displays. - Mark virtual displays as connected so HWComposer::prepare() doesn't think something is wrong when it gets a non-NULL layer list. - Remove unused FramebufferSurface methods. Bug: 8384764 Change-Id: Id28a2f9be86b45f4bb7915fdf7752157035f4294
isplayDevice.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
ventThread.cpp
urfaceFlinger.cpp
|
041a075262ef5fc886e46fd4eec3dd79ee2e60c0 |
16-Mar-2013 |
Mathias Agopian <mathias@google.com> |
don't allow screenshots without the READ_FRAMEBUFFER permission the recent screenshot rework allowed the older screenshot interface to work without that permission Change-Id: I6c4743f4591c81106e3b823d55a055f7b4907de1
urfaceFlinger.cpp
|
7670d3cb2b5d38c60135f34a2446e1ae809d1b32 |
16-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Merge "get rid of purgatory and fix QueuesToWindowComposer query" into jb-mr2-dev
|
a493be5825d15f6a94d1afb5910db075a2a7abc1 |
16-Mar-2013 |
Mathias Agopian <mathias@google.com> |
don't capture hidden layers in screenshots Bug: 8389956 Change-Id: I9ed836395258732c743c6fd44092bd01020dde13
urfaceFlinger.cpp
|
6710604286401d4205c27235a252dd0e5008cc08 |
15-Mar-2013 |
Mathias Agopian <mathias@google.com> |
get rid of purgatory and fix QueuesToWindowComposer query the purgatory list wasn't needed anymore; in fact it had no effect as buffer life-time management is now handled by the BufferQueue. For QueuesToWindowComposer we keep a list of wp<> on the IBinder for IGraphicBufferProducers we hand over to clients so we can easily check if an IGraphicBufferProducer is ours. We clean-up the list when our IGraphicBufferProducer are destroyed. Bug: 8349142 Change-Id: I1aa06652ade8c72d0004a3f5e6c3d6e8a82fc2ae
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
6a531717cddf1d30be0946884d21c27e5b6b390c |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
size IMemoryHeap properly for screenshots since we're using glReadPixels(), we only need to use the width (as opposed to the stride) of the source screenshot. Bug: 8374664 Change-Id: I145c80f4fff5444df7c77c4f52e70a7203caddbd
urfaceFlinger.cpp
|
35ffa6a868f1aa650c90956a4129bb70f780fc99 |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Surface can now be created only from an IGraphicBufferProducer it can't write itself to a parcel, nor can it be created from a parcel. Change-Id: I69165d5c54d6024b3e546e80d8b57e3dedda7893
ests/surface/Android.mk
ests/surface/surface.cpp
|
4d9b822e2c18142e55fe2611aa6cd7dc7d4a62c6 |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
get rid of ISurface ISurface was only used to get the IGraphicBufferProducer from a Layer. It's now replaced by a BBinder subclass / IBinder and is only used as a handle to the surface, to both refer to it and manage its life-time. Also cleaned-up a bit the ISurfaceComposer interface and "create layer" code path. Change-Id: I68d0e02d57b862cffb31d5168c3bc10cea0906eb
lient.cpp
lient.h
ayer.cpp
ayer.h
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
urfaceFlinger.h
|
b7a5b05b53b81cb24849c7e9934c941f64e05a42 |
12-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Fix missing recents screenshots We were using the "visible layer list" when taking screenshots, which doesn't work when a layer is behind other opaque layers and therefore hidden. We fix this by using the full layer list, filtered by the layerstack of the display we're looking at. Bug: 7552304 Change-Id: I4b6f77e5511aea94f8d218975b6e22738e7e5d5b
urfaceFlinger.cpp
|
d577641411f067c93aabcd2acf7ce06862fb26d3 |
08-Mar-2013 |
Mathias Agopian <mathias@google.com> |
make sure to call compositionComplete after taking a screenshot older drivers which are doing implicit synchronization need this or they could deadlock. Bug: 8341885 Change-Id: Icd980a6be16071678d6151e34725b3c1c547d7ee
urfaceFlinger.cpp
|
2be4e8ff23f24285f4c195ba5537c7a51c13be4d |
07-Mar-2013 |
Mathias Agopian <mathias@google.com> |
workaround to fix screenshot leak on N4 Bug: 8322020 Change-Id: Ie60af0eb431866b8d64b2674ae7bd8b5ee05f5d6
urfaceFlinger.cpp
|
438ca07b6ba74235e87bfbd78c94874d8bbde391 |
07-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Merge changes I66511c08,Ia051949f,Ic7451365,I5b571a4c into jb-mr2-dev * changes: Get rid of LayerBase. Make LayerDim a regular Layer instead of a LayerBase fold LayerBaseClient into LayerBase Remove support for ScreenshotLayer
|
13127d8921356dff794250e04208c3ed60b3a3df |
06-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Get rid of LayerBase. The functionality of LayerBase and Layer is folded into Layer. There wasn't a need for this abstraction anymore. Change-Id: I66511c08cc3d89009ba4deabf47e26cd4cfeaefb
ndroid.mk
lient.cpp
lient.h
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
2f73af9212487c81d31d07227fa8a2f4abc77638 |
06-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Make LayerDim a regular Layer instead of a LayerBase this is in preparation to get rid of LayerBase entirely Change-Id: Ia051949fc5205fd87371331145356ee11598a597
ayer.h
ayerDim.cpp
ayerDim.h
|
b79f61d41ef053bee1087ec612896c59f95f9686 |
06-Mar-2013 |
Mathias Agopian <mathias@google.com> |
fold LayerBaseClient into LayerBase Change-Id: Ic745136522df59c42f0885fd969e75ea55d09f01
lient.cpp
lient.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
urfaceFlinger.h
|
089a15298e045598bf15fd2a46284c34dd56384c |
05-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Remove support for ScreenshotLayer Change-Id: I5b571a4cf3faa77d2c4aca916fa4bd00a1065bb9
ndroid.mk
ayerBase.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
175264b09c6080b29a23fc9f545d4b99445714bd |
06-Mar-2013 |
Jeff Sharkey <jsharkey@android.com> |
Return NO_MEMORY when glReadPixels() fails. Change-Id: Ic66134ef457e8442ae9135e9ec50e3d02932a253
urfaceFlinger.cpp
|
306f18c5fb15ac05db09ece7241af02b9713a23d |
05-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Merge "rework screenshot API and implementation" into jb-mr2-dev
|
eabe3140f11e515639e7a70a1286dd6af7352c9e |
05-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Init displays to null layer stack" into jb-mr2-dev
|
2a9fc493dfdba67108e4335bb1fe931bc1e2a025 |
01-Mar-2013 |
Mathias Agopian <mathias@google.com> |
rework screenshot API and implementation - SurfaceFlinger now supports to take a screenshot directly into an IGraphicBufferProducer - reimplement the IMemoryHeap screenshot on top of the above - reimplement LayerScreenshot such that its BufferQueue is directly used as the destination of the screenshot. LayerScreenshot is now a thin wrapper around Layer Bug: 6940974 Change-Id: I69a2096b44b91acbb99eba16f83a9c78d94e0d10
ayer.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
01e29054e672301e4adbbca15b3562a59a20f267 |
20-Feb-2013 |
Jesse Hall <jessehall@google.com> |
Init displays to null layer stack When a display is added, initialize it to use an empty layer stack, so if it is somehow visible it will show black. It will be assigned the real layer stack -- along with a projection and other properties -- by window manager soon. Normally a display remains blanked until window manager has decided what to show on it, but for HDMI connected at boot that isn't currently the case. Bug: 7258935 Change-Id: Ic9bb25f7a9b8d9d3772b097ab1d6fa03bc8780a1
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
3da1672acbe6a84f1d69f1e21096115c60826aea |
01-Mar-2013 |
Mathias Agopian <mathias@google.com> |
implement display projection clipping in h/w composer - cropping to the projection's "viewport" is "simply" accomplished by intersecting it with the window crop expressed in layerstack space. Bug: 7149437 Change-Id: I0e90b3f37945292314b5d78a8f134935967e8053
ayerBase.cpp
ransform.cpp
ransform.h
|
a8bca8d84b559e7dcca010f7d6514333004020c7 |
28-Feb-2013 |
Mathias Agopian <mathias@google.com> |
refactor the crop region for hwc is calculated/set - the crop region is now always calculated and set in LayerBase::setGeometry which uses new virtuals to access the "content" crop and transform (which are provided by the Layer subclass) Change-Id: Ib7769bdec0917dd248f926600c14ddf9ea84897a
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
|
f5f714aa188884098aaecbe39d0bc61b40311c0d |
27-Feb-2013 |
Mathias Agopian <mathias@google.com> |
apply the projection's viewport to the visibleregion passed to hwc each desplay's projection's viewport essentially clips each layer, so this should be reflected in the visibleregion passed to h/w composer. DisplayDevice getViewport and getFrame are now guaranteed to return valid Rects. Change-Id: I4c25f34fb26af10179eb26d429ca6c384c671e91
isplayDevice.cpp
isplayDevice.h
ayerBase.cpp
|
5219a06d61ac4517506500363c5e8a5972dd7ac9 |
27-Feb-2013 |
Mathias Agopian <mathias@google.com> |
set correct crop rectangle in LayerBase::setCrop The crop always had left=top=0, because the crop position and the layer's transform were merged together in computeBounds() (which really used to compute the bounds in screen space, which we usually call the "frame" elsewhere in the code) Note: in practice this crop value is not used by hwc, because it's overridden in Layer::setGeometry(), which is why this bug was never apparent. Change-Id: I1ec6400a8fc8314408e4252708f43ea98c2fe64e
ayerBase.cpp
urfaceFlinger.cpp
|
a9a1b006e48320f5c501473e51e6c4a5f7a17b88 |
28-Feb-2013 |
Jesse Hall <jessehall@google.com> |
Initialize DisplayData fences to NO_FENCE, not NULL Also fix another place that was checking for NULL fence rather than Fence::isValid(). Bug 8283950 Change-Id: Ie06db327eb416828d8dac139171d96d4470b2e35
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
789a6c3f1dfe22a1ffea7f39b2098d7842cd1f30 |
25-Feb-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: fix a couple NULL fence checks This change replaces checks for a NULL fence pointer with calls to Fence::isValid. There should no longer be NULL fences. Change-Id: If17c9c132fcb1801531bf7588f8ba53476c57dad
ayer.cpp
|
e3c697fb929c856b59fa56a8e05a2a7eba187c3d |
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: Ibed34175ae273608393aaa5f0a7df207dc40d709
isplayDevice.cpp
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
ests/Transaction_test.cpp
ests/resize/resize.cpp
|
ac9fa427d4a86745e60a5f7fd8e3ea340c4db907 |
12-Feb-2013 |
Mathias Agopian <mathias@google.com> |
get rid of Surface identity and token we use the IBinder instead. Change-Id: I4aa0b58869ba43f19980013620051e5a261b062d
lient.cpp
lient.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1df8c345854155cbbcb9f80de9d12d66ea70ac08 |
20-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: disallow NULL Fence pointers This change eliminates the uses of a NULL sp<Fence> indicating that no waiting is required. Instead we use a non-NULL but invalid Fence object for which the wait methods will return immediately. Bug: 7892871 Change-Id: I5360aebe3090422ef6920d56c99fc4eedc642e48
isplayHardware/HWComposer.cpp
ayer.cpp
urfaceFlingerConsumer.cpp
|
351c2941736039c495dd7ac849ec64fbf7f3ff05 |
11-Feb-2013 |
Jamie Gennis <jgennis@google.com> |
Merge changes I8bded1ea,I7478293e * changes: SurfaceFlinger: add win anim frame time tracking SurfaceFlinger: remove a driver bug workaround
|
4b0eba949cc026ffb2c75313042d8a7bcb3fcf86 |
05-Feb-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add win anim frame time tracking This change makes the 'dumpsys SurfaceFlinger --latency' command with no extra args dump the frame timestamp data for the most recent frames that SurfaceFlinger generated that included window animation transaction changes. Change-Id: I8bded1ea08a4cddefef0aa955401052bb9107c90
rameTracker.cpp
rameTracker.h
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
5fe58b8ba6c5d78481730874236a1be48a90d61d |
08-Feb-2013 |
Mathias Agopian <mathias@google.com> |
only disable hwc when alpha < 1.0 Bug: 8149181 Change-Id: Ib3c7a44f04871e020adceeae16d002141ac758d4
isplayHardware/HWComposer.cpp
|
9f8386e1118c10dd4927f62637ec7162569bdbdc |
30-Jan-2013 |
Mathias Agopian <mathias@google.com> |
Add support for plane-alpha in HWC Change-Id: I218e7dd5f23de535aabce61e993002ab6cb46cdd
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayerBase.cpp
|
6cf6ba69f054aa0c0c6c79225cdfd719cfc8855c |
05-Feb-2013 |
Jesse Hall <jessehall@google.com> |
Merge "Remove unused HWCLayer::setPerFrameDefaultState()"
|
33c544c4d3af8bae518474df6a9da9b7c349b91a |
04-Feb-2013 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: remove a driver bug workaround Change-Id: I7478293e87899d6e467db8c2f9e295935c8b1d4e
ayer.cpp
|
7dd35a165d7b689c8a2c79b4e136669103b32232 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
am fc866eb8: am 845ed8fd: Merge "DisplayDevice: initialize mDisplayToken correctly" * commit 'fc866eb8423cd1d720683946f7d102547718b6c9': DisplayDevice: initialize mDisplayToken correctly
|
fc866eb8423cd1d720683946f7d102547718b6c9 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
am 845ed8fd: Merge "DisplayDevice: initialize mDisplayToken correctly" * commit '845ed8fdaa34d0f684c93bf4dbadb9162f769235': DisplayDevice: initialize mDisplayToken correctly
|
845ed8fdaa34d0f684c93bf4dbadb9162f769235 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
Merge "DisplayDevice: initialize mDisplayToken correctly"
|
51d22007386f171e1c696786ddce957e78fc4a03 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
Remove unused HWCLayer::setPerFrameDefaultState() Bug: 7977590 Change-Id: Ic49c4e38ef2ee6beaeb268c406347c882135bdf0
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayerBase.cpp
|
800856a7b7f8d89c1a64955f152549b8f42cd3e0 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
am f3e9d5bd: am cbe51356: Merge "Remove support for legacy HWC version encoding" * commit 'f3e9d5bde57a41593a7dbc15e6f1fdb1ea64ea74': Remove support for legacy HWC version encoding
|
f3e9d5bde57a41593a7dbc15e6f1fdb1ea64ea74 |
14-Jan-2013 |
Jesse Hall <jessehall@google.com> |
am cbe51356: Merge "Remove support for legacy HWC version encoding" * commit 'cbe5135610cd3c919e6334fada72cc52238bb8b0': Remove support for legacy HWC version encoding
|
c19c15174b1a07c5d18f45f26bee7893481ab41d |
12-Jan-2013 |
Andy McFadden <fadden@android.com> |
Merge "Add some comments."
|
8f06a8c2c80491465e8742c1bf45315dab7017e3 |
11-Jan-2013 |
Andy McFadden <fadden@android.com> |
Reduce C++11 warnings A few typecasts to fix "narrowing conversion" complaints. Change-Id: Ib2118079a2ca33959c748d03d8c6f1722d62e8fe
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
882e3a39ed770b335a203e233b57127fde1c839e |
09-Jan-2013 |
Andy McFadden <fadden@android.com> |
Add some comments. Also, minor tweak to SurfaceTextureLayer. Change-Id: If616d5ee4e8226dd0e16c5dbb0e0f80db553110e
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
7296051995fbaea919480a6cc2dabb729dabc95b |
11-Jan-2013 |
Jesse Hall <jessehall@google.com> |
Remove support for legacy HWC version encoding Change-Id: If03ae1ebf10d15777310e1449a57473021390582
isplayHardware/HWComposer.cpp
|
dd9d192287bcd54b5aef68f201dacca26cfa850e |
20-Nov-2012 |
Mathias Agopian <mathias@google.com> |
workaround: don't reset compositionType to HWC_FRAMEBUFFER This workaround a HWC HAL issue in Nexus 7, which causes videos and live wallpapers to animate slowly. Bug: 7563862 Change-Id: I87803aaad9751b1fd8392b9732304d4bccec659a
isplayHardware/HWComposer.cpp
|
27e2562868dcd3ad26f9b4677b64ae272941704e |
07-Jan-2013 |
Chih-Wei Huang <cwhuang@android-x86.org> |
DisplayDevice: initialize mDisplayToken correctly mDisplayToken should be initialized by displayToken. Change-Id: I0a5fec1f1732200a32d10b1575239dceffe6dee4
isplayDevice.cpp
|
2adaf04fab35cf47c824d74d901b54094e01ccd3 |
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: Ia03e468888025b5cae3c0ee1995434515dbea387
isplayHardware/FramebufferSurface.h
ayer.cpp
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
urfaceTextureLayer.h
|
c6f04666c205a72add3c856455bf212f0c84d6fc |
12-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: Move GraphicBufferAlloc to libgui"
|
392edd88cb63d71a21a86a02cf9c56ac97637128 |
30-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Move GraphicBufferAlloc to libgui This change moves the GraphicBufferAlloc class from SurfaceFlinger to libgui. Change-Id: Idf31d2004efa2651b60590733f73c4a7b831e8a9
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/GraphicBufferAlloc.cpp
isplayHardware/GraphicBufferAlloc.h
urfaceFlinger.cpp
|
97eba8904c2f221c42a9473407223a4c3a213f75 |
12-Dec-2012 |
Andy McFadden <fadden@android.com> |
Avoid unnecessary texture bind In SurfaceFlingerConsumer, check to see if native fence sync is enabled. If so, defer the texture binding step to Layer::onDraw. Change-Id: I7d4034a31c0143207eea2509dfa13ef3820f9b8c
ayer.cpp
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
bf974abe92f7495529916fe0f483f3b56e7c30e3 |
05-Dec-2012 |
Andy McFadden <fadden@android.com> |
Refactor SurfaceTexture a bit. Rearranges updateTexImage() so that the SurfaceFlinger-specific behavior is in a new SurfaceFlingerConsumer subclass. SurfaceTexture behavior should not be altered. Instead of acquire-bind-release we now do acquire-release-bind, but since it's all done with the lock held there shouldn't be any externally-visible change. Change-Id: Ia566e4727945e2cfb9359fc6d2a8f8af64d7b7b7
ndroid.mk
ayer.cpp
ayer.h
urfaceFlingerConsumer.cpp
urfaceFlingerConsumer.h
|
46b6bce198c81ce9a4e0583e876d080ad48db003 |
08-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: work around a driver bug Change-Id: I4490f308b12e9b6fda2ea7255eb19d867d6d008c
ayer.cpp
|
9913b9941ef90a98d826f3338c0a1ec3e4497b8c |
28-Nov-2012 |
Mathias Agopian <mathias@google.com> |
am a7da0dda: am 98cbec81: am efd614b8: Merge "make transform hint multi-display aware" into jb-mr1.1-dev * commit 'a7da0dda39cf1e807eea1304b48d4583e7329b72': make transform hint multi-display aware
|
a7da0dda39cf1e807eea1304b48d4583e7329b72 |
28-Nov-2012 |
Mathias Agopian <mathias@google.com> |
am 98cbec81: am efd614b8: Merge "make transform hint multi-display aware" into jb-mr1.1-dev * commit '98cbec81be1d39223e33abde9ac35e43b62918bf': make transform hint multi-display aware
|
1e310d64d1e51faf35962f23da1c90ec95a35e5d |
27-Nov-2012 |
Jesse Hall <jessehall@google.com> |
am 2004307b: Merge "Create builtin display tokens on demand" * commit '2004307b65c0cb34c854331e5be21d3426a3ef06': Create builtin display tokens on demand
|
6edebdf6003d7efdbf9ca5dc83fef17b750693f1 |
09-Nov-2012 |
Jesse Hall <jessehall@google.com> |
Create builtin display tokens on demand For hotpluggable builtin displays (currently just HDMI), create the display device IBinder token when the display is connected and destroy it when the display is disconnected. Previously we created the tokens at startup and never changed them. This made it so that when comparing current and drawing state, we couldn't tell whether a display had been disconnected and reconnected. Bug: 7491120 Change-Id: I2ac82b864e10cb1cd0a308782d7e0ab9745c5d81
urfaceFlinger.cpp
urfaceFlinger.h
|
8430095879d2fa6878e68f8f12da4e704815ac09 |
22-Nov-2012 |
Mathias Agopian <mathias@google.com> |
make transform hint multi-display aware if a layer is not mirrored, we now use its display as the source for the transfrom hint calculation instead of always using the default (main) display. this change does two thing: 1) we make updateTransformHint take a DisplayDevice as a parameter instead of hard-coding the main display. 2) each time we do a transaction that could change the hint, we go through all layers and figure out which display should be used for their transform hint. Bug: 7599344 Change-Id: I9b04a95e6c372dd770bacf81d8ef6f8e31b87b83
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
82dbc7429f5f9f2b303b31dc5b9f2bfd1bbe6add |
09-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: refactor frame time tracking This change moves the frame time history tracking code out of Layer and into a new class called FrameTracker. It also changes the tracking to use signal timestamps from fences when available for more accurate results. Change-Id: I323c5f075c58bf86ce363b52af885ad0f6365f2b
ndroid.mk
rameTracker.cpp
rameTracker.h
ayer.cpp
ayer.h
|
e64b38fad2cc6686fb6691aaf65c735f505a49a5 |
20-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: track the HWC retire fences"
|
3e095b251503d71bea04d6b707e8188cd30034e2 |
20-Nov-2012 |
Mathias Agopian <mathias@google.com> |
workaround: don't reset compositionType to HWC_FRAMEBUFFER [DO NOT MERGE] This workaround a HWC HAL issue in Nexus 7, which causes videos and live wallpapers to animate slowly. Bug: 7563862 Change-Id: I16ad85317e3e7f47f005e7397357c14186b0a13d
isplayHardware/HWComposer.cpp
|
2ec3e0748bff8d75baade2ddda9fbfa21a3b7d3f |
12-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: track the HWC retire fences This change adds functionality to the HWComposer class to track the retire fences returned by each hwc set call. It adds the HWComposer::getDisplayFence method to allow other parts of SurfaceFlinger to get a fence that will signal when the most recent flip takes effect on a display. Change-Id: I676e0f98440fc58ed70908aa1a1e2ee3e7bf9eb2
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
75220f9b93bdd8acedefe46d38fffc911a704637 |
15-Nov-2012 |
Mathias Agopian <mathias@google.com> |
am 35d39886: am f9730c3b: am ee932d0a: Reset compositionType to HWC_FRAMEBUFFER before calling prepare() * commit '35d3988616cc40c0975d82f166c641109b787a58': Reset compositionType to HWC_FRAMEBUFFER before calling prepare()
|
ee932d0ad1a16cc93b4bd9eaf9cb3cc756fb2dfc |
14-Nov-2012 |
Mathias Agopian <mathias@google.com> |
Reset compositionType to HWC_FRAMEBUFFER before calling prepare() Honor the documentation. this broke in JB-MR1. Change-Id: I841a93b409fc940374bc748c4e143d82a192669c
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayerBase.cpp
|
692c723e84e6f2747447d871d468ff50e5c73f19 |
09-Nov-2012 |
Jesse Hall <jessehall@google.com> |
Create builtin display tokens on demand For hotpluggable builtin displays (currently just HDMI), create the display device IBinder token when the display is connected and destroy it when the display is disconnected. Previously we created the tokens at startup and never changed them. This made it so that when comparing current and drawing state, we couldn't tell whether a display had been disconnected and reconnected. Bug: 7491120 Change-Id: I23b77037dc0f548d549abf580339edd0e3c626e9
urfaceFlinger.cpp
urfaceFlinger.h
|
2788a3526d7abb9afc64d10118a03734327a89e7 |
06-Nov-2012 |
Mathias Agopian <mathias@google.com> |
am 731e0331: am e70fbe8b: am 02b95105: fix transitions from hwc to GLES composition * commit '731e0331eb402ec4564b69eaeb8b605a8b800b1b': fix transitions from hwc to GLES composition
|
02b95105754b1859a97e234b79f41489a4677c20 |
06-Nov-2012 |
Mathias Agopian <mathias@google.com> |
fix transitions from hwc to GLES composition If we switched from HWC to GLES but the dirty region was empty (could happen if the dirty region is outside of the screen for instance), we need to force a full screen composition. In this change we ignore the dirty region for the purpose of rejecting the whole update and we rely on the fact that it will later be expanded to the whole screen. This was the least risky fix. Bug: 7467760, 7452931 Change-Id: I2132f2f963b00a3ce7150adadb107b0367b3862e
urfaceFlinger.cpp
|
74284b9467a753209054bfa769ba1e6d110e34f9 |
05-Nov-2012 |
Igor Murashkin <iam@google.com> |
Merge "Change ConsumerBase's FrameAvailableListener to be a weak pointer"
|
a4a3149a36bc69a06e4824aeae909ab910661070 |
29-Oct-2012 |
Igor Murashkin <iam@google.com> |
Change ConsumerBase's FrameAvailableListener to be a weak pointer This prevents strong reference cycles when the listener implementation also holds a strong pointer to the ConsumerBase Bug: 7425644 Change-Id: I1514b13a32b18d421c902dddebec0765a989c55c
ayer.cpp
ayer.h
ayerBase.h
|
766dc49c17dda977bf7b93a5fd8da41c0b737611 |
31-Oct-2012 |
Mathias Agopian <mathias@google.com> |
rework a bit how we scissor the display the scissor rect is now computed once by DisplayDevice and is combined with the "undefined" region so that the letter-boxed area of the screen get cleared in drawWormhole. Bug: 7149437 Change-Id: Id2f30516a5786f32eace7f876ff32028f954f357
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
f45c510009edab4a3e93f8d66b2e30aa26759fed |
25-Oct-2012 |
Mathias Agopian <mathias@google.com> |
partially implement external display clipping we perform external display clipping only on the GL side (ie: not done on the h/w composer side, which is harder and would be too risky). in practice this means that WFD will be clipped properly, while HDMI *may* or may not depending on how hwc is used. Bug: 7149437 Change-Id: I92d4d04220db72b6ffb134c7fa7a93af569723a5
urfaceFlinger.cpp
|
d17e3b5f6cf71eb52bc81f37719254ce08244b34 |
22-Oct-2012 |
Mathias Agopian <mathias@google.com> |
prevent a client from crashing surfaceflinger a misbehaving or malicious client could cause SF to crash by providing a "fake" IInterface. we now check the IInterface we get is our own and local. Bug: 7278879 Change-Id: Ia19d05902d4b2385c5a16416148378d4998833fd
urfaceFlinger.cpp
|
ba7dc2db6e93a2407c8c328f2838591b7b760658 |
22-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: add support for secure displays" into jb-mr1-dev
|
dd3cb84cfbe8068790c6233b5829fae9c4a0ee93 |
20-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add support for secure displays This change adds support for displays that are not allowed to display surfaces with the eSecure flag set. All non-virtual displays are considered secure, while virtual displays have their secure-ness specified at creation time. Bug: 7368436 Change-Id: I81ad535d2d1e5a7ff78269017e85b111f0098500
isplayDevice.cpp
isplayDevice.h
ayer.cpp
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
620685c2e684082c82657732d1e35cefd0c79006 |
19-Oct-2012 |
Andy McFadden <fadden@android.com> |
Fix emulator vsync The code that reserves display IDs was only run when a hardware composer was present. The eventControl() function, which handles enabling of vsync, was ignoring the request because the primary display didn't appear in its set of allocated IDs. This moves reservation of IDs for built-in displays outside the HWC-only block. Also, added a couple of warnings in eventControl(). Bug 7376568 Change-Id: I185ccdf817a25499b5c2668f8f6d594afb8c1568
isplayHardware/HWComposer.cpp
|
7c41bf7092b75dba6029cd3bbc842d3a2661b0aa |
17-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: change the animation timeout This change changes the animation transaction timeout from 500us to 5s. Bug: 7362633 Change-Id: I9bed8e74f726dae2daa398afc29babcea00d5b04
urfaceFlinger.cpp
|
db9b41fd157279d1b988a854e0d7c5b43c2fac38 |
16-Oct-2012 |
Mathias Agopian <mathias@google.com> |
fix a corruption in blank/unblank we were holding a reference (ie: pointer) to a sp<DisplayDevice> while processing the message. Meanwhile the object itself could go away and we would end up accessing a dead object. the root cause of the problem is that we are accessing mDisplays[] in a few places outside of the main thread. Bug: 7352770 Change-Id: I89e35dd85fb30e9a6383eca9a0bbc7028363876c
urfaceFlinger.cpp
urfaceFlinger.h
|
3365c56716432d3bfdf41bb82fb08df821f41d0c |
16-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: add animation transactions" into jb-mr1-dev
|
2d5e230292c27d59f4c096bc742a0a19abf811c1 |
16-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add animation transactions This change adds a transaction flag for WindowManager to indicate that a transaction is being used to animate windows around the screen. SurfaceFlinger will not allow more than one of these transactions to be outstanding at a time to prevent the animation "frames" from being dropped. Bug: 7353840 Change-Id: I6488a6e0e1ed13d27356d2203c9dc766dc6b1759
urfaceFlinger.cpp
urfaceFlinger.h
|
837d2f9e83e7d8625ef482d9c9d9afa852c8dbaa |
15-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Always set vertex alpha when drawing screenshot layers The screenshot is a GL_RGB texture, and the GL_REPLACE texture env mode uses vertex alpha for GL_RGB textures instead of alpha=1.0. Bug: 7340077 Change-Id: I6fbb907023e48f9c422b15a33da79757d6726840
ayerScreenshot.cpp
|
dd57d551944c01394bc2807d962be4953c58c7c1 |
12-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: make the num FBs a board config" into jb-mr1-dev
|
cdbaecb54152ce98789823420d426077d72aa1e7 |
12-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: make the num FBs a board config Bug: 7283132 Change-Id: I38116f39fc18212f2daab94bbfc3daaf89439fc4
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
|
b763d5fffa2f942a6ae3637fab17439dd32dbebc |
11-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Assume LayerScreenshot has pre-multiplied alpha Bug: 7300129 Change-Id: Ie9114adc4b5c9a8cc3c65bfe6d9478b2cba4e0d8
ayerScreenshot.cpp
|
9e9689c11148521d2c16a121a0b87b062be0714c |
11-Oct-2012 |
Andy McFadden <fadden@android.com> |
Fix HDMI unblank behavior Two issues: (1) We were announcing the hotplug event before we were ready to handle blank/unblank events, so we were losing the initial unblank that power manager sends us when HDMI is first plugged in. This left the display blank until you toggled the device power off/on. (2) We were retaining fbTargetHandle for HDMI after the display was disconnected. The value didn't get updated when HDMI was reconnected because the display was blank, so we didn't go through that code path. So, when HDMI was re-connected, we passed stale data into the HWC. Bug 7323938 Change-Id: I2335d24fd7b0f00bb23fc63aa7bcf44cb8857c73
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
0acb00c2d780b60ed3d71be256460375dd8715b4 |
10-Oct-2012 |
Mathias Agopian <mathias@google.com> |
Merge "fix typo that prevented proper loging of EGL error code" into jb-mr1-dev
|
b8fc00bfb41a61aeda186eec8f14522ff32f23f8 |
10-Oct-2012 |
Mathias Agopian <mathias@google.com> |
fix typo that prevented proper loging of EGL error code needed for investigating 7309949 Bug: 7309949 Change-Id: If29a5c08d0e87f46b44ba2e1030be61cb4d1403b
isplayDevice.cpp
|
3292cae8c37fc8d7cd8bf77fafaa55e6fc7a8cc5 |
09-Oct-2012 |
Mathias Agopian <mathias@google.com> |
don't automatically unblank external displays this should be handled by the display-manager. we were doing that in SF because until recently we didn't have enough support in the HAL. however, this is now causing other problems when plugging hdmi while the screen is off for instance. Bug: 7150885 Change-Id: I739b209056a765d38d05295cf202f67ee0f506ae
urfaceFlinger.cpp
|
cb55857bbde34a06c19dde3db5064d1717a0173e |
05-Oct-2012 |
Mathias Agopian <mathias@google.com> |
fix dumpsys Layer name when using multiple displays Bug: 7288401 Change-Id: I14beeef58fac5270cef3b611e18c163060efe6c3
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1b3aeb4844fe198c1fb61064d0cec3f5ac63f7d3 |
08-Oct-2012 |
Mathias Agopian <mathias@google.com> |
fix SurfaceFlinger DDMS debugging DdmHandleAppName.setAppName() signature changed which broke this debugging feature. Needed for debugging b\7267680 Change-Id: I4482bf5a441e91bef89d1ddea9a4152333be7f88
ndroid.mk
dmConnection.cpp
|
5a8f9012ee8bb9dc1ad14432b96a821f08802ee3 |
05-Oct-2012 |
Andy McFadden <fadden@android.com> |
Tone down a fatal assert The new disconnectDisplay function doesn't handle virtual displays, but it may be called for them. Return without doing anything. Bug 7281786 Change-Id: I62607f2ae6073fa66b393f55932604aeb8e03566
isplayHardware/HWComposer.cpp
|
9a14392256354538f1f43a5e80fe46c2c2b965cb |
05-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Ignore display state changes for disconnected displays When a display is disconnected, removing it from SurfaceFlinger's display list is non-atomic with removing it from the Display Manager and any in-flight transactions. So SurfaceFlinger might get a display state change transaction for a display it has already forgotten about. Just ignore these. Bug: 7288082 Change-Id: Ic27e55377f3db40fb34e3b1cd67e43297df117a2
urfaceFlinger.cpp
|
81cd5d3b94d21253a0be925f4ae58cc7f4afeef7 |
04-Oct-2012 |
Mathias Agopian <mathias@google.com> |
make sure we don't call into the HWC HAL when not needed when enabling/disabling vsync we now make sure to not call into the HAL if the state wouldn't change. Bug: 7274951 Change-Id: Ie24a6d68888a51b577acf9c2a973d85437cbacaf
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
27ec5739bc05330e08b02f25b62a8f597bad897a |
03-Oct-2012 |
Andy McFadden <fadden@android.com> |
Fix crashes after HDMI disconnect The display was being removed from SurfaceFlinger's list before we had a chance to reset HWComposer's layer list, so we were passing stale data into the hardware composer (which has its own per-display data). This resulted in "invalid gralloc handle" complaints. We now clear the layer list immediately after removing the display. The display was being removed while its EGLSurface was still "current", resulting in "cancelBuffer: BufferQueue has been abandoned" complaints. We now call makeCurrent on the primary display before removing the external display. Bug 7274254 Change-Id: Ia59e3a61d7ec46488b96bf93ec5e4ed3488b70e4
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
ba607d53c6a94ea8c4c12571980c4ad159af308b |
01-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Add Fence::waitForever which logs a warning timeout, and use it Bug: 7217641 Change-Id: If0c1a613ead307c4045a47824174bf40c72bc7d7
isplayHardware/HWComposer.cpp
|
d30b36d1fd0c7ab80553e784a155266be9703e47 |
01-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: reset the FB_TGT acquire fence This change makes SurfaceFlinger reset the acquire fence fd to -1 after each call to HWComposer::commit. The HWComposer implementation is resonsible for closing the fd, so SurfaceFlinger should make sure not to pass it to HWC multiple times. Change-Id: I79554d9f6d6ef2b77d632d40251516c1f5b16ddb Bug: 7258954
isplayHardware/HWComposer.cpp
|
135e5899f70a67e62baaf6dbec7ba2ce611ca16a |
01-Oct-2012 |
Mathias Agopian <mathias@google.com> |
save/restore viewport properly when taking screenshot Bug: 7241739 Change-Id: Iba8b9ffc75ab47fbc56169e65da26d96850a9297
isplayDevice.cpp
urfaceFlinger.cpp
|
bae92d0d605e99a14731add4f11b72413b2835e5 |
28-Sep-2012 |
Mathias Agopian <mathias@google.com> |
reset GL viewport and project when caputring the screen Bug: 7241739 Change-Id: I3bb5214b070384de9be2026647865c6c236a4331
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
c01a79d77b829e7de86ef137694e8ad708470ca1 |
28-Sep-2012 |
Andy McFadden <fadden@android.com> |
Pass display arg to blank/unblank This allows us to blank and unblank displays other than the built-in display (e.g. HDMI). Bug: 7240511 Change-Id: I89ea13f9e497be74c3e1231d0c62fb558e93e0f8
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
a4310c8be2dc3406a668ee99020d52187173232f |
26-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: don't always set HWC_GEOM_CHGD This change fixes a bug in SurfaceFlinger that caused the HWC_GEOMETRY_CHANGED flag to be set every flip. Change-Id: I4f395a2883bcbb53b23b3d14941aff108739c9f0 Bug: 7234237
urfaceFlinger.cpp
|
e206549ccf23ec5ba95062f944674e58569c8065 |
27-Sep-2012 |
Andy McFadden <fadden@android.com> |
Merge "Recompute visible regions more vigorously" into jb-mr1-dev
|
ab10c5804c250e7f392c8262f687766edec2e9f4 |
27-Sep-2012 |
Andy McFadden <fadden@android.com> |
Recompute visible regions more vigorously Some of the code in latchBuffer was calling invalidateHwcGeometry, but that didn't cause the SurfaceFlinger visible region code to re-evaluate the layer's visibility. Set the recomputeVisibleRegions "out" parameter instead. Bug 7235797 Change-Id: If6ba33fbd1a594cd64cc5253aebf752d6ceda1c9
ayer.cpp
|
a8026d21f3f2f09e3416cbd33c277fbd15d8cf4e |
25-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Stop using transparent region for computing visible regions The transparent region hint is computed only from view layout locations, ignoring post-layout translation. If a SurfaceView is layed out with no other views above it, but a view is moved above it post-layout, that view's layout bounds would be subtracted from the window's transparent region instead of its drawing bounds. Prior to this change, the view would not be visible (except where its layout bounds and drawing bounds overlap). With this change, composition uses visible regions computed without regard to the transparent regions. However, if all of a layer's visible region is transparent, it will be removed from the list of layers to composite. This doesn't fix the root problem of incorrect transparent regions, and doesn't prevent bad composition in all cases. But it does avoid it for some existing apps, whiel still allowing the transparent region hint to save power in the important fullscreen-video-in-a-SurfaceView case. Bug: 7179570 Change-Id: I47cf939e12129b167afa344b8b036e8827103ac8
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
c4a8daaa998ea524c9aaa9817021ff7c4467c3dd |
26-Sep-2012 |
Mathias Agopian <mathias@google.com> |
Merge "add support for EGL_FRAMEBUFFER_TARGET_ANDROID" into jb-mr1-dev
|
32341381c9493d7953e40f7f79653cfc52868863 |
26-Sep-2012 |
Mathias Agopian <mathias@google.com> |
only abort when errors happen on the main display Bug: 7232690 Change-Id: I2c4b35a82f131da26deea738ef294e100e536d15
isplayDevice.cpp
|
722b98f9dfe8f04de8734630198b99a6cd024118 |
26-Sep-2012 |
Mathias Agopian <mathias@google.com> |
add support for EGL_FRAMEBUFFER_TARGET_ANDROID we now try first with EGL_FRAMEBUFFER_TARGET_ANDROID, and pick the first config we find. Otherwise, we revert to the old algorithm. Bug: 7232584 Change-Id: I8d5c5a4ce48420832c2e2828718a8f53325effb0
urfaceFlinger.cpp
urfaceFlinger.h
|
7b1905113712281c777b230648d3fbb69ae4f42c |
26-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix a crasher when running out of memory MemoryHeapBase::getBase() returns MAP_FAILED in case or OOM, not null which is what SF was checking against. This addresses one of the issues of bug 7230543. Bug: 7230543 Change-Id: I763a88f64a2f9ff75eb139cfbaf9a1a9746c5577
urfaceFlinger.cpp
|
bb53b0e4b97634bc31808965f81b3ab4193d0e84 |
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
When "show visible regions" is enabled we were missing a call to HWC Bug: 7204034 Change-Id: I64dd78362fa75149513a7d9ff92dde175e9b4958
urfaceFlinger.cpp
|
4803b74e2a12a508f7bbfde6f6a962fe3299c61c |
25-Sep-2012 |
Andy McFadden <fadden@android.com> |
Show build config in dumpsys SurfaceFlinger This adds a line to the "dumpsys SurfaceFlinger" output that shows build-time configuration values. Example: Build configuration: [sf HAS_CONTEXT_PRIORITY] [libui] \ [libgui USE_FENCE_SYNC] Bug 7206633 Change-Id: Ibe1856b459d34a4be6ee83a4ebfd2807e6cc68a0
urfaceFlinger.cpp
urfaceFlinger.h
|
a046dd9772cd8da4ead9edc7a89d9992ff0d38cf |
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix Layer croping in SurfaceFlinger Bug: 7224628 Change-Id: I9421f0a06b9a27fe00eefaa1dfab8c4309c380c9
ayerBase.cpp
|
2a23184e4109060ec772763e80dae2132cf9d2eb |
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
don't call eglMakeCurrent() before calling HWC commit() on HWC 1.1 this call is not needed and misleading on HWC 1.1; it can also have a negative performance impact when multiple displays are used. Bug: 7124069 Change-Id: I47cd25c9d6e69abcc9333b9ecd5044e8fb1919ec
urfaceFlinger.cpp
|
52e21483fa48baeb4a88372d75e083bca2e92923 |
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
handle EGL errors for now we just restart the runtime. bug: 7225248 Change-Id: I7638ffe82075a4db9e7e6f9e35cf48afcb5a387a
isplayDevice.cpp
|
9e2463e71796964cfaa06bf09a880875ac3537bc |
22-Sep-2012 |
Mathias Agopian <mathias@google.com> |
add/remove displays properly on hotplug events Bug: 7191563 Change-Id: I8f0fbf3b29658c9479443141798e6f288a1f2d52
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
ff28e201ec0c6d620eaaa29814ab52958487dc31 |
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
Display events now always carry the display id they happened on Change-Id: I12de1d883c23927722bc3a71b782f0079de4e831
ventThread.cpp
ventThread.h
|
b4d18ed34e3513f3a14ea0876c7e330bee72a529 |
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix an issue where hotplug events were not dispatched Change-Id: I527eec77f338cd6f1a9021aa4c9d384dbddd6d2a
isplayHardware/HWComposer.cpp
ventThread.cpp
|
4c0751a1f6e4ee941791012b31f9dbc65601e1d6 |
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
return an error, as expected, when querying a disconnected display Change-Id: I405a3a7bb42b9bbd2ec7bfe09e60e1b7acf7389d
urfaceFlinger.cpp
|
38e623bc5c2d7224ebd5b82efaea401bc8e5367a |
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix a typo preventing pre hwc-1.1 devices from booting Change-Id: Icf01254689633d04967872749ac947a671e47ed8
isplayHardware/HWComposer.cpp
|
f5a33928349bebc8eebc9f466618997e98c24e68 |
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
we now correctly set-up connected screens during boot Change-Id: Ie8b1a3b97ad1821cc970e43abe96c8cec7135b66
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
148994e5f33ce240ff24ceb5bc0500b7f2001959 |
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
We now report hotplug events to the framework Change-Id: I2d6b7787d39e5929485a551e4982498c5053c211
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1604f777d11c40daae8ec91d8ea75625996bfbac |
19-Sep-2012 |
Mathias Agopian <mathias@google.com> |
one more step toward HDMI support getDisplayInfo() now returns proper information for HWC managed displays. hotplug is sitll not supported; so this is not fully correct as the information returned will be bogus if the HDMI screen is not plugged in. Bug: 7191563 Change-Id: If55d8e829fae0443571548155007f486cdf9bc9f
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
eba8c688f633f3f3f1b75c2bc64faf799dd2b5f2 |
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
calculate wether we filter on a per-display basis Change-Id: I79d80b432b20b3d02428da19add464ac1e2b9378
isplayDevice.cpp
isplayDevice.h
ayer.cpp
ayerBase.cpp
ayerBase.h
|
f33e4b6f13bc3ee2d2a4e1abd1ada171c70d3492 |
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
GraphicBufferAlloc class was declared twice this was confusing because the one in FramebufferSurface wasn't in fact being used Change-Id: Ied45aec20d804cfbe52440f9b2f2852a85c757cf
ndroid.mk
isplayHardware/FramebufferSurface.cpp
isplayHardware/GraphicBufferAlloc.cpp
isplayHardware/GraphicBufferAlloc.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1887af43a5dd5181f4582a6090ae25c7aa17fa4a |
20-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Allow 16-bit color EGLConfigs" into jb-mr1-dev
|
f21cffa7d707dad10b2974c58c91482f7ca689ac |
20-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Allow 16-bit color EGLConfigs The emulator without GPU acceleration only supports 16-bit framebuffers. Bug: 7185810 Change-Id: I883180367bf5b291d5e70427ab586d2e17868a96
urfaceFlinger.cpp
|
d56eff2f49e64bb71863ffb866af8c3f686b96e9 |
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix typo in DisplayDevice logs Change-Id: I593ef674f12073bd9d690946447031394ef9044e
isplayDevice.cpp
|
1d12d8a8e61163b35cf42c51c558a67138014e82 |
18-Sep-2012 |
Mathias Agopian <mathias@google.com> |
improve logging of external displays Change-Id: I041aebb7fc655aeca98bbf698d15e05d7c12cac9
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
6ab93290aeed63f139b0e77819ea889bbce9ec8b |
18-Sep-2012 |
Mathias Agopian <mathias@google.com> |
suppress superfluous log Change-Id: I838f2de4cf99e885833c4f42e2a69d6e3bb8eea5
isplayHardware/HWComposer.cpp
|
aeb76d160c530786d58d6a8b35d9b4a75a2279e3 |
18-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Check that HWC exists before trying to use it" into jb-mr1-dev
|
d3d35f18345c3ef93217313a583ace473b5a47ad |
18-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Check that HWC exists before trying to use it Bug: 7185810 Change-Id: I1271d6ba397f3abf0ef166b8d03b9b26b72e28d7
isplayHardware/HWComposer.cpp
|
3941cb240d438bfdebe24920bb2ada86456a0bf9 |
18-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: default to doing GL sync This change makes updateTexImage default to performing the necessary synchronization and adds an argument for SurfaceFlinger to disable that synchronization so that it can be performed lazily. Change-Id: I7c20923cc786634126fbf7021c9d2541aa77be5d Bug: 6991805
ayer.cpp
|
8dfa92fef9759a881e96ee58d59875d35023aab9 |
18-Sep-2012 |
Andy McFadden <fadden@android.com> |
Plumb display name into SurfaceFlinger The Surface createDisplay() call takes a display name for debugging. This change carries it through SurfaceFlinger and displays it in the "dumpsys SurfaceFlinger" output. Bug 7058158 Change-Id: I79f3474a8656ff1beb7b478e0dbf2c5de666118a
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
d870703d5566490cfdfb389d9336b2b8d3c6cc7a |
18-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix external displays we were not calling eglSwapBuffers() on external displays because they can't use HWC which caused us to think they didn't have GLES composition. Change-Id: I6cef4ae40b138412d2e6f2acda33c9d222b03a83
isplayDevice.cpp
|
da27af9832a0170f1fc40ef3f21371c4d30d21b3 |
14-Sep-2012 |
Mathias Agopian <mathias@google.com> |
add support hwc 1.1 Bug: 7124069 Change-Id: I53d705105c4ad8954d3f50ee4f4c8b7ec936b871
isplayDevice.cpp
isplayDevice.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
cde87a3b9d3f8dc15232d927b56ee9e5e520f58d |
13-Sep-2012 |
Mathias Agopian <mathias@google.com> |
refactor things a bit - decouple GL and main display initialization - ensure that each "supported" display has its own FramebufferSurface - onScreenAcquired/Released now takes a display Change-Id: If34a05f3dea40f6c79db77f4dde283a2580daac4
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
6905205c8d130b6ea3a813c1b9283492ed183367 |
15-Sep-2012 |
Andy McFadden <fadden@android.com> |
Fix transform hints The hints were being set a little too late, so the pre-rotation stuff wasn't quite working. Bug 7054997 Change-Id: Id8d5c626db7a76f768ba762a145b315878ee08e6
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
6e220a6ce6971555b883f4852c6e5d4c7a617815 |
14-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Fix display projections when translated. There are two different translations to apply in the logical orientation, one before scaling and one after. So translate, scale, translate then rotate. Bug: 7139798 Change-Id: I0726991cadb62988390e77503dbbaed54f07bfe3
isplayDevice.cpp
urfaceFlinger.cpp
|
ae2cfb5746e87f1bf17c446e20274c41ce0a57ce |
13-Sep-2012 |
Andy McFadden <fadden@android.com> |
Minor tweaks A couple of minor cleanups I stumbled over while looking at other things. Change-Id: I385ecfe1afefd577afbc59d7ef1d98d868073651
isplayHardware/HWComposer.cpp
ventThread.cpp
ventThread.h
|
a4383fd9de407d16342cd1069f75d2f0207efc0f |
13-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Initialize new HWC 1.2 fields" into jb-mr1-dev
|
fa32888f5822093f69522086d96ea2d493011a67 |
13-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Fix display projection transforms" into jb-mr1-dev
|
ce3a0a541c3dde1330551bd7a048cd9d92335c00 |
13-Sep-2012 |
Mathias Agopian <mathias@google.com> |
don't call hwc with non-empty layer lists for blanked displays we now make sure to take the blanked state of a display into account when we build its list of visible layers, this ensures that we won't call prepare/set with a non-empty list when the display is blanked. Possibly fixes 7075380, 7103553, 7130187, 7016215 Bug: 7075380 Change-Id: I9fdd2e73d1b7621eaeca3d4ac2ae60d9fb1b3631
urfaceFlinger.cpp
urfaceFlinger.h
|
db27621e22559a1b16414f890677ef04242fbc3b |
07-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Initialize new HWC 1.2 fields Also rename resolution* to width/height. Change-Id: Ia5f0c50d3f0a349160f314a3257c3b985e13ef1d
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
6360ec42d414b1351ecb6c5fc4b8afa30d8f4ebf |
12-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Fix display projection transforms Bug: 7139798 Change-Id: I61aafe99180d85563c6880d16bc367fce80e6022
isplayDevice.cpp
|
2c7c8ba56ad9c0c08fde6f86771475f03a03e6fd |
12-Sep-2012 |
Andy McFadden <fadden@android.com> |
Merge "Fix emulator" into jb-mr1-dev
|
babba1868773eba5edf8a8e335b8e109a32292e0 |
12-Sep-2012 |
Andy McFadden <fadden@android.com> |
Fix emulator Emulator has no HWC. Change-Id: I7810b27034f6772823142e5bf877681db1c8ee49
isplayHardware/HWComposer.cpp
|
92def36f9f79973c6ca18fc66210b32e3901351d |
12-Sep-2012 |
Mathias Agopian <mathias@google.com> |
Merge "fix typo in LayerBase::dump()" into jb-mr1-dev
|
791da60dd322f596b29320edb97c5366070c9ddc |
12-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix typo in LayerBase::dump() Change-Id: Ie4861a58baed003b7ef643931d41f6be3fbfd00c
ayerBase.cpp
|
43601a2dc320a271ff8c3765ff61414a07221635 |
12-Sep-2012 |
Andy McFadden <fadden@android.com> |
Reduce failure uncertainty This adds a trivial workaround for a one-shot boot time crash, plus an explicit check and abort for a failure condition that currently presents as a less obvious failure. Bug: 7145521, 7147557 Change-Id: I548f6a9caa9f0bd5710aaecea0e1c6c7c8f2f281
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
b0d1dd36f104c0b581674adc7f830cbf44b7db06 |
10-Sep-2012 |
Andy McFadden <fadden@android.com> |
Reshuffle FramebufferSurface FramebufferSurface no longer speaks directly to the FB HAL. Now everything goes through HWComposer (which may or may not be connected to a hardware composer). Added display index arg to some query methods. Change-Id: Id3e157d2d4e3555d33afbb703e518b6e92e2d6d5
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
urfaceFlinger.cpp
|
61e04b92bdeafc6fca89052d14dab1bd0c384a71 |
10-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: use eglWaitSync This change adds a compile-option to use eglWaitSyncANDROID to ensure that texturing operations that access the current buffer of a SurfaceTexture do not occur until the buffer is completely written. It also moves this synchronization into a new SurfaceTexture method called doGLFenceWait and changes SurfaceFlinger's Layer class to use that method rather than performing its own wait on the fence. Change-Id: I70afa88086ca7ff49a80e3cd03d423767db7cb88
ayer.cpp
|
4c05dd175ee3bd5119eecf368742b6510a8cfa6c |
09-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Ensure that viewport and frame are initialized. onInitializeDisplays() was posting a transaction with changes to the display projection. Unfortunately, it only set the display orientation field and left viewport and frame uninitialized. The uninitialized values flowed downstream and found themselves baked into a bogus DisplayDevice mGlobalTransform. That transform was then applied to some Rects which were turned into Regions that were them combined with other Regions. Under certain situations, the uninitialized data might have a largish value, resulting in the creation of Regions with components in excess of the Region max-value limit of 0x7ffffff (note that this is not INT_MAX). Later when performing a binary operation using the Region, the Spanner would loop indefinitely trying to figure out how to stuff a humongous region inside of a max-value region. Not content to try just once, the Spanner would continue trying again and again, pegging the CPU and hanging surface flinger during boot. Insanity soon followed. Bug: 7130713 Change-Id: I0016f0c9662185be833474c212a1dd408096ae23
urfaceFlinger.cpp
ransform.cpp
|
4fb3999cea652617be5125f8a42c257467bf3c77 |
07-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Fix display projection. Change-Id: I0f253dc3759b99e05ff8344b0f513d8c289702e7
urfaceFlinger.cpp
|
b27254154642575dfb4bbfa79fbedde7d7ee23dd |
06-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: move fence handling into ConsumerBase This change moves some common fence handling code into the base class for BufferQueue consumer classes. It also makes the ConsumerBase class initialize a buffer slot's fence with the acquire fence every time a buffer is acquired. Change-Id: I0bd88bc269e919653b659bfb3ebfb04dd61692a0
isplayHardware/FramebufferSurface.cpp
|
55882dea1b1b305f15192b96ff7814f18babb212 |
06-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix a problem where all hwc layers would have the SKIP flags set the problem was that LayerBase::setPerFrameData() was always setting this flag. in fact there was no reason to do this at that point since the layer is initialized to a default state in setGeometry(). Bug: 7111259 Change-Id: Ib37b0dd7391a6163070e9aca025512159c1705f9
isplayHardware/HWComposer.cpp
ayerBase.cpp
|
fe4c745c6d62fb416758cc5aaff3e7decb7ec06b |
05-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Always reset layer acquireFenceFd after commit" into jb-mr1-dev
|
e25d005d91344c500450f01d4a258ca9c3676627 |
05-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Always reset layer acquireFenceFd after commit If SurfaceFlinger needs to refresh the screen but the dirty region is empty, it won't set the layer acquire fences, and stale file descriptors will be passed to HWC commit(). Now we make sure to clear the stale file descriptors for each layer right after commit(). Bug: 7078301 Change-Id: I6953ff91fc5488f105b30b07306f9c45a4c3f780
isplayHardware/HWComposer.cpp
|
1501d54d63c55dc4e8f4c6eeaeac35aca6660ffc |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
minor cleanup Change-Id: Ied80e14878e92a506930f7a5a55adde8f260ec70
urfaceFlinger.cpp
|
762d0114759686b65feca832a5437e2aee343a13 |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
Merge "display projection API now has a single function instead of 3" into jb-mr1-dev
|
71e83e1202dc87afde9c0c31f31c129f3f99263f |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
the visibleRegion was never set in hwcomposer Bug: 7089478 Change-Id: I13b031b23ce908d33f431a04e1cf87831b551260
ayer.cpp
|
00e8c7a88a5b9c4104a71013a713acd3e4d3b77b |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
display projection API now has a single function instead of 3 Change-Id: I9bf46d372b77d547486d4bbe6f1953ec8c65e98f
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
da8d0a5c0cf9d41915d3b106cad4aaec3e767c11 |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
implement display viewport and frame note: viewport clipping is not implemented yet Change-Id: I7fde7c4de075d409d95c48bb20ba8ee017f6f00a
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
6b09f280e522da902ca41b96c3e4510d7a2879b7 |
04-Sep-2012 |
Andy McFadden <fadden@android.com> |
Merge "Add timeout when waiting for HW vsync" into jb-mr1-dev
|
63f165fd6b86d04be94d4023e845e98560504a96 |
31-Aug-2012 |
Keun young Park <keunyoung@google.com> |
add libsurfaceflinger_ddmconnection for PDK build - the library is dlopened from libsurfaceflinger - the library built only when libnativehelper exists Bug: 7089510 Change-Id: Ib3ea1029d7e8f6e055f4b759d0bf68f5123fa8a1
ndroid.mk
dmConnection.cpp
dmConnection.h
urfaceFlinger.cpp
urfaceFlinger.h
|
c39736088398a9b4367b30fc307ed7de96ac342e |
01-Sep-2012 |
Mathias Agopian <mathias@google.com> |
the visible region sent to HWC was garbage we used to have a visibleRegion object per layer, but now it's per screen; so at somepoint the code got changed to calculate the per-screen visible region on the stack and that's what got passed to HWC. we're now setting the visibleRegionScreen at each frame and freeing at after the HWC set() call. We use the underlaying SharedBuffer so that in most cases we don't have to allocate, free or copy memory around. Bug: 7089478 Change-Id: I24fa556c76613a225d9fe7a6c6b727bb476144d8
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayerBase.cpp
ayerBase.h
|
6bf552ee02f8540a36cde7be90ffd840b2f6cd5c |
31-Aug-2012 |
Andy McFadden <fadden@android.com> |
Add timeout when waiting for HW vsync This way we don't get stuck if, say, the driver decides not to send us vsync events. Change-Id: I4af6358b3a1f304eaae5fd926ed3403fa1091827
ventThread.cpp
|
9ca48916bc9408d0f3f8ac95469ced0a6a342aca |
30-Aug-2012 |
Jesse Hall <jessehall@google.com> |
If there is no hwc, call eglSwapBuffers for the main display Bug: 7068568 Change-Id: I6a0309613fe3619d065b9047af6c3fb32b510d97
urfaceFlinger.cpp
|
f90883d6a50688081642855bba43bef0693d5020 |
31-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Merge "HWC 1.1: hook up hotplug event, use new display config queries" into jb-mr1-dev
|
1bd20e0f9ecd27cc5ad2bdf08b01837ecc10c357 |
29-Aug-2012 |
Jesse Hall <jessehall@google.com> |
HWC 1.1: hook up hotplug event, use new display config queries Change-Id: I2fd359e5fc7e1948072c6bc6b6fe47ea5e8025c1
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
72f096fb1ad0a0deadbfac5f88627461905d38e8 |
28-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: use max acquired buffer count This change makes BufferQueue derive the min undequeued buffer count from a max acquired buffer count that is set by the consumer. This value may be set at any time that a producer is not connected to the BufferQueue rather than at BufferQueue construction time. Change-Id: Icf9f1d91ec612a079968ba0a4621deffe48f4e22
isplayHardware/FramebufferSurface.cpp
|
2b9776982360a234803665cb79e8abcfeb0e3c79 |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "BufferQueue: clean up buffer counting" into jb-mr1-dev
|
ec34af4144c0f990513fe58b0754b20f94b36d6f |
30-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Handle new device api version encoding" into jb-mr1-dev
|
93997a8a75942b4d06cf50925de5bede489cc134 |
30-Aug-2012 |
Mathias Agopian <mathias@google.com> |
fix a crasher when setting a display to a null surface Bug: 7076303 Change-Id: I843dd4ee4a603b8ad51bc1ad14e429db15050bec
urfaceFlinger.cpp
|
85d751cba5d4386c739dbf9dd8f7bbf8c493ade9 |
30-Aug-2012 |
Mathias Agopian <mathias@google.com> |
we were sometimes not setting fences properly this would happen when the composition was handled entirely in h/w composer, in this case, we would not set the fences for any involved layers. Bug: 7049373 Change-Id: I1439dc156ce23c24041cdfbbebfe8ff4fdf790f8
urfaceFlinger.cpp
|
31a353da225af5329735451c761b430d82dfda1b |
25-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: clean up buffer counting This change is a clean up of some of the handling of the maximum number of buffers that are allowed at once. It mostly renames a few member variables and methods, but it includes a couple small refactorings. Change-Id: I9959310f563d09583548d4291e1050a7bbc7d87d
isplayHardware/FramebufferSurface.cpp
ayer.cpp
|
9eb1eb5bb55740982ceae9966fc536824edc302a |
29-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Handle new device api version encoding Change-Id: I3d36058bd5d31c23b3cc4a7eb5aa033b6f3c1955
isplayHardware/HWComposer.cpp
|
7e7ed7f77a3963a3542bde529d2797a239e2798b |
28-Aug-2012 |
Mathias Agopian <mathias@google.com> |
the layer list per display could contain non-visible layers this happened because we didn't check that the visible region was within the bounds of the display. Bug: 7064121 Change-Id: I2e81850a3dc3d1474253520ad7f9e559c26d5a96
urfaceFlinger.cpp
|
55801e41e6d7306d75d8134dd69d7d8cbbfbc63c |
28-Aug-2012 |
Mathias Agopian <mathias@google.com> |
we were not always clearing the screen properly Change-Id: I269dd866e965aebd9b3c4667095818202982f4a3
urfaceFlinger.cpp
urfaceFlinger.h
|
3ee454a7bef8bd3d1c9cdd9d17108eb80ebadf2a |
28-Aug-2012 |
Mathias Agopian <mathias@google.com> |
Eradicate DisplayID. DisplayDevices are now keyed of the wp<IBinder> the client uses. DisplayID has now become DisplayType which is just used to identify physical displays (as opposed to virtual displays such as wifi displays). Change-Id: I0c5968f2c902dcd699a7e0afacf833ff070c12ea
lient.cpp
isplayDevice.cpp
isplayDevice.h
ventThread.cpp
ventThread.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
9d4e3d2f42e93e2d12bacabe97d307d30c3c20dd |
25-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Banish DisplayID from the SurfaceFlinger API. Use only display tokens in the API to refer to new displays. Don't require the caller to specify the display when creating a surface (since in general a surface could be shown on any display). This is intended to be a minimum change just to update the API. Note that SurfaceFlinger still uses DisplayID in a few places internally that might cause some features not to work properly when there are multiple displays (LayerScreenshot, for example). Change-Id: I3d91eec2da406eefd97bcd53655d403ad865a7e6
lient.cpp
lient.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/Transaction_test.cpp
ests/resize/resize.cpp
ests/screencap/screencap.cpp
ests/surface/surface.cpp
|
13a082e160c2d1d8006b93a555a57035213d568b |
24-Aug-2012 |
Andy McFadden <fadden@android.com> |
Added display initialization method The primary display device was being configured to "blank" by default, which prevented the boot animation from appearing (unless you got lucky with the hardware composer state). Bug 6975688 Change-Id: I0fa52e9e719c6e997c5725a7baf15d9718461b78
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
0bceb84773882b796d9dacbaf96167cb15928d78 |
24-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
surfaceflinger: fix display id selection This change fixes display ID selection so that it never chooses negative numbers as display IDs. Change-Id: I5af1acc7b1270b371595e096b18e2a6ad250c7ba
urfaceFlinger.cpp
urfaceFlinger.h
|
9b6a395e65ff88ab79fe92d6f112c434441ca606 |
24-Aug-2012 |
Andy McFadden <fadden@android.com> |
Revert "Added display initialization method" Something doesn't seem right (again). This reverts commit 53ade0853ca003c9e917b5e7d34e1b1338d7b87d. Change-Id: Id5786997ca9dd2a447363e8ac95213ea37468504
urfaceFlinger.cpp
urfaceFlinger.h
|
53ade0853ca003c9e917b5e7d34e1b1338d7b87d |
24-Aug-2012 |
Andy McFadden <fadden@android.com> |
Added display initialization method The primary display device was being configured to "blank" by default, which prevented the boot animation from appearing (unless you got lucky with the hardware composer state). Bug 6975688 (This reverts an earlier revert.)
urfaceFlinger.cpp
urfaceFlinger.h
|
f435863467ab407f2a482604beed5fa6f0144c62 |
23-Aug-2012 |
Mathias Agopian <mathias@google.com> |
teach HWC about multiple displays Change-Id: I5e72a83d419a729835cb0e1ec45557b4d3fb56b1
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
30bcc61431d8e3bef779472dd52a7b156dcaba09 |
23-Aug-2012 |
Mathias Agopian <mathias@google.com> |
remove support for HWC < 1.0 Change-Id: If7e676a6e3524afeb9af3875125d2131d95db38b
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
e60b0687c8d49871d0c8786cabe6851f7a7783b5 |
22-Aug-2012 |
Mathias Agopian <mathias@google.com> |
HWComposer now has its own concept of display IDs HWComposer can now create IDs representing a display it can deal with. IDs MAIN and HDMI are reserved. SurfaceFlinger associate HWComposer IDs with a DisplayDevice and uses that when it talks to HWComposer. A DisplayDevice doesn't have to have a HWComposer ID, in that case it just can't use h/w composer composition. Change-Id: Iec3d7ac92e0c22bf975052ae2847402f58bade71
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
7c9e82633c5c4f85b896a5879bdb25cdf659646e |
24-Aug-2012 |
Mathias Agopian <mathias@google.com> |
Merge "simplify further vsync handling" into jb-mr1-dev
|
f6bbd44a23c2791277db7814a894633de04cd460 |
22-Aug-2012 |
Mathias Agopian <mathias@google.com> |
simplify further vsync handling - we now clean-up "dead" connection in the main loop, this entirely avoid the problem with the side effects of releasing strong references. We now only hold on to strong reference for the connection we will signal. - also simplify how we build the list of "ready" connections, by only adding them to the list when we did receive a vsync event Change-Id: I2a84da431320a2af8e8a93e07622a1d258236f43
ventThread.cpp
ventThread.h
|
d12780ed123b54687fea534b34f54ef9c678cdcd |
23-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Update for cleanups in hwc interface" into jb-mr1-dev
|
bc46e0ad869befcfa97f6272615cdeae2135008f |
22-Aug-2012 |
Ramanan Rajeswaran <ramanan@google.com> |
Merge "Revert "Added display initialization method"" into jb-mr1-dev
|
f1bf89dd88f3926faaec77b9322b2a580691960d |
22-Aug-2012 |
Ramanan Rajeswaran <ramanan@google.com> |
Revert "Added display initialization method" This reverts commit 3f3956236aac97b6aa25fa89f0983d5e9d065fdb Change-Id: Ia2a15d9a5db88add6019edf9d955cef1f73d432d
urfaceFlinger.cpp
urfaceFlinger.h
|
bbd164a3c790a0649dffd2f015e6f47692c72e1c |
21-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Update for cleanups in hwc interface Change-Id: I363fd8b085167a1af6c14b68012bda5c62bfe59f
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
8f971ff6661c875e7adb3f14731e1579c3c80c62 |
22-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Pass the correct number of displays based on HWC version Change-Id: I27372f5d3102ad56f6d67722d631ae18d37f8330
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
3f3956236aac97b6aa25fa89f0983d5e9d065fdb |
21-Aug-2012 |
Andy McFadden <fadden@android.com> |
Added display initialization method The primary display device was being configured to "blank" by default, which prevented the boot animation from appearing (unless you got lucky with the hardware composer state). Bug 6975688 Change-Id: Idaa0d0b98ebb331a17d1b16774c6b05bfa1e8728
urfaceFlinger.cpp
urfaceFlinger.h
|
a4cb35a2864d58e9a764a17623e15ab25a9964a0 |
21-Aug-2012 |
Mathias Agopian <mathias@google.com> |
fix various issues in SF's EventThread - one issues caused most timestamps to be reported as 0 - on rare occasions an uninitialized variable could be used - vsync counts per connection were accessed unthreadsafely we now have 2 lists of connections in the main loop, one just keeps a list of strong refs to the connections because once we have a strong ref we're not allowed to release it while holding the lock. the 2nd list holds the connections that have a vsync event to be reported. all the calculations are made with the lock held. Change-Id: Iacfad3745b05df79d9ece3719bd4c34ddbfd5b83
ventThread.cpp
ventThread.h
|
10125f00a50d3edd05deef9fcd2d368cf2766683 |
18-Aug-2012 |
Mathias Agopian <mathias@google.com> |
Fix deadlock in SF. problem was that we were acquiring a strong reference on Connection object with a lock held, when those got out of scope (lock still held) their dtor could be called if all other refs had dropped, the dtor would acquire the lock again to remove the Connection from the main list. boom. we rearange the code so this doesn't happen. Bug: 6942208 Change-Id: I0a0ebabce2842d29d60d645b64aac2f26640e59b
ventThread.cpp
ventThread.h
|
cd60f99aba9e750700a967db30b74a29145739cf |
17-Aug-2012 |
Mathias Agopian <mathias@google.com> |
refactor compositing code to avoid multiple eglMakeCurrent() calls when multiple displays are connected, we ended-up having to call eglMakeCurrent() twice per display due to a limitation in EGL. this fixes that. Change-Id: I11e4584df50f8c24bbecee74e37b28b3ee031d2f
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
5f20e2d4462da3471f59152b32cd8640fa4a21da |
11-Aug-2012 |
Mathias Agopian <mathias@google.com> |
reimplement wifi display hack with new external display SF framework fix a few bugs with external displays - HWComposer doesn't really handle multiple displays yet so there is a lot of ugliness there - We also need to make sure that external displays are not blanked by default - due to some EGL limitations surfaces being swapped need to be current Change-Id: I82bff05b43bcebd8da863c7c76b4edbc3bc223a9
isplayDevice.cpp
isplayHardware/HWComposer.cpp
ayerBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
818b46058aa3006e1d3c178abd36d4f10823f5d9 |
17-Aug-2012 |
Mathias Agopian <mathias@google.com> |
display states can't share the dirty flags Change-Id: Ifade9f2f1a0df9a36aede77a6cf5eee4be534f98
urfaceFlinger.cpp
|
111b2d89221722d38f5b5b3ba65904ec22421839 |
17-Aug-2012 |
Mathias Agopian <mathias@google.com> |
binder interfaces can't be compared directly we always need to compare their binder Change-Id: I70d554ebc5009fe81e87923235f91451f32e1a30
urfaceFlinger.cpp
|
13233e067b8f71adc3a0ade5f442265e1f27084b |
16-Aug-2012 |
Mathias Agopian <mathias@google.com> |
oopsie, missed a spot when fixing b/6970310 Change-Id: Ia320fddc7cc4b0666a4fee678af710ecf5f83ff5
urfaceFlinger.cpp
|
3559b07a885bcdff51a6dffb8e3a5ac5adf3a220 |
15-Aug-2012 |
Mathias Agopian <mathias@google.com> |
we were mistakenly optimizing out SF's main transactions in some cases due to a typo, SF's main transaction was conditional to having a display transaction. more correct fix for 6970310 Bug: 6970310 Change-Id: Iafd8c4e02afa5db829cc1c65950cfcc74754c6af
urfaceFlinger.cpp
|
01eb979243a57bd33f8389aeeade8024dd0258c0 |
15-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Fix layer removal transaction. Layers were not properly being removed because we were setting the wrong transaction type flag at the time of removal. When layers are removed, we must use eDisplayTransactionNeeded, not eTransactionNeeded, to ensure that the mLayersRemoved flag is checked and the appropriate cleanup occurs. Bug: 6970310 Change-Id: Id4b2897a34d4ac00aa0f92349c0ec6db95c1aaf7
urfaceFlinger.cpp
|
ea599dfff03b45903dae3288274c31cb24fd483f |
13-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Don't crash when recovering from WM death Bug: 6956162 Change-Id: I27244b960c77187b4c4cd7297989c4c872e94a3a
urfaceFlinger.cpp
|
20128300e0cb7f459a60cfbcddb48190ce6545ed |
14-Aug-2012 |
Mathias Agopian <mathias@google.com> |
make sure to repaint the screen when unblank()ing Change-Id: I38e3a8e6bb31ef3d2f1fcaec7490cb92a4427db2
urfaceFlinger.cpp
|
8b736f138cfd9b239a2c7073347a13c489534ae1 |
14-Aug-2012 |
Mathias Agopian <mathias@google.com> |
xdpi / ydpi were reported as 0 Bug: 6975723 Change-Id: Ia7fa37ec11e2308804f5034959a37e508d292d31
isplayDevice.cpp
isplayDevice.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
e57f292595bec48f65c8088b00ff6beea01217e9 |
10-Aug-2012 |
Mathias Agopian <mathias@google.com> |
make multi-display more real - displays are represented by a binder on the client side - c++ clients can now create and modify displays Change-Id: I203ea5b4beae0819d742ec5171c27568f4e8354b
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
ef7b9c7eac036cc1230c64821039d18f8cbd2c1c |
11-Aug-2012 |
Mathias Agopian <mathias@google.com> |
screenshots could stop working after camera was used once a secure window is put on screen the display would retain its "secure" flag forever, preventing screenshots from being taken. Bug: 6933967 Change-Id: I5be8355145ca7d580d84552311642f8fa912fe6a
isplayDevice.cpp
urfaceFlinger.cpp
|
748f3df66f6695681cde44461e2548e6e1dbc1bb |
10-Aug-2012 |
Mathias Agopian <mathias@google.com> |
avoid crashing when we don't have an h/w composer should fix the emulator Bug: 6956162 Change-Id: I38247b59d276b8db078c4dc2caba7d3fb545912c
isplayHardware/HWComposer.cpp
|
3165cc21cfea781988407b19bd83292b19f05f55 |
09-Aug-2012 |
Mathias Agopian <mathias@google.com> |
libgui includes refactoring Change-Id: I1d24ec17f5003ec2abab5f7472daaff4cc4cc2d3
isplayDevice.cpp
ayer.cpp
ayerBase.cpp
ayerScreenshot.cpp
urfaceFlinger.cpp
|
1e26087493ac0e7d7dc6dea8ad85cfef08b3271f |
09-Aug-2012 |
Mathias Agopian <mathias@google.com> |
Add a display parameter to HWComposer where needed - also replace C casts with C++ casts - only the interface is changed, HWComposer still doesn't fully handle multiple displays Change-Id: I48eb89bff2edb76bf1d4d41f46802b9b2a7166a8
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
28947d7fbf9f486539322e8e12dd057568e180c2 |
09-Aug-2012 |
Mathias Agopian <mathias@google.com> |
now able to set the layer stack on a DisplayDevice Change-Id: Ia9691cf221b9444c243eb468d9e276a30e600b6b
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
|
b685c542836b93c99cd85053e07696406ea37adb |
31-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Changes to support multi-display HWC Change-Id: I07efff54f2980dcb013935747b03e099b8f1181b
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
14bd369e4b711bfb267279c2161358542ed75b29 |
07-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge changes Ic3d35a93,I46ec942d into jb-mr1-dev * changes: SurfaceTexture: fix an out of bounds array access surfaceflinger: refactor FrambufferSurface
|
1a4d883dcc1725892bfb5c28dec255a233186524 |
03-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
surfaceflinger: refactor FrambufferSurface This change refactors the FramebufferSurface class to inherit from the new ConsumerBase class. Bug: 6620200 Change-Id: I46ec942ddb019658e3c5e79465548b171b2261f2
isplayDevice.cpp
isplayDevice.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
92516c84ef2a167524007a0584fb26018b5cb9c4 |
06-Aug-2012 |
Greg Hackmann <ghackmann@google.com> |
fix pdk build Change-Id: Ia4db8e1e8ee18ac112bf13a5ab2a75edb08fc70f Signed-off-by: Greg Hackmann <ghackmann@google.com>
dmConnection.cpp
|
028a7572c81f91e4039b694cde1f55fdb3e483c7 |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
DisplayDevice doesn't need weak pointers or polymorphism let's use a LightRefBase for now. Change-Id: Ida068fa902343a8f89ffb6d34c2cd4627ab43c6c
isplayDevice.h
|
4297734c1156fd8ede7e9c61b1e439f9e1c18cd9 |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
turn DisplayDevice into a reference-counted object it's safer this way because this object owns an EGLSurface which cannot be easily reference-counted. it also gives us the ability to sub-class it, which we might want to do soon. Change-Id: I07358bb052dc5a13b4f2196b2c2b6e6e94c4bb4f
isplayDevice.cpp
isplayDevice.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
d8552d796cbcb9a89711fc8f97b34838da5cbdb7 |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
DisplayDevice only needs ANativeWindow not SurfaceTextureClient Change-Id: Ib5be5af8bede435c8d5d9fabf586d28d0e74c2cb
isplayDevice.cpp
isplayDevice.h
|
888c822c4cb6976aab9256c58bae9e17e3e55c5c |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
remove a dependency of DisplayDevice on the refresh rate this remove a dependency (not all) on FramebufferSurface Change-Id: Ie07ce70760cdcedfb41b5b41bea8da45637bf474
isplayDevice.cpp
isplayDevice.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
c1d359d42b753fcc2426d66a0f782f7c300893bc |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
break SF dependencies on libdvm and libandroid_runtime these libraries are only needed for debugging and are now linked at runtime if needed. Change-Id: I03f138523c6de166a1e2700d4454d4a854aee145
ndroid.mk
dmConnection.cpp
urfaceFlinger.cpp
|
92efd84f37ce5a8aae74dc9086f825a67b6894e9 |
03-Aug-2012 |
Mathias Agopian <mathias@google.com> |
screen-off animation won't be handled by SF anymore Change-Id: Idc41386804ae7d7eb981c36e1bc55c270870c8d0
urfaceFlinger.cpp
urfaceFlinger.h
|
92a979a92c34b7de609ce2b1662c73bb8a2728b9 |
03-Aug-2012 |
Mathias Agopian <mathias@google.com> |
We now have a real list of displays. displays can be dynamically added or removed, and the list is part of the SF's transaction. Change-Id: I4186ea39f1317c0e7c044f869004017738968fab
isplayDevice.cpp
isplayDevice.h
urfaceFlinger.cpp
urfaceFlinger.h
|
fcb239d3dac8bc80f28177f1951611c1d43286ff |
03-Aug-2012 |
Mathias Agopian <mathias@google.com> |
don't filter when capturing a screenshot unless needed bug: 6919952 Change-Id: Ia6fbe9bc7e533a64cfdd6ef7f0cd6b9f11feb947
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
d3ee231eddce0b69ec5e35188dbd0f4a2c3b9ac3 |
02-Aug-2012 |
Mathias Agopian <mathias@google.com> |
cleanups in preparation of bigger changes - fix typo drawForSreenshot misspelled - get rid of DisplayDeviceBase - removed unused or unneeded code - always pass a DisplayDevice to Layer methods that are called on a per-display basis (to make it clear that this could be called more than once per composition). Change-Id: Id948b7e09fe5c06db0e42d40d6ed75dd095c7f44
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware/DisplayDeviceBase.cpp
isplayHardware/DisplayDeviceBase.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerScreenshot.cpp
urfaceFlinger.cpp
|
0f2f5ff75b7b48ceb64270655ee6b62d09bf4d00 |
01-Aug-2012 |
Mathias Agopian <mathias@google.com> |
rename DisplayHardware to DisplayDevice Change-Id: I3f7250cd914e0da4f9ec2c9403587bbe12f3cc62
ndroid.mk
isplayDevice.cpp
isplayDevice.h
isplayHardware.cpp
isplayHardware.h
isplayHardware/DisplayDeviceBase.cpp
isplayHardware/DisplayDeviceBase.h
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
ventThread.cpp
ventThread.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
be246f86bd6378a5110e81e9d9068ab03c3b077e |
01-Aug-2012 |
Mathias Agopian <mathias@google.com> |
Layers are now sorted by layer-stack first, then by z-order Change-Id: I7a82929df5ba87b9d88cc5be87e1a233bc4628e9
urfaceFlinger.cpp
|
52bbb1ae239c8a4d05543a23fa8c08467d09c3b2 |
01-Aug-2012 |
Mathias Agopian <mathias@google.com> |
getting closer to final main composition loop Change-Id: Icd63782366ffd11d9ea00c925ae5783ed7440cdb
isplayHardware.cpp
isplayHardware.h
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
87baae104a3e4c2059990b01c393476065c558b0 |
31-Jul-2012 |
Mathias Agopian <mathias@google.com> |
get rid of global regions that should be tracked per display Change-Id: I3b871860cc29f1b2fdcc22b0c577a6eae65d9296
isplayHardware.cpp
isplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
34a09ba1efd706323a15633da5044b352988eb5f |
30-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Move eglSwapBuffers out of HWComposer Commit 8630320 moved the eglSwapBuffers fallback (for devices with no HWC implementation) from DisplayHardware to HWComposer. But HWComposer only knows about the framebuffer EGL display and surface handles if there is a HWC, so it was always passing bogus handles. This change moves the eglSwapBuffers fallback up to SurfaceFlinger, which has access to the framebuffer EGL handles. Bug: 6886613 Change-Id: Iad3f5ff7c90ee48d7053999e6a4548d6794b6ebd
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
c666cae2d5995097ec49a87e375e2afdd92802b7 |
26-Jul-2012 |
Mathias Agopian <mathias@google.com> |
get rid of the shared-memory control block Change-Id: If814060aca1d2ff2619d4adcd57296983d207f7f
isplayHardware.cpp
isplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/Transaction_test.cpp
|
028508cad5ef63ef9fbd42c14e76658e4fd9ebf2 |
26-Jul-2012 |
Mathias Agopian <mathias@google.com> |
hopefully fixe a race condition in sf initialization if we received a vsync event during SF init, we could crash as not all objects were ready to go. Change-Id: Ie11b46e3eb1b37a709dd8757843d444f93dd0189
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
8630320433bd15aca239522e54e711ef6372ab07 |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
split HWComposer out of DisplayHardware we will only ever have a single instance of HWComposer, so it's now an attribute of SurfaceFlinger, instead of being part of DisplayHardware. DisplayHardware now just represents a "display" (it should be renamed). Change-Id: Iec191e57686868e1df6daa8b880a286c9fefde56
isplayHardware.cpp
isplayHardware.h
isplayHardware/HWComposer.cpp
ventThread.cpp
ventThread.h
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
98a121aa916eb7acbf11df0e3e31a6fede6fc9dd |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
get rid of ro.sf.hwrotation, it's not used anymore Change-Id: I2ee469ac89ecd65d7187be5cab08b5cc18f67cbe
isplayHardware.cpp
isplayHardware.h
urfaceFlinger.cpp
|
8785578391eacd4192333d7b0ce3afedd7d163e6 |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
add a layerStack attribute to Layers. this attribute can be set through a regular transaction using SurfaceComposerClient (just like any other attribute, eg: position or size) Change-Id: I701a47c677ea6442ca713728a93335328cd2b172
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
8b33f032327f8de0dcc0e6d0d43ed80f834b51f6 |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
update SF binder protocol to support setting display attributes no change of functionality -- the old behavior is implemented on top of this new protocol. this new protocol will allow, eventually, to pass informations about displays and layer stacks. Change-Id: Ic6c2295e61ec8ecbc8ce01ab7664e35d928202fc
urfaceFlinger.cpp
urfaceFlinger.h
|
921e6ac4b7610a178285898d191eb0e3afe906c0 |
24-Jul-2012 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger cleanup mostly refactored SurfaceFlinger.h, but also removed dead code. cleaned-up a few includes as well. Change-Id: Ib15f4ffe567912b61ee98aa076c6a283b72811b5
lient.cpp
isplayHardware.cpp
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
ventThread.h
ayer.cpp
ayerBase.cpp
ayerBase.h
ayerScreenshot.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
6ee93c0d36dff1339eb2428be2d65441398e6e5f |
23-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Increment iterator on early-out too Bug: 6860046 Change-Id: I82f9e4062cb58d5479c9d8dc5f2f0770a1dcc605
urfaceFlinger.cpp
|
a6b32db164e7834e211261046f3229bf50bc0098 |
20-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Handle empty HWC layer list when composing Bug: 6777877 Change-Id: I71e9b948d04dda33d45cfa986d9c7e28328cf749
urfaceFlinger.cpp
|
a49126087b4494f4ef50873f3a3f6727265f6621 |
12-Jul-2012 |
Mathias Agopian <mathias@google.com> |
factor EGL/GL and surface creation out of DisplayHardware Change-Id: Icd85a6a4caad06f056578008af3e21666fa8b1f4
isplayHardware.cpp
isplayHardware.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
ayer.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
3b1d2b6b2bbfb5df46b1059ec52360974e6f1428 |
11-Jul-2012 |
Mathias Agopian <mathias@google.com> |
mVisibleLayersSortedByZ is now maintained per display Change-Id: Idcdb77eba1a3f99b3e4b2150128a82acaffcd2a8
isplayHardware.cpp
isplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
f0048f96040671c1597b157a36e4959a0662708e |
17-Jul-2012 |
Colin Cross <ccross@android.com> |
Merge "surfaceflinger: call into hardware composer to blank screen"
|
10fbdb6059755f009e02f0ccc2b9d289beb6b086 |
13-Jul-2012 |
Colin Cross <ccross@android.com> |
surfaceflinger: call into hardware composer to blank screen Call into the new HWC blank operation to blank or unblank the screen. Legacy systems may have already blanked the screen via early suspend, and can choose to not implement the blank operation in their hardware composer implementation. Change-Id: Ib403c8c0e36367a2cfef3e1d124872fcfeb9e7cb
isplayHardware.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
4fec873a98f7b4380720cd1ad006f74c8cdc73da |
29-Jun-2012 |
Mathias Agopian <mathias@google.com> |
one more step towards multiple display support - remove dependency on cached state in validateVisibility - get rid of mVertices and mTransformedBounds - get rid of validateVisibility - get rid of unlockPageFlip - handleTransaction now returns a dirty region - computevisibileregion now uses window-manager space
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerScreenshot.cpp
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceFlinger.h
|
c5c5a14c06de249d8e0445fd24699e1d9aa04549 |
03-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Only set acquire fences on overlay layers Change-Id: I08e8173f83580de5a4e43a0ba5ea03e5ec6e8782
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
dc5b485f74edf2d2f31c62054eb6c180421a3ade |
30-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Pass fence to HWC on first use of buffer Also do a CPU-wait on the fence before using it for GL composition. Change-Id: I0f645a42a44803276cae11b904e5a26d65871562
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
|
b42b1ac1587aebda5e2f334d95b620271fafba4e |
28-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Return fence from acquireBuffer Change-Id: Iab22054c1dc4fd84affab3cc5bbdcd5a1e689666
isplayHardware/FramebufferSurface.cpp
|
1b03149f3533db04e72e088d3fdd09d0087ca594 |
21-Jun-2012 |
Mathias Agopian <mathias@google.com> |
get rid of GraphicPlane its functionality is now folded into DisplayHardware there will be more changes in that area.
ndroid.mk
isplayHardware.cpp
isplayHardware.h
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ventThread.cpp
ventThread.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
3094df359d1e6e2ae8ca4e935cc093f563804c96 |
19-Jun-2012 |
Mathias Agopian <mathias@google.com> |
First prototype atttempting to support an external display both API and implementation will change, this is just a prototype intended to show feasability. SurfaceFlinger is passed an ISurfaceTexture through a new callback, it is in turn used to create an EGLSurface which surfaceflinger will draw into in addition to the main screen. Change-Id: Id0bbb0b854bb7bae44d57246a90b65d4567f9a21
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
ef19414bd8b77a26f5751f3845be79025a8263fe |
14-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Transfer HWC release fences to BufferQueue After a HWC set, each SurfaceFlinger Layer retrieves the release fence HWC returned and gives it to the layer's SurfaceTexture. The SurfaceTexture accumulates the fences into a merged fence until the next updateTexImage, then passes the merged fence to the BufferQueue in releaseBuffer. In a follow-on change, BufferQueue will return the fence along with the buffer slot in dequeueBuffer. For now, dequeueBuffer waits for the fence to signal before returning. The releaseFence default value for BufferQueue::releaseBuffer() is temporary to avoid transient build breaks with a multi-project checkin. It'll disappear in the next change. Change-Id: Iaa9a0d5775235585d9cbf453d3a64623d08013d9
isplayHardware/FramebufferSurface.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
aa049f0d19684cf92f2f6510133a33138845dcd3 |
20-Jun-2012 |
Mathias Agopian <mathias@google.com> |
am 8aaf3e47: am a67e418e: Exit boot animation cleanly. * commit '8aaf3e47a51aa0beebecc8c536504d310d07cda9': Exit boot animation cleanly.
|
a67e418e1fda219f6cc0a7e420bcf5cc4f9fe710 |
20-Jun-2012 |
Mathias Agopian <mathias@google.com> |
Exit boot animation cleanly. The desc.txt file can now mark parts as 'must finish cleanly' by using 'c' as the part line prefix rather than 'p'. If so indicated, if the bootanimation is asked to quit it will do so only after waiting to finish that part. I considered either making init.c service killing smarter or promoting bootanim to be a bindable service with a requestExit method. However, these changes are probably too big/risky given our ship date. So I used a property as a mailbox between SurfaceFlinger and bootanim. Bug: 6679877 Change-Id: Id7dca22caa50b450fff25ca94f7242d971034f41
urfaceFlinger.cpp
urfaceFlinger.h
|
549646d29fccfb2366cc9ca4d894d39c55351fae |
19-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Add support for HWC_DEVICE_API_VERSION_1_0"
|
5df996211d4e263feb862121cfafa7f9c8eeda68 |
19-Jun-2012 |
Mathias Agopian <mathias@google.com> |
fix typo in makefile LOCAL_CFLAGS was spelled LOCAL_CLFAGS Change-Id: I58b96d28f608ce16fcad5ed0efb887e582779e03
ndroid.mk
urfaceFlinger.cpp
|
db403e8ff0d7727015e1a5009bab20eb7ec205bc |
19-Jun-2012 |
Mathias Agopian <mathias@google.com> |
split-up Client.h out of SurfaceFlinger.h Change-Id: I1993bf23e417163749d886283563a93d50b361b4
ndroid.mk
lient.cpp
lient.h
ayerBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
d50fdb02091e7d258ed9701af5f57d1b2b15cd61 |
18-Jun-2012 |
Jeff Brown <jeffbrown@google.com> |
am bbdad819: am 7c24b1d4: Merge "SF could get stuck waiting for vsync when turning the screen off" into jb-dev * commit 'bbdad8193ea3a16e9f65f32f4469959577b400e9': SF could get stuck waiting for vsync when turning the screen off
|
d3076aca0f6106dbc6c5a1588f560c62567752a4 |
16-Jun-2012 |
Mathias Agopian <mathias@google.com> |
Merge "Implement SurfaceFlinger's ANW on top of BufferQueue"
|
7d886474734623fd2565ff40215ffe497e10b4cc |
15-Jun-2012 |
Mathias Agopian <mathias@google.com> |
SF could get stuck waiting for vsync when turning the screen off When turning the screen off we could have 2 waiters on the vsync condition: The main vsync waiter as well as one in onScreenReleased(). We were only signaling the condition though, so it it would be possible to wake onScreenReleased() without waking the main vsync thread which would then be stuck in .wait(). We fix this by just using broadcast() when receiving a vsync event. We also add a broadcast() to signal when the state of mUseSoftwareVSync changes. This is important particularly for the transition from hardware to software vsync because the main vsync waiter might have observed mUseSoftwareVSync == false and decided to block indefinitely pending a hardware vsync signal that will never arrive. Removed a potentially deadlocking wait for a signal in onScreenReleased(). The function was trying to wait for the last vsync event from the hardware to be delivered to clients but there was no guarantee that another thread would signal it to wake up again afterwards. (As far as I can tell, the only other other thread that might wake it up at this point would be a client application issuing a vsync request.) We don't really need to wait here anyhow. It's enough to set the mUseSoftwareVSync flag, wake up the thread loop and go. If there was a pending vsync timestamp from the hardware, then the thread loop will grab it and use it then start software vsync on the next iteration. Bug: 6672102 Change-Id: I7c6abc23bb021d1dfc94f101bd3ce18e3a81a73e
ventThread.cpp
|
5880cc573823148237eac9ab7bc586b8e4eb7160 |
06-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Add support for HWC_DEVICE_API_VERSION_1_0 The acquire and release fences aren't yet used; this is just support for the new version and temporary backwards compatibility for older versions. Change-Id: Ia5ccc05a97c86f649042b9a35e11042fa0187e84
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
3e8b853d67c737abdb363f9c978e7d83eac4d888 |
14-May-2012 |
Mathias Agopian <mathias@google.com> |
refactor HWComposer to break dependency with the HAL headers HWComposer must abstract the HWC HAL entirely, so that the HAL can continue to evolve (and break binary compatibility) without breaking SurfaceFlinger. The HWC data structure had leaked outside of HWComposer, this is now fixed. We now have an abstract interface that provide all the needed functionality, HWCompose provides concrete implementations of it based on the the HWC version. Change-Id: I40c4676dc986b682ede5520a1c60efe64037b0bb
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
3e87601170141229d661df93e2f59e1ced73474b |
08-Jun-2012 |
Mathias Agopian <mathias@google.com> |
Implement SurfaceFlinger's ANW on top of BufferQueue SF now has its own implementation of ANW for the framebuffer and it uses BufferQueue. FramebufferNativeWindow is now only used by stand-alone apps. Change-Id: Iddeb24087df62bd92b0f78e391dda9b97ddc859c
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/FramebufferSurface.cpp
isplayHardware/FramebufferSurface.h
|
52cf768fc24f7b6b8f4bacf8b630acc1fbee7e2f |
08-Jun-2012 |
Colin Cross <ccross@android.com> |
Merge "surfaceflinger: replace early suspend with binder call from PowerManager"
|
0cd545f14261d829513e0d6e8fa5e4e4f3372b3d |
07-Jun-2012 |
Mathias Agopian <mathias@google.com> |
sometimes we would incorrectly scale the content of a surface this would happen when a resize was pending (ie: we have received and processed a resize transaction but have not received a buffer with the right size) and a new transaction came in that didn't involve a resize, for instance a translate-only transaction. in this case, we would incorrectly update the drawing state with the pending size, eventhough we still don't have a buffer for it. the solution is quite simple, we never allow the size to propagate from current to drawing state during the regular transaction processing (unless we are in fixed-size mode -- meaning we don't need to have a matching size buffer), this propagation happens later once we receive the buffer. Bug: 6624163 Change-Id: I11a97e4b88a7f3a0571ddcfe99c86cb04ce01a4d
ayer.cpp
|
8e533069e5721e55cb9768e140e16546c3a4a8b6 |
07-Jun-2012 |
Colin Cross <ccross@android.com> |
surfaceflinger: replace early suspend with binder call from PowerManager SurfaceFlinger will no longer directly synchronize with early suspend. Instead, PowerManagerService will synchronize with SurfaceFlinger to ensure that a black frame has been drawn on the display, and then trigger all early suspend handlers. Change-Id: I07acdd628440d23fdb69db94319ec5d65d3f4919
isplayHardware/DisplayHardwareBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
ba43e0a1faee9629ca2d0beb53dd6c44bb9bfd05 |
07-Jun-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: remove all GLES scissor calls." into jb-dev
|
a4c5b19dd711abecf87ff1e04e530edec58a0d8c |
05-Jun-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: remove all GLES scissor calls. Bug: 6576505 Change-Id: I494b7627f2e271a234706bf49a9490f8ac56c77a
urfaceFlinger.cpp
|
4824d40a35333182c2eb3593511b9bcbecd0a943 |
05-Jun-2012 |
Mathias Agopian <mathias@google.com> |
sometimes SF would not process a surface resize this would happen when a window started with size A, was resized to B and immediately resized to A. In this situation the erquested and active size would be the same, and SF would think a transaction wasn't needed. we fix this by always comparing the requested sizes. Also, make sure to set mRefreshPending once we're sure we have succesfully called updateTexImage(). Bug: 6580962 Change-Id: I2c48b4df7f05fd35c9e1d2dd82095b0f3d5a0b6a
ayer.cpp
|
e31564d8eb0ab67e167a888eccce20f5b4e4ef45 |
30-May-2012 |
Mathias Agopian <mathias@google.com> |
Fix a crasher is surfaceflinger. this bug introduced recently would happen when the very first buffer of a surface was rejected for not having the right size Bug: 6577035 Change-Id: I9fabf20006019f2a6c308be7c7f5c05bdcfd5014
ayer.cpp
|
2c8207e9627fe6c7a90e31fae8d71ae49df56845 |
24-May-2012 |
Mathias Agopian <mathias@google.com> |
add the ability to reject buffers in SurfaceTexture::updateTexImage SurfaceFlinger is using this new feature to reject buffers that don't have the right size. Bug: 6498869 Change-Id: I8a7250a47db6c082a357b703feb3b9d0fc8d3443
ayer.cpp
|
702634a4dad85cfc292618ac91eda6c00f42b7c5 |
24-May-2012 |
Mathias Agopian <mathias@google.com> |
refactoring in preparation for bug:6498869 fix here we just shuffle a bit the code inside lockPageFlip(), we move the code that handles the buffer size closer to the call to updateTexImage(). no functionality change. Change-Id: Ie3193cd86cd32cf3c89532449fd747d145ca0ab6
ayer.cpp
|
05cec9d1275fd939c2d1aec235dca2bdb8edef63 |
23-May-2012 |
Mathias Agopian <mathias@google.com> |
improve resize transactions use a flag instead of pre-committing the "requested" state to prevent propagation or "requested" to "active", which makes things a lot clearer when reading the code. also avoid going through the "resized" code-path when requested size is equal to "active" size. Bug: 6498869 Change-Id: I24f893ba0ec5ca06aac5b8da9818989ae7ce4005
ayer.cpp
ayerBase.cpp
ayerBase.h
|
419e196e639c8adb875da2765abcef95017b6d4a |
23-May-2012 |
Mathias Agopian <mathias@google.com> |
Improve debug logs and minor clean-up Bug: 6498869 Change-Id: I14d1b4d6960b87b5a7c4d7e20b92538edd9331ff
ayer.cpp
|
ed9807bd7dbd4863841e251138392c54755eb394 |
18-May-2012 |
Mathias Agopian <mathias@google.com> |
we need to wait for vsync when doing the screen-off animation Bug: 6511421 Change-Id: I7a85a55e66a3a8d9937df575e98a5efec01a634f
urfaceFlinger.cpp
|
b30c415539813b96a831b75d07f3d12aef1aeab7 |
17-May-2012 |
Mathias Agopian <mathias@google.com> |
Fix "Battery/Status/Clock status bar area flickers when dragging down" The crop is now handled like a resize, it's latched only when we receive a new buffer in the case we have a resize in the same transaction. Bug: 6498869 Change-Id: I9f3cbbe08fb19443899461ec441c714748a4fd1a
ayer.cpp
ayerBase.cpp
ayerBase.h
|
93ffb86b909005bbee4993fc9053f017466311c7 |
17-May-2012 |
Mathias Agopian <mathias@google.com> |
minor refactoring in praparation of crop fix Bug: 6498869 Change-Id: I12a6f9a9fdfd2ea1db3fbe5fc8cb443aeaedb328
ayer.cpp
ayerBase.cpp
ayerBase.h
|
cbad735d8cc4ff360341bf12d8c388edcbc78ce3 |
15-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: recompute visible regions less This change removes some visible region recomputation that was needed to handle the SCALING_MODE_FREEZE cropping. We've changed things to use a window crop from the WindowManager instead, so this is no longer needed. Bug: 6299171 Change-Id: I32fbc2b689c985837126d8ba3d9a91e79613ffbf
ayer.cpp
|
f15a83f5814219c167f87cb8aaea622fc8493499 |
11-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add a crop to the layer state This change adds a crop rectangle specified in window coordinates to the layer state. The all window pixels outside this crop rectangle are treated as though they were fully transparent. This change also adds the plumbing necessary for WindowManager to set that crop. Change-Id: I582bc445dc8c97d4c943d4db8d582a6ef5a66081
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
51dcd581b1fb1bcea7cac9b969123abda13e34ab |
10-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: recompute visible regions more This change makes a change in the crop, scaling mode, transform, or buffer dimensions trigger a recomputation of the visible regions of a window. With the new cropping behavior for SCALING_MODE_FREEZE all of these can now affect the visible region. Bug: 6470541 Change-Id: I1904e47efbd708e28bf189f637d24dbef65cd41e
ayer.cpp
|
161534a3c5ee77bc91e7a73ffb6274f35324f8b5 |
07-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: SCALING_MODE_FREEZE cropping support This change adss support for applying a buffer crop to layers with the SCALING_MODE_FREEZE scaling mode. These layers do not scale the image, but rather treat all pixels outside the crop rectangle as fully transparent. Change-Id: I762518e56a37aef7747f9b581df2f2589b232c49 Bug: 6299171
ayer.cpp
ransform.h
|
cbb1a95819ec302ae15e4a1162a8b1349ae5c33e |
09-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: tell SurfaceTex about filtering This change makes SurfaceFlinger set the filtering-enable on each layer's SurfaceTexture before querying the texture matrix to use for GLES composition. Change-Id: I40c3defd73ebf96e3cabb3bfdb1fc97f2036753a
ayer.cpp
ayer.h
|
06e51a0aaf76fe53cef20c3345cf1ebda2b3461e |
27-Apr-2012 |
Mathias Agopian <mathias@google.com> |
don't actuate vsync hint when not needed Change-Id: I61c43dd76041816ab8cbe9aeaa55c11c1479ed03
isplayHardware/PowerHAL.cpp
isplayHardware/PowerHAL.h
|
03e407270c7ad76632f982c886d0776bed9e9b4c |
27-Apr-2012 |
Mathias Agopian <mathias@google.com> |
set vsync power hint Change-Id: I28c2faf9ff584df3e74392712971cbcf75eb9e98
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/PowerHAL.cpp
isplayHardware/PowerHAL.h
ventThread.cpp
|
24202f5676c32edeef6544cf36e06b9fc970dbde |
23-Apr-2012 |
Mathias Agopian <mathias@google.com> |
update the binder protocol for connect to match that of queueBuffer indeed, connect and queueBuffer return the same data, so it's easier to have them use the same protocol. Change-Id: I4f9fa3be0a80c9ab0a7a4039b282ae843aab02e1
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
a0db308c3d62301ae41b2e2bcf295c4ee4c7b08e |
23-Apr-2012 |
Mathias Agopian <mathias@google.com> |
remove SurfaceTexture::connect() use BufferQueue::connect() instead Change-Id: I04aab7cf11304bf962cde38470747f3b19ddba42
ayer.cpp
|
7f42a9c47c5a7f40cf02032d286d6bd62f28e650 |
24-Apr-2012 |
Mathias Agopian <mathias@google.com> |
triple buffering is now controled by BoardConfig and enabled by default use TARGET_DISABLE_TRIPLE_BUFFERING := true to disable triple buffering. Change-Id: I9875d6ddefd23c1af9e51e7ee7dec1bacd1e6799
ndroid.mk
ayer.cpp
|
56a2bbe70876c1ac4e18b3740722c01d69bca2fd |
19-Apr-2012 |
Mathias Agopian <mathias@google.com> |
SF needs to render even if we don't have a h/w composer Bug: 6350574, 6361055 Change-Id: Iab92cc31bab4771fca63619c8e3105c759535f72
urfaceFlinger.cpp
|
b9494d5c9d44e4a59b6d510fea1665de434f3c6b |
18-Apr-2012 |
Mathias Agopian <mathias@google.com> |
make sure to clear the framebuffer when using overlays Bug: 6354761, 6353719 Change-Id: I0739de3fee7c54c14b294ffd768b70ee1f541d9e
urfaceFlinger.cpp
urfaceFlinger.h
|
0c8ecacb370b5f7ee6f0fc1fb2ae978f9b670c6d |
17-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Merge "don't attempt to clip layers anymore using glScissor"
|
160d544dbb4dd9fd7808232c6467acc332b684f3 |
17-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Merge "get rid off preserve backbuffer optimization in SF"
|
82ca93bf66e50dcae6f96dc78e88ff24df2b4f32 |
17-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Merge "s/w rendered apps can now use n-buffering (n>2)"
|
f74e8e0602100e048c13ea262f0c19c3b8738b6f |
16-Apr-2012 |
Mathias Agopian <mathias@google.com> |
don't attempt to clip layers anymore using glScissor this seems to hurt performance on some GPU. this change might negatively affect performance on other GPUs though, but probably in less time-sensitive cases. If this becomes a problem it might become necessary to pre-clip the geometry (so that we don't have to use glScissor). This improves the rotation animation quite a bit. Change-Id: I5dbe1286f7ad858ef2c1e1ad9a07ee3f26c0b1f3
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerScreenshot.cpp
urfaceFlinger.cpp
|
a2f4e56fec0fb36c4a370eb23d6e9dc57f250b59 |
16-Apr-2012 |
Mathias Agopian <mathias@google.com> |
get rid off preserve backbuffer optimization in SF this optimization didn't improve performance and in fact seemed to hurt more than anything else. it also made things a lot more complex as it introduced edges cases when switching to/from h/w composer. Change-Id: Iaafc235e175f5740cd98bff914d706e02ab88bb8
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ayerBase.cpp
ayerBase.h
ayerScreenshot.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
8acce2046ac7086c3dcfb1fc7c9c39f31de48694 |
14-Apr-2012 |
Mathias Agopian <mathias@google.com> |
make sure to repaint the screen when screen turns on Bug: 6336168 Change-Id: Ic6f11b6bf6c3d849f5cb6ac95961d10d7f88e4ec
urfaceFlinger.cpp
|
ac6035a12aec38eeb14d0c13636ec980066d9a8f |
13-Apr-2012 |
Mathias Agopian <mathias@google.com> |
s/w rendered apps can now use n-buffering (n>2) Bug: 6311881 Change-Id: I6e52e281e8d432430aad011f6d9dcf35d7b4ac7d
urfaceTextureLayer.cpp
|
fca660cf730161f823e770ad1693fab441477edd |
13-Apr-2012 |
Mathias Agopian <mathias@google.com> |
don't wake-up eventthread every 16ms if there are no vsync requests Bug: 6332534 Change-Id: Idf79ad913770c6180969f6c95a9b125fff580231
ventThread.cpp
|
69a655caef30663403802281210363f643ceb946 |
12-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Revert "handle surfaces posts independently from composition" This reverts commit 562f4b2c1e555b853997113bb54b21303d642bc6. Change-Id: I96efe11c2f0494ed2d57fc580e49c598d913830e
essageQueue.cpp
urfaceFlinger.cpp
|
562f4b2c1e555b853997113bb54b21303d642bc6 |
25-Mar-2012 |
Mathias Agopian <mathias@google.com> |
handle surfaces posts independently from composition surfaceflinger will now handle each surface post as soon as possible and handle the composition itself at VSYNC time as usual. Change-Id: I6b1ae33fd56062d86e5419ebab8def0ca5803fbf
essageQueue.cpp
urfaceFlinger.cpp
|
22ffb117b0c2a906bd04aef9738a52223cdd1dce |
11-Apr-2012 |
Mathias Agopian <mathias@google.com> |
make sure to disable VSYNC while screen is off Change-Id: If1894c43b0a39a2851e1280a35ae77bccd6d9abd
isplayHardware/HWComposer.cpp
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
|
b60314a12f3336b27d73920805ab07cbc498d857 |
11-Apr-2012 |
Mathias Agopian <mathias@google.com> |
rework screen on/off code Change-Id: I13f71e850592a588bbd4805b1830c503bd4decb4
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
e2c4f4ec23b735dd2a03f4ea8b08b288a1bb04e8 |
11-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Added vsync debugging information in dumpsys log Change-Id: I20ef05a73d89caaf6a70dc9ca25ada6e6a1f6ff9
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
ventThread.h
|
3a77871383bc1a03cc866686d81628493d14de7c |
09-Apr-2012 |
Mathias Agopian <mathias@google.com> |
start VSYNC thread when HWC doesn't handle it Change-Id: I853a822ea9ec13870ae25af55a89ad9a8cc3936a
isplayHardware/HWComposer.cpp
|
2965b26022f95051f65b09d7eac47cbe923855c9 |
09-Apr-2012 |
Mathias Agopian <mathias@google.com> |
VSYNC handling cleanup Change-Id: I1376bf864c4e03c11fb6d1333a8b7cfdda08c9e4
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ventThread.cpp
|
d94d3b890ac3d5731bd0397874d32aa4bc74bd61 |
09-Apr-2012 |
Mathias Agopian <mathias@google.com> |
avoid turning vsync off/on at each frame always keep vsync active for an extra frame before deciding if it should be turned off. Change-Id: I55b03265b7851b33a595e46a013f2ab55e66c964
ventThread.cpp
|
1a3bf41b7165ba294af46bc32483eaad61e707ea |
06-Apr-2012 |
Erik Gilling <konkers@android.com> |
Fix SurfaceFlinger crash in HWC::eventControl eventControl was not checking if there was a hwc before callingi hwc->eventControl Change-Id: I4d739fc9c0d47da131f4ffc5d50e274de156d012
isplayHardware/HWComposer.cpp
|
3eb38cb33e41ce40dd1094bdec850f0fca9f8a53 |
04-Apr-2012 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger now uses the new VSYNC HAL API. If h/w composer doesn't support vsync (version < 0.3) we "fake" it with a timer. Change-Id: I1e3be79f43c9631d1293ad7d6cf52f9bfc42d65b
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
isplayHardware/VSyncBarrier.cpp
isplayHardware/VSyncBarrier.h
ventThread.cpp
ventThread.h
|
9d61b955db7ccd00d1e5b33e75f37dfd5ac2a456 |
04-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Merge "Add HWC vsync hook. Currently unused."
|
31d2843b45ebdb69ec3355111b7567363fd2a6b7 |
04-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Add HWC vsync hook. Currently unused. Change-Id: I849d56f375813a044c5e2d0b25f791476a60fa01
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
cb9732a951d20cacb7ebe2dab132b5738226b1b6 |
04-Apr-2012 |
Mathias Agopian <mathias@google.com> |
refactor / simplify EventThread Change-Id: I3981c6fba93b7b985174b2a7045e24db2c0b4428
ndroid.mk
isplayEventConnection.cpp
isplayEventConnection.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
7b5be95cb3903087742f1079fe89cddd8abe3696 |
03-Apr-2012 |
Mathias Agopian <mathias@google.com> |
use a socketpair instead of a pipe in BitTube Bug: 6252830 Change-Id: Ia7a7b08409517214136261c05569dc5959a597ab
isplayEventConnection.cpp
|
4b2ba53423ac2dc795a5a0bf72f6d787d9dc8950 |
29-Mar-2012 |
Mathias Agopian <mathias@google.com> |
better workaround for bug: 6020860 this prevents the GPU from running when composition is fully handled by overlays. this should improve animations a bit. Change-Id: If4ae584b7a3976e6bdd36e318686ac3940b6b075
urfaceFlinger.cpp
|
9e0b1f880bd790b6e4643387668c74729b891a10 |
27-Mar-2012 |
Colin Cross <ccross@android.com> |
remove libandroid.so from targets that don't need it pdk builds don't have libandroid.so available. Remove it from projects that aren't actually using it. Change-Id: I100dc84aaf8160c1062a122ef6d5aec0534d73fa
ests/Android.mk
|
3854ed549012f2abf8fea7b0e6db30b104ea5547 |
23-Mar-2012 |
Colin Cross <ccross@android.com> |
surfaceflinger: disable ddms debugging on pdk builds DDMS debugging depends on non-pdk apis, disable it when a pdk build is selected. Change-Id: I6376b5c4cf49f2c51f35f8d567f7c6d18daf893f
ndroid.mk
urfaceFlinger.cpp
|
b5dd9c0fee3b3d6d35035dfb992951ebea3e0e4e |
22-Mar-2012 |
Mathias Agopian <mathias@google.com> |
rewrite density calculation code so it's understandable Change-Id: I1016cd5fd75355abe4ab879d04f4849bd2dd4122
isplayHardware/DisplayHardware.cpp
urfaceFlinger.cpp
|
6fc0a9bd4bdd3ae4a09ae033f68c04fecfc35991 |
22-Mar-2012 |
Dima Zavin <dima@android.com> |
displayhardware: fix not obeying ro.sf.lcd_density when specified Change-Id: I71efd6aebfdb0323b07327f5e448a5cb5eb0fad6 Signed-off-by: Dima Zavin <dima@android.com>
isplayHardware/DisplayHardware.cpp
|
1b15e1e26b3d410b6bd51feeb7077251a464fee0 |
15-Mar-2012 |
Dima Zavin <dima@android.com> |
surfaceflinger: use display dpi if not forced with ro.sf.lcd_nensity Change-Id: I52c4b872e0f2c088c2a6ada7a5bb15db071f0002 Signed-off-by: Dima Zavin <dima@android.com>
isplayHardware/DisplayHardware.cpp
|
b267579ba8dfe3f47d2a481c5a3c2254e3d565a1 |
23-Feb-2012 |
Daniel Lam <dalam@google.com> |
SurfaceTexture: Fully refactored from BufferQueue SurfaceTexture and BufferQueue are separate objects. Change-Id: I230bc0ae6f78d0f9b2b5df902f40ab443ed5a055
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
fddc28d87136b55f0d9613e5f8ecd64a6aca018d |
12-Mar-2012 |
Mathias Agopian <mathias@google.com> |
add ATRACE logs for screenshots Change-Id: Ie8146c4d7608159e9d28b7338f9109b8fcdf955f
urfaceFlinger.cpp
|
35aadd6be249da4bd4851692e6aff757c91b32a7 |
09-Mar-2012 |
Mathias Agopian <mathias@google.com> |
fix surfaceflinger's dumpsys Change-Id: I7b95c3e04f145003f9c0eef321a21f3f36dfe835
urfaceFlinger.cpp
|
622cfadc8f0d294f875151fe1d8985e0553795ea |
05-Mar-2012 |
Mathias Agopian <mathias@google.com> |
fixup include paths - remove unneeded include deps - remove some hardcoded include paths Change-Id: Ifae0e2b2d738e0f94f8525c45be78f4227ce1673
ndroid.mk
|
841cde55549cea7a344a1705b18d57a0c6c8ec45 |
02-Mar-2012 |
Mathias Agopian <mathias@google.com> |
add more ATRACE Change-Id: I6cc5759fb0a05427680488fd12ae797e77644f3d
ventThread.cpp
urfaceFlinger.cpp
|
ed61a47c5b23e277d20a49fceb16d6ba5896b7d2 |
28-Feb-2012 |
Mathias Agopian <mathias@google.com> |
Merge "a window could get stuck to gpu composition"
|
1c8e95cf86f2182986385bc1ee85f13f425f3a3a |
24-Feb-2012 |
Jamie Gennis <jgennis@google.com> |
Add tracing to various graphics components. This change adds ATRACE call tracing to BufferQueue, SurfaceTextureClient, SurfaceTexture, SurfaceFlinger, Layer, and EGL. Change-Id: I9d75ed26f5a3f0d1af635da38289520134cfbbb7
ayer.cpp
urfaceFlinger.cpp
|
ec923ee0d0e6f95bd56275214c252cb57bb8cfd4 |
28-Feb-2012 |
Mathias Agopian <mathias@google.com> |
a window could get stuck to gpu composition this could happen after an orientation change. basically we need to triger a geometry-changed when the very first buffer is received Change-Id: I097e411fd6612c18725737cffccdbf6b2af3511c
ayer.cpp
|
90ac799241f077a7b7e6c1875fd933864c8dd2a7 |
26-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix libgui header location Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/Transaction_test.cpp
ests/resize/resize.cpp
ests/screencap/screencap.cpp
ests/surface/surface.cpp
|
870b8aa15cb5c722b5d8eb7726eaa5f1a7c23d69 |
25-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove libui dependency on libEGL Change-Id: I1194f04085637d5c384e134967249430cc43b6ee
isplayHardware/DisplayHardware.cpp
|
ff615cc7a1cceedd705b0623b058c54669b29596 |
24-Feb-2012 |
Mathias Agopian <mathias@google.com> |
deprecate L_8, LA_88 and RGB_332 in sdk re-add support for pixelformats L_8, LA_88 and RGB_332 in libui for backward compatibility. This may or may not fix 6058926 Bug: 6049685 Change-Id: Ic1b8b4cc994522f7fe664da64c0ef76b98bc6d53
ayer.cpp
urfaceFlinger.cpp
|
fbc7922ec87298601ba6a3be1bd9f83ffaf9a233 |
24-Feb-2012 |
Mathias Agopian <mathias@google.com> |
workaround for an issue where the screen would flicker sometimes bug: 6020860 Change-Id: I97807db66b66c5f4dcbed0df79d5d257cfc7c0bd
urfaceFlinger.cpp
|
4d143eed994778d37eb09bb5d452c26f12bca6e1 |
24-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix an issue in SF where we could miss some updates Change-Id: I7d350bc05d1596655baddff3deaebaba58c9bcc0
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
d11a1083bed6e1b7d71901bf7530224495961022 |
21-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "createSurface getpid() first parameter was removed"
|
751d0bb9b2f73f7e7ca3fbb0ed7ede7fd63b813a |
21-Feb-2012 |
Mathias Agopian <mathias@google.com> |
Merge "SurfaceFlinger: set wrap mode on screenshot texture"
|
e8c9ec64f06a0a8aeb95a41523c17b53b6128903 |
09-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
createSurface getpid() first parameter was removed Most of these tests in this directory don't currently build, but test-surface did build incorrectly by bad luck, using the old API. test-resize still doesn't build, but when the other build errors are fixed then it will use the right API. Change-Id: I388d6d59fe0a2328f352214dcdc28839a24043f0
ests/resize/resize.cpp
ests/surface/surface.cpp
|
1676828d115301ee1d0d4ffa68f832cecc0bbff1 |
07-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "Return information about whether overlays are disabled."
|
12839bee29bdcc65731b4d42029cc59e2320c5c4 |
07-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Return information about whether overlays are disabled. Change-Id: I85ae42e9f28461f5142cc6b3c8e25ff3f195805a
urfaceFlinger.cpp
|
f6de1c04ffc2c7a739578b7612944fddb7011ab7 |
05-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix a crasher when starting SF with the screen off SF could end-up in an infinite crash-loop during startup if it was stopped while the screen was off. This happened because the thread that manages screen blanking was started before other important pieces of SF were initialized. Change-Id: I0dded11dbf2395fdd57b673859a7aa0fa9eb32b6
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
urfaceFlinger.cpp
|
303d538bb012e82c6b9a98c4930a03455000f761 |
05-Feb-2012 |
Mathias Agopian <mathias@google.com> |
ui freeze workaround: reenable triple buffering mode we're seeing UI freezes when window updates and composition are separated. for now we workaround this by always doing a composition after window updates on vsync. triple buffering is reenabled for performance. Change-Id: I693d705000b7452489bb0b4918fbeadb9879315c
ndroid.mk
ayer.cpp
essageQueue.cpp
urfaceFlinger.cpp
|
c95dbdc236acf002b5f8aed8c8a9e43047fc75b5 |
05-Feb-2012 |
Mathias Agopian <mathias@google.com> |
improve SF dumpsys
ayerBase.cpp
urfaceFlinger.cpp
|
b048cef231075a5e41d224b73fe11fec62f335b1 |
05-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix UI freezes In some situations SF would mark a window as "has a pending update" but would never process that update because the window is not visible (fully transparent, hidden by another window, etc...), this window would then be "stuck" until some other window updated. Change-Id: Ifa18a9aef3a53f2593b473556702688ae62d9503
urfaceFlinger.cpp
|
c9ca7011501cb8730ce4e6e527cb402adb7a0178 |
04-Feb-2012 |
Mathias Agopian <mathias@google.com> |
attempt to fix an ANR in various apps recent changes in SF introduced a hang where some windows would stop being refreshed. This is an attemp to fix that. Change-Id: I6aa32ac0d6f1c0a6aea8f6195825dc4f4e6f93f9
urfaceFlinger.cpp
|
064b68d1bc6eaef1722fb0fe033a762e439365fa |
03-Feb-2012 |
Mathias Agopian <mathias@google.com> |
Merge "separate transactions from updates"
|
67016af1e480a5f338555355638fc2a23e15c746 |
03-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix an issue where SF would spin if /sys/power/wait_for_fb_xxx don't exist we now exit the Display thread on any error happening on these files. also refactor the code and remove a lot of unused stuff. Change-Id: I8d080c35b211890ca20ae09fa36fbdccdf5669a8
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
|
99ce5cdeb383216dee95af4d90e47406b0948ea1 |
01-Feb-2012 |
Mathias Agopian <mathias@google.com> |
separate transactions from updates with this changes, SF transactions are handled as soon as possible but do not trigger updates. the update is delayed until the next vsync. this allows us to work much better without requiring triple-buffering. Change-Id: I1fa10794d0cf742129f0877698b7b1e1f2ec7401
ndroid.mk
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceFlinger.h
|
baf1c68c749e872a1278bcb2f401f7a0a3025841 |
01-Feb-2012 |
Mathias Agopian <mathias@google.com> |
Merge "fix an issue with vsync event delivery"
|
3cf199aef6250552555344944c3e3a6e4ab05f92 |
01-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix an issue with vsync event delivery vsync events were sometimes delivered to connected client who didn't request them. this happened if another client requested the delivery and that client was first in the client list. also fix the vsync test which didn't request any events as well as DisplayEventReveiver documentation which was misleading about the necessity to request vsync events. Change-Id: Ie990fda3f337f8f0042745c4b2cde67936c45686
ventThread.cpp
ests/vsync/vsync.cpp
|
2bfa31c0cc43e08746f10164223b7e38e462725b |
31-Jan-2012 |
Mathias Agopian <mathias@google.com> |
Nexus S now reports the proper frame-rate don't hardcode it. Change-Id: I4b37f37a9809cac937e6334c988b3185af2ebe22
ndroid.mk
|
8aedd4737d6ce8548d2fd5def65b1e1737283821 |
25-Jan-2012 |
Mathias Agopian <mathias@google.com> |
SF now synchronizes to VSYNC Change-Id: Ic5e4f2ea9927ce133eef9499c03161325e9d02c5
ndroid.mk
ventThread.cpp
ventThread.h
ayer.cpp
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceTextureLayer.cpp
|
ad8d13c8858b33e3efef42086875c0b0836d2296 |
30-Jan-2012 |
Mathias Agopian <mathias@google.com> |
remove unneeded code Change-Id: I07e2fca7274d2e12bf5b4aee0050794bdb97a8b3
urfaceFlinger.cpp
urfaceFlinger.h
|
25e66fc324bbc004fa8902b2d4699e41bb601104 |
29-Jan-2012 |
Mathias Agopian <mathias@google.com> |
added a few more commands to SF's dumpsys --latency-clear [name] clears the latency data for the specified layer or for all layers if none is specified --list prints the list of all layers regardless of their visibility Change-Id: I7c07ae020f838c173b98ee50f3fb3e93da78acbb
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
82d7ab6c7e0cf971e515134ccf072682dd1a2cdb |
20-Jan-2012 |
Mathias Agopian <mathias@google.com> |
improve SurfaceFlinger dumpsys It is now possible to say: dumpsys SurfaceFlinger --latency to print latency information about all windows dumpsys SurfaceFlinger --latency window-name to print the latency stats of the specified window for instance: dumpsys SurfaceFlinger --latency SurfaceView The data consists of one line containing global stats, followed by 128 lines of tab separated timestamps in nanosecond. The first line currently contains the refresh period in nanosecond. Each 128 following line contains 3 timestamps, of respectively the app draw time, the vsync timestamp just prior the call to set and the timestamp of the call to set. Change-Id: Ib6b6da1d7e2e6ba49c282bdbc0b56a7dc203343a
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ventThread.cpp
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
e8696a40e09b24b634214684d18526187b316a2f |
16-Jan-2012 |
Jamie Gennis <jgennis@google.com> |
hack up frame latency measurement Change-Id: I6d9a466a23285304f0e229a5649815636ab5d6af
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
1db13d79518f600d65a4fc006fe42900b890966e |
19-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Get AID_GRAPHICS from right place Change-Id: I97b1754dc7260fec083275c71a8f71ebfb2cefa8
urfaceFlinger.cpp
|
b1d1c6d4c2eb942e18a59a8cdf1c7c4f0f03ef1b |
13-Jan-2012 |
Michael I. Gold <gold@nvidia.com> |
SurfaceFlinger: set wrap mode on screenshot texture Some implementations of NPOT, particular those derived from core GLES2, require the wrap mode to be CLAMP_TO_EDGE. Set the required wrap mode for the screenshot texture so it passes the completeness check. Change-Id: I735016123e4acaf54b40d1435bd70281cef88a31
ayerScreenshot.cpp
urfaceFlinger.cpp
|
616c0cdf2c9e9a86e54f727640a6673bd99fda8e |
13-Jan-2012 |
Mathias Agopian <mathias@google.com> |
fix a bug with vsync management this bug was introduced recently. we were signaling *all* clients regardless of the vsync rate. Change-Id: I2ae8a6c820a390f602382596ba75e8ed737fb2ef
ventThread.cpp
|
55ef343331f5efbfe3e01bc9993d94faea236048 |
07-Jan-2012 |
Mathias Agopian <mathias@google.com> |
remove dead/usnused code Change-Id: I6fa2bc6ee01790abd2c1533f043d61a5e5c8d26e
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
a72d0db29213c407278a1d0257baa60db28c8471 |
10-Jan-2012 |
Mathias Agopian <mathias@google.com> |
Fix an issue with VSYNC one-shot VSYNC listeners could miss a VSYNC event if scheduled while in waitForVsync(). Change-Id: I720485784aecfea6cc7a23c77081d7af3c9c71db
ventThread.cpp
|
e6f43ddce78d6846af12550ff9193c5c6fe5844b |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
isplayHardware/DisplayHardware.cpp
isplayHardware/HWComposer.cpp
essageQueue.cpp
urfaceFlinger.cpp
|
32397c1cd3327905173b36baa6fd1c579bc328ff |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/HWComposer.cpp
ayerScreenshot.cpp
urfaceFlinger.cpp
|
c267bab3d1c7980a03541283e88c0b6df378b826 |
05-Jan-2012 |
Steve Block <steveblock@google.com> |
Merge "Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE"
|
2adea706d445e837053403a00286a21c00e22649 |
05-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use the standard CC_LIKELY and CC_UNLIKELY macros"
|
99ed22412db547c59d3da08114d9d5a586442b30 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Use the standard CC_LIKELY and CC_UNLIKELY macros Several source files privately defined macros LIKELY and UNLIKELY in terms of __builtin_expect. But <cutils/compiler.h> already has CC_LIKELY and CC_UNLIKELY which are intended for this purpose. So rename the private uses to use the standard names. In addition, AudioFlinger was relying on the macro expanding to extra ( ). Change-Id: I2494e087a0c0cac0ac998335f5e9c8ad02955873
ayerBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
a19954ab377b46dbcb9cbe8a6ab6d458f2e32bca |
04-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
isplayHardware/DisplayHardware.cpp
ventThread.cpp
urfaceFlinger.cpp
|
9d4536835248525f32f1504a3d28d5bbfa0a2910 |
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
isplayHardware/DisplayHardwareBase.cpp
ayer.cpp
urfaceFlinger.cpp
urfaceTextureLayer.cpp
ransform.cpp
ests/Transaction_test.cpp
|
478ae5eb5a0047e1b2988c896cff6363b455ee50 |
07-Dec-2011 |
Mathias Agopian <mathias@google.com> |
Improve the VSYNC api a bit. - add the ability to set the vsync delivery rate, when the rate is set to N>1 (ie: receive every N vsync), SF process' is woken up for all of vsync, but clients only see the every N events. - add the concept of one-shot vsync events, with a call-back to request the next one. currently the call-back is a binder IPC. Change-Id: I09f71df0b0ba0d88ed997645e2e2497d553c9a1b
isplayEventConnection.cpp
isplayEventConnection.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
|
23748668d33ac850e64d87e25ac4cc78679c9384 |
05-Dec-2011 |
Mathias Agopian <mathias@google.com> |
fix a deadlock when removing a DisplayEventConnection the deadlock would happen when the pipe became invalid and SF trying to remove the connection from its list. we know make sure to process events without holding a lock. Change-Id: I39927ed8824fc7811e16db3c7608a2ebc72d9642
ventThread.cpp
ventThread.h
|
75b95f5bc199acbc42b5b41ca31683ca8ea1b1f9 |
04-Dec-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix an issue where invalidate/transactions could be missed"
|
be42aef82f7de3ef04c8c257f882bd6e9653d304 |
03-Dec-2011 |
Mathias Agopian <mathias@google.com> |
fix an issue where invalidate/transactions could be missed Change-Id: I84a1fcba1317b2631f5441de7b7ecd12af5ad022
essageQueue.cpp
essageQueue.h
|
43bfe7f047668a5b74fefb8cfecbf070f637201b |
03-Dec-2011 |
Jesse Hall <jessehall@google.com> |
am a91e54fe: am f57c1388: Merge "SurfaceFlinger: fix layer removal race condition" into ics-mr1 * commit 'a91e54fed6a0690d59c97bab9b081b2614880563': SurfaceFlinger: fix layer removal race condition
|
222893641184014306a26a9d58690c8415181d12 |
03-Dec-2011 |
Mathias Agopian <mathias@google.com> |
fix an issue where updates could starve transactions Bug: 5700586 Change-Id: Iaa4adc1a6aea1db6e2943efe4caca1f6cbebfa72
essageQueue.cpp
essageQueue.h
|
2f4b68d21c1a58cbcb1e6929fb241e425a8f7b5d |
02-Dec-2011 |
Jesse Hall <jessehall@google.com> |
SurfaceFlinger: fix layer removal race condition Layer::lockPageFlip() and layer::onRemove() could be called on different threads and race such that lockPageFlip() successfully called mSurfaceTexture->updateTexImage() but then gets NULL back from mSurfaceTexture->getCurrentBuffer(), leading to a crash. This change moves Layer::onRemove() calls to SurfaceFlinger::commitTransaction() so they happen after the Layer is done being drawn from and only happen on the main surfaceflinger thread. Change-Id: I4b550caadff4cc1878d7c3bca6129193fb0c713e
urfaceFlinger.cpp
urfaceFlinger.h
|
79544364aa3c088fa7fbfadfc169086653389555 |
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am e2970700: am e8ba2aba: Merge "add a way to access the version string of the h/w implementation of EGL" into ics-mr1 * commit 'e2970700e921da4226061988a6e8953b1fbfb5a9': add a way to access the version string of the h/w implementation of EGL
|
363c4a9fa0a646b14d4582db4b8d268780276208 |
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "add a way to access the version string of the h/w implementation of EGL" into ics-mr1
|
a4fbecd1198899a3a4e55795406a06e7c111b13e |
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am 55d3880e: am bb1e7d43: Merge changes I7e973a35,Ib3386fcc into ics-mr1 * commit '55d3880eed3450748eb7b97281e030902ee29c2a': SurfaceTexture: add EGL_KHR_fence_sync option SurfaceTexture: add a blit-to-FBO test
|
bc2d79ed7ada6243f3690f94ab512c0ddcdbed12 |
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
add a way to access the version string of the h/w implementation of EGL we use a hidden egl extension. the version string is printed in SF's dumpsys log. Change-Id: I123eb4bde6de462bb2404c67b74d6d6219a48d6a
urfaceFlinger.cpp
|
86edf4f6470ee0f108bf40d3c1d23bf0a78c9c38 |
14-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add EGL_KHR_fence_sync option This change adds a compile-time option for SurfaceTexture to use the EGL_KHR_fence_sync extension to synchronize access to Gralloc buffers. Bug: 5122031 Change-Id: I7e973a358631fff5308acf377581b811911fe790
urfaceTextureLayer.cpp
|
d0566bc26fcf6ca396118701fa11900b627f2c09 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Add support for sending VSYNC events to the framework use gui/DisplayEvent to receive the events. Events are dispatched through a unix pipe, so the API is compatible with utils/Looper. see gui/DisplayEvent.h for more info. Bug: 1475048 Change-Id: Ia720f64d1b950328b47b22c6a86042e481d35f09
ndroid.mk
isplayEventConnection.cpp
isplayEventConnection.h
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/VSyncBarrier.cpp
isplayHardware/VSyncBarrier.h
ventThread.cpp
ventThread.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/vsync/Android.mk
ests/vsync/vsync.cpp
ests/waitforvsync/Android.mk
ests/waitforvsync/waitforvsync.cpp
|
439cf8576d3b846c0aa0944d84372259bf075d51 |
29-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Fix build. Revert "Add support for sending VSYNC events to the framework" This reverts commit f3918c5bd4bc9f02f74da42995564150ca2dd382. Change-Id: I998e3e1aa3fa310829ae973b64fe11b01f6f468f
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
8219e9122efece0dd6741d2fe94fd6a82dc5df89 |
29-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge changes If4126023,Iacda2386,I1eb691f7,Ib56139f8 * changes: Add support for sending VSYNC events to the framework BitTube::read now handles EAGAIN split ComposerService out of SurfaceComposerClient.h rewrite SF's message loop on top of Looper
|
461afeb9fde149f9455acbadf1257d08d33e8eb3 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Add support for sending VSYNC events to the framework use gui/DisplayEvent to receive the events. Events are dispatched through a unix pipe, so the API is compatible with utils/Looper. see gui/DisplayEvent.h for more info. Bug: 1475048 Change-Id: If4126023fc9c067e56087ec7d16a8fd542ce1794
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
urfaceFlinger.cpp
urfaceFlinger.h
|
f61c57fe2e955e1c195bb0ca2dd7bcdaa922d5a9 |
24-Nov-2011 |
Mathias Agopian <mathias@google.com> |
rewrite SF's message loop on top of Looper Change-Id: Ib56139f87a5c0b124e34da5c8151207219b2577b
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
|
b8bb31dc103a8911e1be04821121963ed79d5dbb |
23-Nov-2011 |
Mathias Agopian <mathias@google.com> |
temporarily hardcode Nexus S refresh rate Change-Id: Id8465f679b96636041b4b891d0b358c387d456c3
ndroid.mk
|
465494486c186c239b629a8addf0d347db714197 |
16-Nov-2011 |
Mathias Agopian <mathias@google.com> |
remove hack that hardcoded the refresh rate Change-Id: Ibdd40b337c547e80ef8541856015f1380c8d58ed
ndroid.mk
|
4b9511c16195a646242eff833b0af212933b6eca |
14-Nov-2011 |
Mathias Agopian <mathias@google.com> |
rework a bit how we manage EGL extensions - don't advertise extensions that are not supported by any implementation - remove EGL_ANDROID_swap_rectangle which is not implemented by anybody and confuses people - add some comments about mandatory extensions Bug: 5428001 Change-Id: Id8dc48116ac1d1eb79ec9ef55d03e29d4257c1f3
isplayHardware/DisplayHardware.cpp
|
2f78cf11225cfaa6d92584bf2ca8f2b938bdc43f |
10-Nov-2011 |
Dave Burke <daveburke@google.com> |
Back to 59fps Change-Id: I8d89e5e27f1abc5a2e36cb832eb4db2ca83c2cc6
ndroid.mk
|
386aa98c4ffb9b805303e683f0a7b925b44d04db |
08-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Fix an issue where we could wait for a non-existing transaction This fixes the issue: "Call not sent" dialog takes too long to dismiss after hitting OK" Note: the system would recover after a 5 second timeout. Bug: 5534520 Change-Id: Ifa37e594b50581f498479a5858672441b3d7dd87
urfaceFlinger.cpp
|
a5f9676eccbb3ac03f737a22c7a99ee1895a7f6f |
08-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Fix rotation displays frame N-1 briefly while rotating" into ics-mr1
|
385977f6d6c4e76379df384d50695a10cb3757f2 |
05-Nov-2011 |
Mathias Agopian <mathias@google.com> |
workaround to set the WM refresh rate to 48 Hz for tuna devices only this is TEMPORARY until we can do this properly. Bug: 5572464 Change-Id: I6537706d636a83a4a50e2900d6b829dd89b6f245
ndroid.mk
isplayHardware/DisplayHardware.cpp
|
4a9ac37fe26644bb5253d15eec08be2edb896642 |
01-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Fix rotation displays frame N-1 briefly while rotating The ScreenShot layer is now created hidden. The screenshot itself is aquired during the transaction when the layer is made visible. This guarantees the screenshot and the layer happen atomically with respect to screen updates. Bug: 5534521 Change-Id: Ida23e1f13d5716ec83b78a15712e0646d6cf8729
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
62f7114719d2009dca7dd120f0fe29a24bd77a40 |
27-Oct-2011 |
Mathias Agopian <mathias@google.com> |
fix Corrupted graphics while playing You Tube on orientation change Bug: 5432124 Change-Id: If948b9797b1ec6fff80ca5ea94508abcaced9f31
urfaceFlinger.cpp
|
7f6aec0185e171091bd1bdd0a6af08f6311bb2bf |
22-Oct-2011 |
Xavier Ducrohet <xav@android.com> |
Merge "Fix software GL renderer."
|
4c4163b53e262ff9cc10c819321d4ae03c2d7d46 |
22-Oct-2011 |
Xavier Ducrohet <xav@android.com> |
Fix software GL renderer. Change-Id: I07ab2709fa694e41aa3fcc5b9dfc809f55853ab4
ayer.cpp
|
51726c381e23d148867c760d06306dfa940b4d15 |
22-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am aa938c8d: Merge "mDirtyRegion is single threaded, but could be accessed from a hwc thread" into ics-mr0 * commit 'aa938c8d9c0e71c9b556657cb33794210ce6ebf8': mDirtyRegion is single threaded, but could be accessed from a hwc thread
|
0dfb7b73a468698622d6c0423f0d5471a6f5d375 |
22-Oct-2011 |
Mathias Agopian <mathias@google.com> |
mDirtyRegion is single threaded, but could be accessed from a hwc thread We now have mInvalidateRegion which holds the region to invalidate, it can be set from any thread as long as mInvalidateLock is held. We use fine-grained locking here because mInvalidateRegion can be set from anywhere, in particular frmo HWC callbacks. Bug: 5466774 Change-Id: Iafca20aa3f5b25a87755e65bde7b769aa8f997bc
urfaceFlinger.cpp
urfaceFlinger.h
|
7ec662c07aea2a76394cd69f19be0f9a7d87b701 |
21-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am 16bece04: Merge "added dpi and refresh rate info in SF\'s dumpsys" into ics-mr0 * commit '16bece04bdbac9af5228436f70267ec5763315de': added dpi and refresh rate info in SF's dumpsys
|
d5e4ef9e439317e2525a51106dbc509d3982de24 |
21-Oct-2011 |
Mathias Agopian <mathias@google.com> |
added dpi and refresh rate info in SF's dumpsys Change-Id: I2327248eb1993689367e3daeaccba74c172dfceb
urfaceFlinger.cpp
|
818fb243572f8e1f408ba9fc35ef61bbedbd9ce1 |
19-Oct-2011 |
Dave Burke <daveburke@google.com> |
am 70ac412b: Merge "Add a LayerScreenshot" into ics-mr0 * commit '70ac412b2fe7be2507189a9fdfb30c43b36d56ac': Add a LayerScreenshot
|
675370ab9aadd148ba2cc15b3078c915811355a1 |
19-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am f7613743: Merge "Don\'t call hwc set() if there is nothing new to do" into ics-mr0 * commit 'f7613743f29f38cbbaf4ae09996c380845a17daf': Don't call hwc set() if there is nothing new to do
|
5ba8f366bd81348ac8b0e3a09fa122f3098b4363 |
19-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am 23bf2505: Merge "Make sure set GL state properly" into ics-mr0 * commit '23bf250522b7dff9acd14c5900b66b1df9c76745': Make sure set GL state properly
|
118d0245ee0a3b107055782aa8b555404b6f0280 |
14-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Add a LayerScreenshot A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Make sure to call compositionComplete() after rendering into a FBO. Bug: 5446982, 5467587, 5466259 Change-Id: I5d8a1b4c327f9973d950cd4f4c0bca7f62825cd4
ndroid.mk
ayer.cpp
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
3a3cad30c40c8eb87671262a9fe7f0e214b6a934 |
19-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Don't call hwc set() if there is nothing new to do there was situations where SF's main loop would run (as if there was an invalidate), but the dirty region was empty (so no new buffers were retired). In this case we return early and don't swap, which would cause drawing artifacts. Bug: 5476838 Change-Id: Id3b7bf4b7aabec7919c50d9278eb2165973a4c3d
urfaceFlinger.cpp
|
c492e67810814bf86301abffe1d31598b775cf45 |
18-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Make sure set GL state properly when taking a screenshot, in particular, we could end up with stale GL state when drawing LayerDim which resulted in incortect rendering. Bug: 5467587 Change-Id: Id9fbed2843481d31063620f3662b364c7e3ac781
ayer.cpp
ayerBase.cpp
ayerDim.cpp
urfaceFlinger.cpp
|
cdec8f01aae14ed59fbc57cb2ce97a6602f4b9a1 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am 840b8a67: Revert "Add a LayerScreenshot" * commit '840b8a678537519c27ddf2f818494eaa20a135d4': Revert "Add a LayerScreenshot"
|
5bacca6238adba927f9e9b27087e134e9a3c2561 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am 4fb6416e: Merge "we need to guarantee that h/w comp set() is called when a buffer has been retired" into ics-mr0 * commit '4fb6416e3a21031a88921a784ae62b13d8a1a39f': we need to guarantee that h/w comp set() is called when a buffer has been retired
|
090cb44b945bfe2711344a5331814bd6412ab437 |
17-Oct-2011 |
Elliott Hughes <enh@google.com> |
Merge branch 'master' of ssh://android-git:29418/platform/frameworks/base
|
e9800c83114988b6f8cc25bb9d508ebb322f9903 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Revert "Add a LayerScreenshot" This reverts commit d6809f40cf61203573ec5dbc437f695cd132cc18.
ndroid.mk
ayer.cpp
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
a44b04163957d6086362f6f365443c4c93379031 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
we need to guarantee that h/w comp set() is called when a buffer has been retired removed a test that could violate this guarantee. note that we have no proof tha this ever happened, but consequences could be hard lock-ups. the code here was intended to track the region to update for displays that can do partial update. the logic discarded the update entirely if that region was empty. instead we just redraw the whole thing (note that we should never be there with an empty region and retired buffers though). Bug: 5466259 Change-Id: I91ccab3b1a599e729e438eb833939e2236da6854
urfaceFlinger.cpp
|
a402c4c9913cfbc6c3da21719c57a93a11f091f0 |
15-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Remove display freezing code This change removes the dead code from SurfaceFlinger that resulted from disabling support for freezing the display. Change-Id: I4e5ff00c94b4c7a79af2f65c9850c135210068ed
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
23c2c5d1c6aaeaeb1804b7aa9b667e7e58c941bb |
12-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add some layer update tests This change adds two tests for SurfaceFlinger's behavior when updating the position and size of a layer. Change-Id: Id5e3ca1d7e629a3bd2c2d28275d80c7f9256d6da
ests/Android.mk
ests/Transaction_test.cpp
|
28378392fd5aa3e0a392c9eb64634055678c3987 |
13-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: make sync transactions explicit This change enables a layer or orientation update transaction sent to SurfaceFlinger to explicitly request a synchronous transaction. Change-Id: I97cbba610c13679849f66114b216fa6dbf12f2a9
urfaceFlinger.cpp
urfaceFlinger.h
|
f171ab6da9cf9793093e50947aacdab8f2b0c9b2 |
14-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Add a LayerScreenshot A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Bug: 5446982 Change-Id: I7814aff2380e7e146937f2b641907be2a30c76cc
ndroid.mk
ayer.cpp
ayerScreenshot.cpp
ayerScreenshot.h
urfaceFlinger.cpp
urfaceFlinger.h
|
b8d69a55f1c187a35ac41e69de63251f5501b6f4 |
11-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: update orientation via transactions This change merges the ISurfaceComposer::setOrientation functionality into ISurfaceComposer::setTransactionState. It enables the window manager to atomically update both the display orientation and the position and size of the windows in a single transaction with SurfaceFlinger. Bug: 5439574 Change-Id: I18a8ccc564d7d760ef8afb2d015ccdb7a7963900
urfaceFlinger.cpp
urfaceFlinger.h
|
e64206915d832f0021b84df2aa54a8242583003a |
11-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix an issue where the screen could stay off"
|
f7cdd053fe1fee093f6b0973ad5723765f98a48d |
11-Oct-2011 |
Mathias Agopian <mathias@google.com> |
fix an issue where the screen could stay off this would happen when toggling on/off/on very fast, the screen could stay black (while the panel is on). Bug: 5429724 Change-Id: Ic8aa6aff066e6267923c0d47ef65e314e7bb6d41
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
1dea97d662be9bac350d51b6a91185d203ffd794 |
11-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Fix screen off animation when in landscape"
|
a9040d0eefa34a78ca68b6e7901e1703e74aeb7c |
11-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Fix screen off animation when in landscape Change-Id: I4bc5b12d7a64a4bf8b9a851594be4d60b790d1ed
urfaceFlinger.cpp
|
8cb9d95002afe135ed445ee5c92d405a1d45d77d |
10-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Merge "enable EGL_IMG_context_priority for the omap4 platform"
|
9575f60722f7a4f54384fe0be6938a8de48dc23a |
07-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: screenshots w/ protected buffers This change modifies SurfaceFlinger's screenshot behavior when a layer with a protected buffer is visible. The previous behavior was to simply fail the screenshot. The new behavior is to render the screenshot using a placeholder texture where the protected buffer would have been. Change-Id: I5e50cb2f3b31b2ea81cfe291c9b4a42e9ee71874
ayer.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
57bf9e7100c2ea51e081775dbd3566f078b0be4f |
08-Oct-2011 |
Mathias Agopian <mathias@google.com> |
enable EGL_IMG_context_priority for the omap4 platform Bug: 5311015 Change-Id: Icaad3d1c963d382ac0a4b9121fe20d3408846c2b
ndroid.mk
|
e2c2f9213f936f98db604dc9c126ff22f725a824 |
06-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Force a repaint when hwc invalidate hook is called without this prepare() would be called but not set() since the dirty region is empty. Change-Id: I038acfbdad4c16015357ccde4d1949391d6f989d
isplayHardware/HWComposer.cpp
urfaceFlinger.h
|
aebac5f34a098f733f887c993bd617a393e10db8 |
30-Sep-2011 |
Mathias Agopian <mathias@google.com> |
improve hwc log output we now print the handle of each buffer Change-Id: I70884ae458a9dcf10cfc403258d48eaa4618b7f4
isplayHardware/HWComposer.cpp
|
ed984d9406b5a4062db93319e6f94d5f9fd19648 |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
Merge changes Ib302d79e,Ib4ee085f * changes: SurfaceFlinger: set layer names on SurfaceTextures SurfaceTexture: add name support
|
e790db9980136a95a595a3cfc8d93f6e26347525 |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
am da42e0fa: Merge "SurfaceFlinger: fix setting default buffer size" into ics-factoryrom * commit 'da42e0faaa95c796dc49f3b38023562dab6584a7': SurfaceFlinger: fix setting default buffer size
|
1b5f4e61ff481387215d98c3266871bfd465bce5 |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: fix setting default buffer size" into ics-factoryrom
|
9a375927a52558b83d016a553d2d3b52eb9d96d5 |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
am 3780d380: Merge "SurfaceFlinger: fix the transform hint" into ics-factoryrom * commit '3780d38010f50ccce508871058d54c1921936e0c': SurfaceFlinger: fix the transform hint
|
2a0d5b608447a880beff5149805425f02691442b |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: fix setting default buffer size This change makes SurfaceFlinger update a SurfaceTextureLayer's default buffer size in response to a window resize even if the Layer is in fixed size mode. Change-Id: I3871c8f19a045d03904d1284390cad7659be71ff Bug: 5366426
ayer.cpp
|
4801404dcb7990e4753dad0d07de5f6dbc01dbdb |
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
don't clear the framebuffer when the framebuffer is not used when areas of the FB are undefined (transparent windows on top of nothing), we clear those areas before composition. however, it makes no sense to do this when the FB is not in use (case where hwc handles all layers) Bug: 5360529 Change-Id: I761a7d3664228ebbee0944aca8b0cc278fc94c9c
urfaceFlinger.cpp
|
36d2c1f02c58d8b5d2706960f370c9d74aafd740 |
27-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "(DO NOT MERGE) SurfaceFlinger: fix isOpaque check in lockPageFlip" into ics-factoryrom
|
8d91b425078083d0e4967dcd8d669d9f7196123a |
24-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: fix the transform hint This change fixes the transform hint to use only the global display transform rather than incorporating the transient layer-specific transform used during animations. Bug: 5366891 Change-Id: I5408dcd3f4771d010953e8a696a484c835bfe81e
ayer.cpp
ayerBase.cpp
ayerBase.h
|
059fd18396605592ec538b9e5574a80a8987d10d |
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Merge "don't clear the framebuffer when the framebuffer is not used"
|
cfb7d090bbbb881def949a548b7ad8022e370dd4 |
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix dumpsys wording for h/w composer"
|
cd20eb09c4752531c1ab1a0084474ef530a5d44f |
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
don't clear the framebuffer when the framebuffer is not used when areas of the FB are undefined (transparent windows on top of nothing), we clear those areas before composition. however, it makes no sense to do this when the FB is not in use (case where hwc handles all layers) Bug: 5360529 Change-Id: If51bb669307e8419bbe1f3a89d1c88e0ec1f216c
urfaceFlinger.cpp
|
a249f2d11249ff37c48119020b797ad437ddef2c |
17-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: set layer names on SurfaceTextures This change sets the SurfaceTexture name string to match that of the layer to which it belongs. Change-Id: Ib302d79e916a36ab1e54cb9ff477c3b857bd957b
ayer.cpp
ayer.h
ayerBase.h
|
fc60b94db9081adb4835bd44eacdd0573fc4d644 |
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix dumpsys wording for h/w composer Change-Id: Iaa1094964f2fb83da491e23b9309f7690079c17e
isplayHardware/HWComposer.cpp
|
21230c6410bdab13cd2bd274da54b1e4061b6035 |
21-Sep-2011 |
Jeff Brown <jeffbrown@google.com> |
Handle orientation changes more systematically. Bug: 4981385 Simplify the orientation changing code path in the WindowManager. Instead of the policy calling setRotation() when the sensor determined orientation changes, it calls updateRotation(), which figures everything out. For the most part, the rotation actually passed to setRotation() was more or less ignored and just added confusion, particularly when handling deferred orientation changes. Ensure that 180 degree rotations are disallowed even when the application specifies SCREEN_ORIENTATION_SENSOR_*. These rotations are only enabled when docked upside-down for some reason or when the application specifies SCREEN_ORIENTATION_FULL_SENSOR. Ensure that special modes like HDMI connected, lid switch, dock and rotation lock all cause the sensor to be ignored even when the application asks for sensor-based orientation changes. The sensor is not relevant in these modes because some external factor (or the user) is determining the preferred rotation. Currently, applications can still override the preferred rotation even when there are special modes in play that might say otherwise. We could tweak this so that some special modes trump application choices completely (resulting in a letter-boxed application, perhaps). I tested this sort of tweak (not included in the patch) and it seems to work fine, including transitions between applications with varying orientation. Delete dead code related to animFlags. Handle pausing/resuming orientation changes more precisely. Ensure that a deferred orientation change is performed when a drag completes, even if endDragLw() is not called because the drag was aborted before the drop happened. We pause the orientation change in register() and resume in unregister() because those methods appear to always be called as needed. Change-Id: If0a31de3d057251e581fdee64819f2b19e676e9a
urfaceFlinger.cpp
urfaceFlinger.h
|
8bfdda9ab34466f97d024c1dcd63019de880b806 |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix transition from full overlays to fb we need to clear the whole framebuffer in that situation because we can't trust the content of the FB when partial (fb preserving) updates are used. Bug: 5318492 Change-Id: I3f0e01b0fb665a34e44d88ad9f0f54a5d990060b
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
56eb3fc695869c05ef3b35dfe9dfb25d2f826825 |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
rename mInvalidRegion to mSwapRegion Change-Id: I946cbc782c0c84645843ea44c3d8b04a0a2fe658
urfaceFlinger.cpp
urfaceFlinger.h
|
670a8990e822785da2a684f71f0035725022ced4 |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
improve hwc dumpsys we now log the buffer's format Change-Id: I9d3ad8018e884240a153de3baefb6331cb014d0f
isplayHardware/HWComposer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
9c6e297271ec9af9d974242d89cfa08cb6ceaa0a |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix transition from full overlays to fb we need to clear the whole framebuffer in that situation because we can't trust the content of the FB when partial (fb preserving) updates are used. Bug: 5318492 Change-Id: I3f0e01b0fb665a34e44d88ad9f0f54a5d990060b
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
0656a68380d01de4136933901b2c322cf9ab0d7e |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
rename mInvalidRegion to mSwapRegion Change-Id: I946cbc782c0c84645843ea44c3d8b04a0a2fe658
urfaceFlinger.cpp
urfaceFlinger.h
|
fb4d5d5726c172adbe62341d99a2148685a98379 |
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
improve hwc dumpsys we now log the buffer's format Change-Id: I9d3ad8018e884240a153de3baefb6331cb014d0f
isplayHardware/HWComposer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
351a513b12622781de9580b3c96fd0a8578b563b |
15-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
(DO NOT MERGE) SurfaceFlinger: fix isOpaque check in lockPageFlip This change fixes an issue where Layer::isOpaque was being called in lockPageFlip to get the opaqueness for the new buffer before mActiveBuffer was updated. Bug: 5321313 Change-Id: Ibb5d7d3f4e9a2b1448e117a484a0d9f9ca5fc9de
ayer.cpp
|
945d291699e439c6cbc6192164e0fa53d9a03c3a |
15-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: fix isOpaque check in lockPageFlip This change fixes an issue where Layer::isOpaque was being called in lockPageFlip to get the opaqueness for the new buffer before mActiveBuffer was updated. Bug: 5321313 Change-Id: Ibb5d7d3f4e9a2b1448e117a484a0d9f9ca5fc9de
ayer.cpp
|
f9abeb956fb95682d77005ea0dc506a805f52a04 |
09-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Fix another problem with refreshing the screen when switching to/from overlay the previous fix was incorrect. See comment in setupHardwareComposer for full explanations. Change-Id: Ib24a9af000b8f95cf7319f9272d34997064ceb6d
ayerBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
22da60c3e64cd57535cbba063c07127814a2b52f |
09-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Improve SF dumpsys output wrt HWC Change-Id: Ibdb7930fa3b521bfd3f44750ed98cfd75f9a01fe
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayerBase.cpp
urfaceFlinger.cpp
|
f384cc3008a25ad1b00403aca0cc001547f029c6 |
09-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Fix an issue is SF that caused drawing artifacts when hwc changed mode we were not redrawing and/or clearing the FB properly when hwc moved a layer from/to FB to/from OVERLAY. In these cases we needed to expand the dirty region to include the layer that changed mode. Also split composeSurfaces() which was becoming quite large. Change-Id: Id6fa1acfc4ff694037fddf7efd037a4405732073
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
7ee4cd5556cef1878e1d4729f1b389f186311027 |
02-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix a bug that caused the off animation to not show sometimes this happened when the overlays were in use, since the animation is rendered in the FB and the FB is not used. we now have a way to turn hwc off temporarily. Change-Id: I3385f0c25bb9cc91948e7b26e7cd31ed18c36ace
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
f914e7ffad20c0a39d86376c703cd98c086e774a |
02-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Fix various flickering / artifacts these were due to the "preserve backbuffer" optimization interfering with hw composer. basically the screen needed to be redrawn in the areas that move from GL to overlay. Bug: 5245513 Change-Id: I9bf75c4fe905f3ef62005e52108b94edae692304
urfaceFlinger.cpp
|
3f41963ccb3af61b78d1e4fb0a07ca7d93be0feb |
31-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix Surface positions are not floats"
|
41b6aabf356d8a505da37b1d046bc9010028fe8b |
31-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix Surface positions are not floats Added Surface.setPosition(float, float) which allows to set a surface's position in float. Bug: 5239859 Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711
ayerBase.cpp
ayerBase.h
ransform.cpp
ransform.h
|
c7f3381c3b2945e441747130eae88214435d0819 |
31-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix display artifacts in preview screen in timelapse video mode We were not updating the h/w composer state when the buffer size changed. We also didn't update the h/w composer state when the transformation matrix changed (which is related to the above issue, since it would probably change when the buffer size changes). Also moved updating the crop to setGeometry(), since we decided that the "crop" change requires the GEOMETRY_CHANGED flag (ie: not need to do this every frame) Bug: 5238473 Change-Id: Ia7b47e145b48581b568d89d9aa2c14ff778be862
ayer.cpp
ayerBase.cpp
|
b0610335d745718f5ee54f15ef1a492921d759f4 |
25-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Fix screenshots Change-Id: If904634e64b154bbe336d5789dd1209b8ae871fb
urfaceFlinger.cpp
|
e46016d0520a0ad0e7da7ffdef68905565124cba |
25-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Fix Recent thumbnails aren't taken when leaving an activity via notification"
|
0abe83a680d1f410c28b755eb4b3d6bee30c39dd |
25-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Fix Recent thumbnails aren't taken when leaving an activity via notification When taking screenshots we need to use the full drawing state list instead of the visible list. Bug: 5186823 Change-Id: I214ee0203aaf8e2c038e44581f7f1ae36edf08c5
urfaceFlinger.cpp
|
85b6f7afeab61b75e4326639a9f4cb61523ea997 |
25-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: use the HWC gralloc usage bit"
|
45d845190d26ae27de45390460f50a6a8639e2e5 |
24-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge changes I14e03939,I9aafe6f2 * changes: Fix an issue where Surface::lock() would never update the output region Add a debug option to turn the "transformation hint" off
|
a45836466c301d49d8df286b5317dfa99cb83b70 |
24-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Add a debug option to turn the "transformation hint" off transformation hint is disabled with: adb shell service call SurfaceFlinger 1009 i32 1 Change-Id: I9aafe6f280f88ce41569ed69a06dc522b10e3a88
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceTextureLayer.cpp
|
f7ae69d4bd292110da976c8ae766a8ef083d731f |
23-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Minor cleanup Change-Id: Ic042043c54631b5a5c74d20136addb2c08515ea9
ayer.cpp
extureManager.cpp
extureManager.h
|
53331da007b56e0cb4201728de99c8c29bcfaa9a |
23-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix "show screen update" debug option. Change-Id: I7d8b24124768b5f7d59d3bb0b019e9baaa0dfc4f NOTE: from now on, this also disable the h/w composer
urfaceFlinger.cpp
urfaceFlinger.h
|
3599bf2c0727bc33e8136f5163eee6f398545e05 |
10-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: use the HWC gralloc usage bit This change makes SurfaceFlinger always use the GRALLOC_USAGE_HW_COMPOSER usage bit when allocating buffers that may be passed to the HWComposer. Change-Id: I70362a8ede2b359fb2046853f85149d597465817
ayer.cpp
|
d992db3827016388e8069f5793b031153d423501 |
19-Aug-2011 |
Mathias Agopian <mathias@google.com> |
give the proper orientation to the h/w composer HAL we were using the "orientation" value instead of the real transform, which may contain arbitrary rotations for instance, and in some case ended up with a final "orientation" that looked valid, but wasn't. this fixes a problem on devices with a h/w composer hal where the rotation animation looked weird. Change-Id: I4be8a2a1bde49c33456fcf5c8d87ab515c216763
ayer.cpp
ayerBase.cpp
ayerBase.h
|
582270d69db94286a248bd829f1ae6f910d45124 |
18-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix queues-to-composer This change fixes the NATIVE_WINDOW_QUEUES_TO_WINDOW_COMPOSER query of Surface and SurfaceTextureClient. Surface now uses the inherited SurfaceTextureClient implementation of this query. SurfaceTextureClient now queries SurfaceFlinger to determine whether buffers that are queued to its ISurfaceTexture will be sent to SurfaceFlinger (as opposed to some other process). Change-Id: Iff187e72f30d454229f07f896b438198978270a8
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
8afb7e39a83a3e31170612d562eb08508e328388 |
16-Aug-2011 |
Mathias Agopian <mathias@google.com> |
as a debug option SrufaceFlinger can now connect to DDMS this is disabled by default. To enable: setprop debug.sf.ddms 1 this debug option requires to restart SurfaceFlinger Change-Id: Ic2f8050b29911b55bcd21721648b6978700c277d
ndroid.mk
dmConnection.cpp
dmConnection.h
urfaceFlinger.cpp
urfaceFlinger.h
|
c5953904ad6b6db1f48cf6d208ecf940f6a656d4 |
13-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix an orientation change drawing artifact. a wrong orientation would be briefly shown when rotation the screen. this happened when the window manager set a custom transformation and the h/w composer was used. the custom transformation was applied twice in that case. Bug: 5037522 Change-Id: Ic1f87b63cd843f4475e4265d1624463825d775c4
ayer.cpp
|
47d0812977b7acc4fed6a823203770a57f7a6b78 |
12-Aug-2011 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger doesn't rely on having a custom RefBase destructor we just use a message to the main thread to destroy our GLES state.
ayer.cpp
ayer.h
urfaceFlinger.cpp
urfaceFlinger.h
|
5bfc24515bb5c8ea7975f72d538df37753733a2f |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
return correct value from query after connecting a surface the first time a surface was connected, the values returned by query NATIVE_WINDOW_DEFAULT_{WIDTH|HEIGHT} and NATIVE_WINDOW_TRANSFORM_HINT were wrong until a call to queueBuffer was performed. Bug: 5137366, 5121607 Change-Id: I7ac6b5b0daa876638f6bed7c20f286a6e6d984f6
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
ad795baecccf239621cbffa0249c8e855296cae6 |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
improve dumpsys SurfaceFlinger output we now output the handle and size of all buffers of each layer. Change-Id: I8d011ee4ae9199f4198bd07bed770ec3bcf02986
ayer.cpp
|
e8067a7d996105d9e03d75e6593e28b795fa9336 |
03-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix a crasher in surfaceflinger this would happen if being told to draw before a buffer was available. Change-Id: I46d121c73e883078cdbf952063e38b0076f79038
ayer.cpp
|
6d30c2bdaec7d0ab98fc5409f0e050e406ee4e4c |
03-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "update HWC data structures even when a layer is marked for SKIP"
|
a537c0f42e8077baafcbc65844adf1ec8397c040 |
03-Aug-2011 |
Mathias Agopian <mathias@google.com> |
update HWC data structures even when a layer is marked for SKIP Change-Id: I16bcf44cd617814a14a795429bde2f39f411077d
ayer.cpp
ayerBase.cpp
|
c7d14e247117392fbd44aa454622778a25c076ae |
02-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Add a h/w composer API to allow the HAL to trigger a redraw This is useful in various situations, for instance if the HAL wants to change its compositing strategy. Bug: 4488017 Change-Id: I5afc14e5917c6db7926d7417d48677d5aba50caa
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/DisplayHardwareBase.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
05ca9998cdbed703a6074933492d01b066307a8d |
01-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: use async mode for video & cam"
|
cb6c755234a17ab14e6c5d0a857aab96fb02dc02 |
31-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: use async mode for video & cam This change makes SurfaceFlinger's SurfaceTexture objects default to async mode whenever a camera or video decoder connects. This behavior can be disabled by #defining NEVER_DEFAULT_TO_ASYNC_MODE. Change-Id: I8965951d1775915da180e4af298dd7af3afafecc
ndroid.mk
urfaceTextureLayer.cpp
urfaceTextureLayer.h
|
dbe6486ca151d0eb1950be0aae347f0eb8ed3442 |
30-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: abandon Layer SurfaceTextures This change makes the Layer::onRemoved method call SurfaceTextures::abandon on the layer's SurfaceTexture. This will cause all client-initiated operations on the SurfaceTexture to fail. In particular, this will result in an error on the client side, rather than a deadlock when removing a layer that used a SurfaceTexture in synchronous mode. Change-Id: I14014d00369f29560a21b606831edee432bb8867 Bug: 5020874
ayer.cpp
|
db5230f4441fa8f120f15bdd6fcfc6e75d9c27d0 |
28-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: fix a layer occlusion bug This change fixes a bug where the window visibility would be computed before any buffers were available, causing the window to be treated as non-opaque. When the first buffer arrived, if both mCurrentOpacity and the opacity determined by the buffer's format were 'opaque', a recomputation of the opacity would not be done, and the window would continue to be treated as non-opaque. SurfaceFlinger could then unnecessarily draw fully occluded layers. Change-Id: I2b95da2f4b50e68d50fc5afd8b772e26e62f58d6 Bug: 5057122
ayer.cpp
|
3fbce7c56082e4e0d23f1c1c89983d3841853ed7 |
26-Jul-2011 |
Mathias Agopian <mathias@google.com> |
remove dead code and member variables. also fix some comments and improve debugging logs. Change-Id: I83e55309f306332b59e1ec46104c4a7fffbf3c97
ayer.cpp
|
ab7c13f96a3c883fb4c93749c2e6c68155d3ad95 |
25-Jul-2011 |
Mathias Agopian <mathias@google.com> |
fix a typo that prevented preserveRects() to work properly this caused drawing artifacts during the screen rotation animation of SurfaceView. Change-Id: Idcc996b6ca2e346135dd2264959670c0b086d4cb
ransform.cpp
|
6dc49c09bc072a5b14225cdce2ca4e8c3f0edab1 |
23-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Fix typo which caused invalid rotations to be returned with NATIVE_WINDOW_TRANSFORM_HINT Bug: 4487161 Change-Id: Ib2dfbbef15397b6d90695bd27f25849ca20704f1
urfaceTextureLayer.cpp
|
bb66c9b5a9c16dee93559eb738746a2d0a9b2db3 |
21-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Fix a few issues with NATIVE_WINDOW_TRANSFORM_HINT - fixed uninitialized variable - set hint to indentity when transform is too complex - make sure FrameBufferNativeWindow doesn't fail on needed perform commands Bug: 4487161 Change-Id: I7cb2b0869b72404732eca7cb2d145ff669e2ed9b
urfaceTextureLayer.cpp
|
c10d9d90b2088a3304076e0dc4bf05cdbb5d45ab |
21-Jul-2011 |
Mathias Agopian <mathias@google.com> |
clean-up. get rid ofunused code and members in Surface[Control].cpp Change-Id: Ia7790ae28af2c2ac99eae01c2c5044ace4a490a4
urfaceFlinger.cpp
|
97c602c5af5f3ffd69009bf496d86347b71a2b4c |
20-Jul-2011 |
Mathias Agopian <mathias@google.com> |
implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation" Bug: 4487161 Change-Id: I883f34efe542c2a566d04966f873374f40c50092
ayer.cpp
urfaceTextureLayer.cpp
urfaceTextureLayer.h
ransform.cpp
lz.h
|
933389f75814bb62e8153528f9cff2cb329b77df |
19-Jul-2011 |
Mathias Agopian <mathias@google.com> |
use SurfaceTexture new scaling mode in SF SF now obeys SurfaceTexture's scaling mode instead of inferring it from the buffer's size Change-Id: I4d50e9851abedd7e64bfcfc8af9eefb9fb668529
ayer.cpp
ayer.h
urfaceTextureLayer.cpp
|
ad70186f80355e55ddad2a66b5fd174a1c019c2d |
15-Jul-2011 |
Mathias Agopian <mathias@google.com> |
dump GLES strings in SF dumpsys log Change-Id: I438d511159b2bd915c84954f30574340017d4f47
urfaceFlinger.cpp
|
29a367bb7c14c916e991a6a0028727bd06c1e16e |
12-Jul-2011 |
Mathias Agopian <mathias@google.com> |
take the state transform into account with h/w composer hal if the state transform didn't preserve rectangles, we would still try to use h/w composer hal using the bounds of the transformed rect, which isn't correct. now we correctly fall back to composition. Change-Id: Iff78f4339ece415d4987e95a5717b04934d370ab
ayer.cpp
ransform.cpp
|
baa44b89ec159fd65230cbb8ebab62d63a513b0b |
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove the simulator target from all makefiles. Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
ndroid.mk
|
ffcf4657718831edecb6ff2ed1b45ac8bf8b9a58 |
08-Jul-2011 |
Mathias Agopian <mathias@google.com> |
fix screen on/off animation (again) - surfaceflinger now uses the GL-convention of placing the origin in the left-bottom corner - map texture coordinates of the screen capture properly - add the ability to control the animation speed through a debug property Bug: 4989276 Change-Id: Ifb3297bb578078b47146fff666c01f85417e0d6f
ayerBase.cpp
urfaceFlinger.cpp
|
6163091a2c366f8311fc3ee627dc7deb9681236e |
07-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Fix EGLUtils::selectConfigForPixelFormat() - renderscript now calls EGL directly instead of relying on this function - surfaceflinger also does its own EGLConfig selection - selectConfigForPixelFormat stays for legacy reason (many tests use it) but it now only tries to match the alpha channel of the format rather than the format itself. this will allow implementations who don't support the exact formats defined in the HAL to work properly. Bug: 4998223 Change-Id: Ic664dfc14d5072a514b6f77a115d1521bfc1578f
isplayHardware/DisplayHardware.cpp
|
7e918860f9d496bf0c4b7e1649216c9209c57850 |
06-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Merge "don't kill surfaceflinger when system process dies"
|
1f339ff3875afad128a8e16ee6395c5fad295826 |
02-Jul-2011 |
Mathias Agopian <mathias@google.com> |
don't kill surfaceflinger when system process dies Change-Id: I2d3ed87b590f9ccea3fa4af41d92911de070b315
isplayHardware/DisplayHardware.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
d9e8c64c3dce1612eb948a5c16ba4ff62202b423 |
01-Jul-2011 |
Mathias Agopian <mathias@google.com> |
return an error code with gralloc buffer allocation failures Change-Id: I471e5d37ea7a42fc8a0f93446ee3b4229da37807
urfaceFlinger.cpp
urfaceFlinger.h
|
2dbf9fffb2c99bc7f9dadf226772fd8cafc7826f |
01-Jul-2011 |
Mathias Agopian <mathias@google.com> |
fix screen on/off animation, which was flipped Bug: 4673549 Change-Id: Ia9766754687b89c1ee24b2dbe918c11290ebe038
urfaceFlinger.cpp
|
698c0873cf2e07bdc7fd1e72169aee2a19fa40d7 |
29-Jun-2011 |
Mathias Agopian <mathias@google.com> |
SF transactions are now O(1) wrt IPC instead of O(N). Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
urfaceFlinger.cpp
urfaceFlinger.h
ests/resize/resize.cpp
ests/surface/surface.cpp
|
67b4cff399eef982a831dbe9c63e43e9846473a5 |
28-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
Merge changes I9fb59763,I8b2c6e00 * changes: SurfaceTexture: consume buffers after err checks SurfaceTexture: change onFrameAvailable behavior
|
99b49840d309727678b77403d6cc9f920111623f |
28-Jun-2011 |
Mathias Agopian <mathias@google.com> |
PermissionCache caches permission checks This is intended to absorb the cost of the IPC to the permission controller. Cached permission checks cost about 3us, while full blown ones are two orders of magnitude slower. CAVEAT: PermissionCache can only handle system permissions safely for now, because the cache is not purged upon global permission changes. Change-Id: I8b8a5e71e191e3c01e8f792f253c379190eee62e
urfaceFlinger.cpp
urfaceFlinger.h
|
3d8063b02e06020c8062addcc9ec49048d3bdb9a |
27-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: change onFrameAvailable behavior This change alters the conditions under which the onFrameAvailable callback gets called by the C++ SurfaceTexture class. The new behavior is to call the callback whenever a frame gets queued that will be visible to the buffer consumer. This means that buffers queued in synchronous mode always trigger the callback, as those buffers will remain pending until they are consumed. Buffers queued in asynchronous mode will only trigger the callback if there was not previously an unconsumed buffer pending. The new behavior means that a consumer should perform a draw operation exactly once for every onFrameAvailable call that it recieves. This change also modifies SurfaceFlinger and the SurfaceTexture JNI to support of the new behavior. Change-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40
ayer.cpp
|
ddc31c3e2bc6ffe66695c385d23e8ccc3c6dad06 |
13-Jun-2011 |
Mathias Agopian <mathias@google.com> |
fix RefBase so it retains binary-compatibility with gingerbread Bug: 4595257 Change-Id: I0d5e10f497e3f39868bff58f6ded510c38b44b12
ayer.cpp
ayer.h
|
a67932fe6864ac346e7f78b86df11cf6c5344137 |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
unify SurfaceTexture and Surface Add the concept of synchronous dequeueBuffer in SurfaceTexture Implement {Surface|SurfaceTextureClient}::setSwapInterval() Add SurfaceTexture logging fix onFrameAvailable
ndroid.mk
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
urfaceFlinger.h
urfaceTextureLayer.cpp
urfaceTextureLayer.h
lz.h
|
342451d19f9e985912a413612ca6c1de5a13d339 |
20-May-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Fix a race that could cause GL commands to be executed from the wrong thread."
|
ca4d3602c07837d0b2ac6878685a8e327b5f30f0 |
20-May-2011 |
Mathias Agopian <mathias@google.com> |
Fix a race that could cause GL commands to be executed from the wrong thread. Change-Id: Ia3d407f7bf2f5553f46cfdade70b7b0badb35beb
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
3629d7ff29495aad453b08a86e9ede7e42afa786 |
17-May-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: unfreeze windows for fixed size buffers. This change makes SurfaceFlinger unfreeze a window if it ever gets a buffer that is fixed-size. Normally the window would not be frozen if its in fixed-size mode, but if the window was frozen before entering fixed-size mode then it should be unfrozen. Change-Id: I6bc822d4b02ae51fa8914c1f60f5d24b2002b38d
ayer.cpp
|
dea20b1f343012d58ca9eb381684b26a168dc127 |
04-May-2011 |
Mathias Agopian <mathias@google.com> |
Fix a race in SurfaceFlinger that could cause layers to be leaked forever. The transaction flags were atomically read-and-cleared to determine if a transaction was needed, in the later case, mStateLock was taken to keep the current state still during the transaction. This left a small window open, where a layer could be removed after the transaction flags were checked but before the transaction was started holding the lock. In that situation eTraversalNeeded would be set but only seen during the next transaction cycle; however, because we're handling this transaction (because of another flag) it will be commited, "loosing" the information about the layer being removed -- so when the next transaction cycle due to eTraversalNeeded starts, it won't notice that layers have been removed and won't populated the ditchedLayers array. Change-Id: Iedea9e25fee8dd98a0c5bd5ad41a20fcadf75b47
urfaceFlinger.cpp
urfaceFlinger.h
|
697526bc9e44ce61c88614f98387ae8bbf0a187e |
01-May-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: android_native_buffer_t -> ANativeWindowBuffer Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417 Signed-off-by: Iliyan Malchev <malchev@google.com>
extureManager.cpp
ests/surface/surface.cpp
|
e4b117ad45411cde4c9144a43f16fa9708de1aa2 |
04-May-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Fix a race-condtion in SurfaceFlinger that could lead to a crash."
|
4f113740180b6512b43723c4728f262882dc9b45 |
04-May-2011 |
Mathias Agopian <mathias@google.com> |
Fix a race-condtion in SurfaceFlinger that could lead to a crash. Client::mLayers could be accessed from different threads. On one side from Client::attachLayer() which is currently called from a binder thread; on the other side from Client::detachLayer() which is always called from the main thread. This could lead to a corruption of Client::mLayers. We fix this issue by adding an internal lock to Client. Change-Id: Ib1317d7750ed5030e6f577efe34b69fc10198bd3
urfaceFlinger.cpp
urfaceFlinger.h
|
5511a49d8df4020b714a3673b4d3d1de00470da2 |
02-May-2011 |
Conley Owens <cco3@android.com> |
am 08acaec6: am a47c0d29: am 58e4a5e2: Merge "Fixed to draw texture when loadTexture() is called at first time" * commit '08acaec6df66bd6a12b1e63016ed998abff4afdc': Fixed to draw texture when loadTexture() is called at first time
|
7badf9c5e84655063155f5cf9b0011204cf38e8b |
30-Apr-2011 |
Conley Owens <cco3@android.com> |
am a47c0d29: am 58e4a5e2: Merge "Fixed to draw texture when loadTexture() is called at first time" * commit 'a47c0d29bec7c242fb8d5ffe206c4c6ff85a178a': Fixed to draw texture when loadTexture() is called at first time
|
e85e4d4ed23f19a507c6208fd08744340537e76d |
29-Apr-2011 |
Conley Owens <cco3@android.com> |
Merge "Fixed to draw texture when loadTexture() is called at first time"
|
56b79aa8164fe015198a549130d428a74cbe814b |
29-Apr-2011 |
Conley Owens <cco3@android.com> |
Merge "Fixed to call computeVisibleRegions() when transparent value changed"
|
345c6114dad73fad026fa0925cca133236091dc2 |
27-Apr-2011 |
Conley Owens <cco3@android.com> |
am ba5aebd1: am ac505b86: am f0556bb9: am 86d1d747: Merge "Add lock before calling initEglImage" * commit 'ba5aebd106c61567ad6be905efd18902025735aa': Add lock before calling initEglImage
|
ddc25bb92eb10ee40559424a75cac5e440b75575 |
27-Apr-2011 |
Conley Owens <cco3@android.com> |
am ac505b86: am f0556bb9: am 86d1d747: Merge "Add lock before calling initEglImage" * commit 'ac505b86b45462d9883f9c36fad0ef85e0885ee4': Add lock before calling initEglImage
|
a97b487178fe5acafe0281e4cc61827945b3711b |
27-Apr-2011 |
Conley Owens <cco3@android.com> |
am 86d1d747: Merge "Add lock before calling initEglImage" * commit '86d1d74762e65b6f64c2d4758aa5fd4af6275696': Add lock before calling initEglImage
|
0ef4e15a6c12778daf464a4953d7e15e651f49ac |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Get rid of the "pid" parameter from createSurface Change-Id: I28635e3f803e6abe965d79998e305f54a202465d
urfaceFlinger.cpp
urfaceFlinger.h
|
d9071ad304b20e6d0ddf8473bc1f12ce3d7feb11 |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Merge "remove support for console in SurfaceFlinger"
|
3d031507e9fe249ca9f51314fe9613ff5ed262bf |
19-Apr-2011 |
Mathias Agopian <mathias@google.com> |
remove support for console in SurfaceFlinger the only supported screen management api now is /sys/power/wait_for_fb_{sleep|wake} Change-Id: I6c7d8d54843da4980b1b38ee3d46cf19be275240
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
|
3d64e738b91b2a4a9d81fae1991e6f6eae9ac8c8 |
19-Apr-2011 |
Mathias Agopian <mathias@google.com> |
fix memory corruption when retriving GL_MAX_VIEWPORT_DIMS Change-Id: I2e0b1eac6dbc6a4ecbbaf31013aa02cf2369fce2
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
|
0d11baf88920660cf0e30b25b7268a9459e8ffa5 |
15-Apr-2011 |
Kobi Cohen Arazi <kobic@codeaurora.org> |
Add lock before calling initEglImage Without that lock, there is a chance of race condition where while composing a specific index, requestBuf with the same index can be executed and touch the same data that is being used in initEglImage. (e.g. dirty flag in texture)
ayer.cpp
|
4cb18881b55b82a24873ccd8e298bc2d5a9c17e5 |
09-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix a GraphicBuffer leak in SurfaceTexture This leak was intentional, it was there to deal with the fact that some gralloc implementations don't track buffer handles with file-descriptors so buffers needed to stay alive until there were registered, which is not guaranteed by binder transactions. In this new implementation, we use a small BBinder holding a reference to the buffer, which with tuck into the parcel. This forces the reference to stay alive until the parcel is destroyed, which is guaranteed (by construction) to happen after the buffer is registered. this allows the public facing API to not expose the previous hack. Change-Id: I1dd6cd83679a2b7457ad628169e2851acc027143
urfaceFlinger.cpp
urfaceFlinger.h
|
47d8730a2463f38a695ab95b533b0d9728f266a3 |
06-Apr-2011 |
Mathias Agopian <mathias@google.com> |
remove more unused references to ISurface Change-Id: I2201f1ca2bb8f203a081d94a0134f798778dfbef
ests/resize/resize.cpp
|
dcab18c9c1a4ac6b5b9c996a4b002b0468bb3269 |
18-Feb-2011 |
Ichitaro Kohara <ichitaro.kohara@sonyericsson.com> |
Fixed to draw texture when loadTexture() is called at first time SW renderer of Stagefright reaches loadTexture() to draw image. The first time loadTexture() is called, it just initializes OGL texture, then returns. Thus, the first time call doesn't draw. This patch fixes to move on to draw stage after the initialization. Change-Id: I3ec1ad68fb8d376a4ad7aefded1c18a002d175c4
extureManager.cpp
|
d87f162026454f5a3e6437ed0c9ef51651a6b939 |
26-Mar-2011 |
Mathias Agopian <mathias@google.com> |
merge libsurfaceflinger_client into libgui this is the first step in unifying surfacetexture and surface. for this reason the header files were not moved, as most of them will eventually go away. NOTE: currently we keep libsurfaceflinger_client.so as an empty library to workaround prebuilt binaries wrongly linking against it. Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
ndroid.mk
ests/resize/Android.mk
ests/screencap/Android.mk
ests/surface/Android.mk
|
3eb70b4a51979399aed9b0017a23151701d1ad0e |
19-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
am bd340c7b: am b368f4d8: am 38caff23: Merge "SurfaceFlinger: Fix a typo." into honeycomb-mr1 * commit 'bd340c7b492fcf7d0a6cccab8825e710c83fe76d': SurfaceFlinger: Fix a typo.
|
d32a694a0c2040e1cc03ec0172d5378b78363fa5 |
19-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: Fix a typo." into honeycomb-mr1
|
5fd799dab602850b384d124c61096636f0988a93 |
19-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Fix a typo. This change makes Layer skip its cleanup of its old shared memory region when the UserClient object that owned the memory has been freed. Bug: 3429357 Change-Id: I9e4d8eb190f6914dc043674b9bb8dd28e959901b
ayer.cpp
|
02cc7170a20335f035cb64ca442bc17d6c57273b |
18-Mar-2011 |
James Dong <jdong@google.com> |
am 14438b81: am 970bad67: am be368de7: Merge "Fix missing AOSP copyright headers for more files" into honeycomb-mr1 * commit '14438b81a1fe4d7ebdf8977f3d80a1dd1867c5ad': Fix missing AOSP copyright headers for more files
|
5f7204cb66b5500c814b5987af5db99b2b8fe90c |
17-Mar-2011 |
James Dong <jdong@google.com> |
Fix missing AOSP copyright headers for more files o Update the copyright date on InputDispatcher_test.cpp and InputReader_test.cpp because these two files were moved from other places to the current location, and were actually created in 2010. bug - 4119349 Change-Id: Ic93b81ddafb58e9e72a2e9e02ca3d9f173d6dca7
ests/resize/resize.cpp
ests/surface/surface.cpp
|
939fee8819ac714af6f99b1d8e0bd2ff6626a356 |
17-Mar-2011 |
Mathias Agopian <mathias@google.com> |
am e22aa623: am 25594e19: am f40e638e: fix [4093196] Device lock up - log spam with SharedBufferStack: waitForCondition(LockCondition) timed out * commit 'e22aa62362a3007ee59ac62d4b5969e216987995': fix [4093196] Device lock up - log spam with SharedBufferStack: waitForCondition(LockCondition) timed out
|
d0b55c011a311b677493ba72804bf1bc4df68224 |
17-Mar-2011 |
Mathias Agopian <mathias@google.com> |
fix [4093196] Device lock up - log spam with SharedBufferStack: waitForCondition(LockCondition) timed out a memory corruption happned when the buffer pool was resized (like when playing a video or using camera) and there was no current active buffer. In this case, the faulty code would index into an array at position -1 which corrupted 24 bytes of data. also improved region validation code (ifdef'ed out by default) Bug: 4093196 Change-Id: I915c581d131148959d720e00e3892e9186ab733d
ayer.cpp
|
1bbafb96101de04c43adb5e3ca2494070d20a46a |
12-Mar-2011 |
Mathias Agopian <mathias@google.com> |
Fix some const-ness and comments mDrawingState doesn't need to be accessed by the mStateLock, because by definition it's only accessed from the main thread. Similarily, the list of layers in the drawing state cannot change (ie: is const). Change-Id: I2e5da7f4d8caee7af7802b432cd45cc81c7c08b0
urfaceFlinger.cpp
urfaceFlinger.h
|
5bf3abefb2745bf0c45b0814cfd44b4682060a6c |
12-Mar-2011 |
Mathias Agopian <mathias@google.com> |
Fix initialization order warning. Change-Id: I794dfaaa3a2f2645a89abc6c45de5f76e485f7d0
ayer.cpp
|
795f5ccf4788b791ff1042426be769ec51db6675 |
12-Mar-2011 |
Eric Hassold <hassold@google.com> |
Merge "Default to NONE format in Layer"
|
7ffe3807506da6f052535ca0c790636e41a8e310 |
11-Mar-2011 |
Eric Hassold <hassold@google.com> |
Default to NONE format in Layer mFormat is not initialized with any value in Layer constructor, causing a call to requestFormat() with no explicit format specified to fallback to some uninitialized value. Such invalid path actually detected by valgrind. Change-Id: Ib7faabcd61eaa26fb0ae7a9a486d9e258ba31b63
ayer.cpp
|
7a4d0dfd43558c299e6af6c4910ef76db9db3172 |
10-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Respect the PROTECTED gralloc bit. This change makes SurfaceFlinger treat layers for which the active buffer has the GRALLOC_USAGE_PROTECTED bit set as if they have the 'secure' flag set. Change-Id: Ic60b6513a63e4bb92ec6ce9fd12fd39b4ba5f674 Bug: 4081304
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
|
18570db84e7ec69ea3aa5764777ee77e1e07fcd8 |
10-Mar-2011 |
Mathias Agopian <mathias@google.com> |
am 33029221: Merge "revert the surface purgatory list and dependent changes." into gingerbread * commit '33029221619f14577bd0d0e7c2f815abc8f1b8ea': revert the surface purgatory list and dependent changes.
|
f7662afb76dfafebdd449c5e3e168f050da850a0 |
10-Mar-2011 |
Mathias Agopian <mathias@google.com> |
revert the surface purgatory list and dependent changes. 6d0f6cb Revert "Fix [3513017] in lockscreen but showing empty launcher (live wallpaper) only" 6154412 Revert "partially fix [3306150] HTML5 video with H/W acceleration blackout (DO NOT MERGE)" 37c2a37 fix [3408713] Dialog window invisible sometimes It looks like there is a surface leak, it's unclear where it is. Without those reverts, this would cause a leak of the associated buffers which is far more problematic. this change might hide the surface leak. Bug: 4078032 Change-Id: Iedcda3ffcdd2f69d41047b5c3134c1e867ff90d7
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
134f0422866e8985188ed10dfbdcb8e6c34b87f7 |
08-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
ANativeWindow: add queues-to-window-composer check. This change adds a new 'method' to the ANativeWindow interface to check whether buffers queued to the window will be sent directly to the system window compositor. Change-Id: I4d4b199e328c110b68b250029aea650f03c8724d Bug: 3495535
urfaceFlinger.cpp
urfaceFlinger.h
|
5f1e78d7301c2a14c83de068f61e13aaed9494a8 |
08-Mar-2011 |
Mathias Agopian <mathias@google.com> |
am df6410dc: Merge "Fix [3513017] in lockscreen but showing empty launcher (live wallpaper) only" into gingerbread * commit 'df6410dce3dae0bdb7e13118b3878079a1dcce03': Fix [3513017] in lockscreen but showing empty launcher (live wallpaper) only
|
ee65ac8a71c24fc154b513faa13d24b4d4dfee4f |
10-Feb-2011 |
Mathias Agopian <mathias@google.com> |
Fix [3513017] in lockscreen but showing empty launcher (live wallpaper) only 37c2a37 fix [3408713] Dialog window invisible sometimes d35c666 fix [3385504] Surface flinger hang when adding dim surface 1723b04 fix [3389263] OMX.Nvidia.h264.decode fails to shutdown 1b0114f fix a surface leak in SurfaceFlinger Bug: 3513017 Change-Id: Ia13ed8c9cdcb1f484e177cdcaff687e7c88a10c3
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerDim.cpp
urfaceFlinger.cpp
|
1c71a47a6db679a3212f0c99e14f330d6da500fa |
03-Mar-2011 |
Mathias Agopian <mathias@google.com> |
remove some logs Change-Id: Ia476184048ee419e19330a56dc8e6553189f6a24
urfaceFlinger.cpp
|
e7809762e186ad5a12bc43aa38acbd358adfeb12 |
28-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
am 0dc5fdb9: am e630e5f4: am 919853ce: Merge "Prevent SurfaceFlinger from using layer token 31." into gingerbread * commit '0dc5fdb9b2fd3b3e2ede5e9607bc21423f357a01': Prevent SurfaceFlinger from using layer token 31.
|
d1ad86f66b070eaf81f8bee41a2528d5da9363f1 |
28-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
am e630e5f4: am 919853ce: Merge "Prevent SurfaceFlinger from using layer token 31." into gingerbread * commit 'e630e5f49ba15005172dceeda7299569b2d2351f': Prevent SurfaceFlinger from using layer token 31.
|
db7b742f65b2b88ea414e666e1079cc21b51f715 |
28-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
am 919853ce: Merge "Prevent SurfaceFlinger from using layer token 31." into gingerbread * commit '919853ce244f853966817d4adb2f3b7b6e4bbe74': Prevent SurfaceFlinger from using layer token 31.
|
ab0225e3308c2cc6d399e967be16e766468437ac |
23-Feb-2011 |
Eric Hassold <hassold@google.com> |
Merge "Correctly handle translucency of device-specific pixel formats"
|
2168e2de244500d912dbeb43ac4065c327baddf5 |
17-Feb-2011 |
Ichitaro Kohara <ichitaro.kohara@sonyericsson.com> |
Fixed to call computeVisibleRegions() when transparent value changed When some Surfaces are overlapping and one of them changed to transparent or opaque, the back Surfaces should appear or disappear. This patch calls SurfaceFlinger::computeVisibleRegions() to re-calculate region of each Surface to implement the behavior. Change-Id: Iffb1caf1b4ce28dff252e114fe5b9b07d9c84a6f
ayerBuffer.cpp
|
a1f47b90ab53af978be45b8bda16c5d084ae66e6 |
16-Feb-2011 |
Mathias Agopian <mathias@google.com> |
fix a surface leak in SurfaceFlinger SF kept a strong reference to ISurface until the window manager removed the surface from the screen. This fell appart when running standalone tests, that is when the window manager wasn't involved. When the window manager is around, it would clean-up surfaces even when an application died. with this change, SF is able to do its own cleanup without relying on the window manager. the change is very simple, we simply don't keep a reference to ISurface and make sure no more than one of them can be created. Change-Id: I61f2d7473bf8d4aa651549a846c34cdbb0d0c85a
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
|
ac45e6bff1b41acd35c981291b37b23f8e083cee |
10-Feb-2011 |
Eric Hassold <hassold@google.com> |
Correctly handle translucency of device-specific pixel formats Check requested format for device-specific formats, and assume (as documented in libhardware/include/hardware/hardware.h) this is opaque layer so no blending is necessary. Bug: 3215931 Change-Id: Ib4dff8060ac522d201ff1e74807ac340c17d3fa7
ayer.cpp
ayer.h
|
8a08392833a2db80aef20fba8a43f0829a096e13 |
11-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Prevent SurfaceFlinger from using layer token 31. Bug: 2964479 Change-Id: I81e948924bff35b8b300d409f2c09f3779bcdeec
urfaceFlinger.cpp
|
48840800f4b0772cd3900d112794c6f0a361336e |
03-Feb-2011 |
Mathias Agopian <mathias@google.com> |
am 50b029d5: am 7ba35f5a: Merge "[3418265] apply layer transformations to the DimLayer." into honeycomb * commit '50b029d578fa06cd0733dcc7c69cb94f5f824908': [3418265] apply layer transformations to the DimLayer.
|
bce26daaaf4ea245ccb09d75a378d294e518d945 |
03-Feb-2011 |
Mathias Agopian <mathias@google.com> |
[3418265] apply layer transformations to the DimLayer. with this change DimLayers will behave just like any other layer, in particular they'll respect the layer transformations. Change-Id: Icb4a1275e8bca9e3deb5f57c9f9219aaa69f9877
ayerDim.cpp
ayerDim.h
urfaceFlinger.cpp
|
79676ac8e6a95fd1b1fad2b1032f01d582614055 |
31-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
am 09443aeb: am 62884505: Merge "Reset ANativeWindow crop on buffer geometry changes." into honeycomb * commit '09443aeb6470d66f5bc1938b70d74b3e2f9bbbb9': Reset ANativeWindow crop on buffer geometry changes.
|
da04384f18602bf3a7bc9c6b39dc1f09ea420692 |
31-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "Reset ANativeWindow crop on buffer geometry changes." into honeycomb
|
3cbe436bfd71b888ff9de97242cc976015b5b635 |
29-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am 8d778b37: am 231da079: Merge "fix [3389263] OMX.Nvidia.h264.decode fails to shutdown" into honeycomb * commit '8d778b375ccb4945cdcd7cc93272a6d36466ad00': fix [3389263] OMX.Nvidia.h264.decode fails to shutdown
|
3cc2677efc2a4bc06297b9667ac529284f6abf9d |
29-Jan-2011 |
Mathias Agopian <mathias@google.com> |
fix [3389263] OMX.Nvidia.h264.decode fails to shutdown We were still destroying an ANativeWindow's buffer pretty soon after it was removed from the window manager. This time we really wait for the ISurace to go away. Change-Id: I329273fedaeef76ee92836f6180c2c3808389330
ayer.cpp
|
68f9127e88ca6fd849d0f28bcd8776e04aab22e6 |
29-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Reset ANativeWindow crop on buffer geometry changes. This changes the ANativeWindow API and the two implementations to reset the window's crop rectangle to be uncropped when the window's buffer geometry is changed. Bug: 3359604 Change-Id: I64283dc8382ae687787ec0bebe6a5d5b4a0dcd6b
ayerBase.cpp
|
16f0453fee84c6aad59fe0d1c7d36f061d46cffc |
20-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Protected surface API To be used by DRM framework, implemented by display HAL Change-Id: I054a07a94f4d5dbe792f3a597e2e49a100d90eb2
ayer.cpp
ayer.h
ayerBase.h
ayerDim.h
|
0d1561275e80073807ac04728951782d943f8882 |
26-Jan-2011 |
Mathias Agopian <mathias@google.com> |
fix [3385504] Surface flinger hang when adding dim surface Change-Id: I8e0cda414bcad5854d2ca5dde8370bfd8b2e5ea4
ayerBase.cpp
ayerBase.h
ayerDim.cpp
urfaceFlinger.cpp
|
275e627ef6c9db2c4d4efa1edbac4d7b68859ce8 |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am 239fd805: Merge "fix [3361121] hang in glClear() - device unresponsive, OTA fails (DO NOT MERGE)" into gingerbread * commit '239fd805ef7c0e4116b0a89e20caaf287e91f017': fix [3361121] hang in glClear() - device unresponsive, OTA fails (DO NOT MERGE)
|
c92ba8851e2c495b025c48da9d887417dea85593 |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am 1955a5c9: Merge "partially fix [3306150] HTML5 video with H/W acceleration blackout (DO NOT MERGE)" into gingerbread * commit '1955a5c9da421dc89bb1a1dd3d3193159192cde9': partially fix [3306150] HTML5 video with H/W acceleration blackout (DO NOT MERGE)
|
f7701fabe8c914d7914ab7630257da395a7fa7b2 |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am d0441f92: Merge "fix a small bug that caused screenshot to show garbage in some cases (DO NOT MERGE)" into gingerbread * commit 'd0441f921b2b1879fb44041f521d9bfaa5a547d0': fix a small bug that caused screenshot to show garbage in some cases (DO NOT MERGE)
|
63e4bba51501f9a6f27beccaae7f8e0b78ac767c |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am 043a3cdd: Merge "workaround [3201922] display not on: log full of gralloc errors (DO NOT MERGE)" into gingerbread * commit '043a3cddf67e2baf38711bcb125084599f8f9802': workaround [3201922] display not on: log full of gralloc errors (DO NOT MERGE)
|
59f71e7feb9034c61cf531031063396d0fb97176 |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
am d3fcd0a1: Merge "minor clean-up. SurfaceFlinger doesn\'t need libpixelflinger.so. (DO NOT MERGE)" into gingerbread * commit 'd3fcd0a1c923498921107bb44fbc8b24582a170a': minor clean-up. SurfaceFlinger doesn't need libpixelflinger.so. (DO NOT MERGE)
|
d1a99ec6b2f23db5662e6d2ccf7b40d96869eccb |
19-Jan-2011 |
Mathias Agopian <mathias@google.com> |
fix [3361121] hang in glClear() - device unresponsive, OTA fails (DO NOT MERGE) Generally we never want to lock a buffer for write access if it is at the "head" on the surfaceflinger side. The only exception (1) is when the buffer is not currently in use AND there is at least one queued buffer -- in which case, SurfaceFlinger will never use said buffer anymore, because on the next composition around, it will be able to retire the first queued buffer. The logic above relies on SurfaceFlinger always retiring and locking a buffer before composition -- unfortunately this didn't happen during a screenshot. This could leave us in a situation where a buffer is locked by the application for write, and used by SurfaceFlinger for texturing, causing a hang. Here, we fix this issue by never assuming the exception (1), it was intended as an optimization allowing ANativeWindow::lockBuffer() to return sooner and was justified when most of SF composition was done in software. The actual buffer locking is now ensured by gralloc. We could have handled screenshots in a similar way to a regular composition, but it could have caused glitches on screen, essentially, taking a screenshot could cause to skip a frame. now that we removed the notion of a "inUse" buffer in surfaceflinger a lot of code can be simplified / removed. noteworthy, the whole concept of "unlockClient" wrt. "compositionComplete" is also gone.
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
53a67e1663564efd691461659634f9e908407112 |
15-Jan-2011 |
Mathias Agopian <mathias@google.com> |
partially fix [3306150] HTML5 video with H/W acceleration blackout (DO NOT MERGE) We used to guarantee that a layer in SurfaceFlinger would never be destroyed before all references (to its ISurface) on the client side would be released. At some point, this guarantee got relaxed to allow to free gralloc resources sooner. This last change was incorrect, because: - in implementations with reference-counting the gralloc resources wouldn't be released anyways, until all the mapping were gone - in implementations without ref counting, the client side would most likely crash or do something bad - it also caused the SharedBufferStack slot to be reallocated to another surface, which could be problematic if the client continued to use the surface after the window manager destroyed it. So, we essentially reinstate the guarantee that layers won't be destroyed until after all references to their ISurface are released. NOTE: This doesn't entirely fix 3306150 because there is another problem there where the Browser continues to use a surface after it has been destroyed. also improve SurfaceFlinger 'dumpsys' log list the purgatory, which shows windows that have been closed, but for which the client still has references.
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
cfb676f1aeb8648699bf23e987c3a752275519ca |
17-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix a small bug that caused screenshot to show garbage in some cases (DO NOT MERGE) we were not clearing the screen entirely, which caused garbage when the screen wasn't entirely covered by windows. Change-Id: Ia7aa13c36a8a314e0e8427d419b16b9aa2165ddf
urfaceFlinger.cpp
|
5dc7e7da9273a5b40a85f8f6177793a23669cf98 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
workaround [3201922] display not on: log full of gralloc errors (DO NOT MERGE) we make sure to call compositionComplete after everytime we do composition with the GPU (even for the screenshot case), which is where the buffer locks are released. Change-Id: I450430d1e4d1ee9ce1023970642378c42cdcfa4c
urfaceFlinger.cpp
|
a0c6b761738ff98682e281571a0ff91c2230e7ee |
14-Dec-2010 |
Mathias Agopian <mathias@google.com> |
minor clean-up. SurfaceFlinger doesn't need libpixelflinger.so. (DO NOT MERGE) Change-Id: I1ddbbbec4fa5b2521ef3787bc28efe1bc90d0060
ndroid.mk
|
0c2648ab644b22100c1e80801d05278f9ac729e9 |
25-Jan-2011 |
Mathias Agopian <mathias@google.com> |
tone down the log spew regarding taking screenshots. Change-Id: I673806bda23eba6aab25f7505b7e0170afc9920b
urfaceFlinger.cpp
|
a9f54a77cd4057b0fddb0c6886357152548bf891 |
20-Jan-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix [3369743] SurfaceFlinger reads hardware composer hints before calling hwc.prepare()" into honeycomb
|
2bd1d95efecffad447afd682ffe605bbf8c79d62 |
20-Jan-2011 |
Mathias Agopian <mathias@google.com> |
clean-up unneeded code now that we removed the notion of a "inUse" buffer in surfaceflinger a lot of code can be simplified / removed. noteworthy, the whole concept of "unlockClient" wrt. "compositionComplete" is also gone. Change-Id: I210413d4c8c0998dae05c8620ebfc895d3e6233d
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
48b888aab9fdcfba250722dffbdffe61f11c64f3 |
20-Jan-2011 |
Mathias Agopian <mathias@google.com> |
improve SurfaceFlinger 'dumpsys' log list the purgatory, which shows windows that have been closed, but for which the client still has references. Change-Id: I5168bb88cb328d5d77d71d0871deb9190f493126
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
|
f20a32415d055336bc6016fa2de36d126db32746 |
20-Jan-2011 |
Mathias Agopian <mathias@google.com> |
fix [3369743] SurfaceFlinger reads hardware composer hints before calling hwc.prepare() Change-Id: If3277c7b9d4cb8ef20d1706155fac7b87e64fb20
urfaceFlinger.cpp
|
c1d1b0d9b74d8f55346d0b84f369e48ecf2e0d33 |
16-Jan-2011 |
Mathias Agopian <mathias@google.com> |
Add logs when taking a screenshot to help tracking issue 3361121 Change-Id: I61d1e072ebe7061ee1d7255f6121b684e2923d1b
urfaceFlinger.cpp
|
0d3dcc4aab864e4e4086b070c08949d369239f22 |
15-Jan-2011 |
Mathias Agopian <mathias@google.com> |
Merge "partially fix [3306150] HTML5 video with H/W acceleration blackout" into honeycomb
|
76cd4ddc6ad664257739b3d3713fd9ebdc9a4ad9 |
15-Jan-2011 |
Mathias Agopian <mathias@google.com> |
partially fix [3306150] HTML5 video with H/W acceleration blackout We used to guarantee that a layer in SurfaceFlinger would never be destroyed before all references (to its ISurface) on the client side would be released. At some point, this guarantee got relaxed to allow to free gralloc resources sooner. This last change was incorrect, because: - in implementations with reference-counting the gralloc resources wouldn't be released anyways, until all the mapping were gone - in implementations without ref counting, the client side would most likely crash or do something bad - it also caused the SharedBufferStack slot to be reallocated to another surface, which could be problematic if the client continued to use the surface after the window manager destroyed it. So, we essentially reinstate the guarantee that layers won't be destroyed until after all references to their ISurface are released. NOTE: This doesn't entirely fix 3306150 because there is another problem there where the Browser continues to use a surface after it has been destroyed. Change-Id: I305c830dd722b30a6d53cbf3a9c714fd3cf7eb06
urfaceFlinger.cpp
urfaceFlinger.h
|
a49576f06b73893fd957d974382390a47b44589e |
14-Jan-2011 |
Mathias Agopian <mathias@google.com> |
Merge "fix [3312683] Camera mirroring problem after switching from back to front camera" into honeycomb
|
ad456f9878ff7c176499e7b992f9ff1cb3e9cdee |
14-Jan-2011 |
Mathias Agopian <mathias@google.com> |
fix [3312683] Camera mirroring problem after switching from back to front camera the crop as well as buffer orientation can change at every frame, when that happens we need to reset the hwc HAL (ie: set the GEOMETRY_CHANGED flag). currently we achieve this by taking the same code path than an actual geometry change which is a bit more heavy than necessary. Change-Id: I751f9ed1eeec0c27db7df2e77d5d17c6bcc17a24
ayerBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
9a78c90cd46b2a3bd637b056873149d3b94384b4 |
13-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix remote GraphicBuffer allocation in SurfaceFlinger. This change fixes a horrible hack that I did to allow application processes to create GraphicBuffer objects by making a binder call to SurfaceFlinger. This change introduces a new binder interface specifically for doing this, and does it in such a way that SurfaceFlinger will maintain a reference to the buffers until the app is done with them. Change-Id: Icb240397c6c206d7f69124c1497a829f051cb49b
urfaceFlinger.cpp
urfaceFlinger.h
|
495633406580685dfaa41979bbae47fc5f77fefe |
20-Dec-2010 |
Jamie Gennis <jgennis@google.com> |
Add the ISurfaceComposer::createGraphicBuffer IPC. This change adds a new binder method to the ISurfaceComposer interface. This IPC is intended to allow SurfaceFlinger clients to allocate gralloc buffers using SurfaceFlinger as a proxy to gralloc. Change-Id: Ide9fc283aec5da6268ba62cfed0c3319a50b640d
urfaceFlinger.cpp
urfaceFlinger.h
|
ea0b147ba53707ba6566d28b22a8c7ba89ae85f8 |
20-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am c724f2fb: disable the bypass mode. DO NOT MERGE. * commit 'c724f2fba330da275f46586aeb5f0ae7bd2fae99': disable the bypass mode. DO NOT MERGE.
|
902329fb3e8fd0b3666ff99704c196f0b8c2a08d |
18-Dec-2010 |
Mathias Agopian <mathias@google.com> |
disable the bypass mode. DO NOT MERGE. SF bypass mode triggers a bug in the display controller that case cause the device to freeze. Change-Id: If29b4d5132f463d13831b082b904c235f15a19fb
ndroid.mk
|
f653b897a449e10d6cbfb6e0812f7b0bb02d6482 |
17-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix a small bug that caused screenshot to show garbage in some cases we were not clearing the screen entirely, which caused garbage when the screen wasn't entirely covered by windows. Change-Id: Ie9ab9b94eabfa6cafddf45bb14bc733bdc8d35c0
urfaceFlinger.cpp
|
e6f0984361f634ff36bc0ad1c2d45f4554619ac8 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
workaround [3201922] display not on: log full of gralloc errors while we're waiting for the real fix in the gralloc/gpu driver, this workaround should resolve the issue. we make sure to call compositionComplete after everytime we do composition with the GPU (even for the screenshot case), which is where the buffer locks are released. Change-Id: I3cb5ad67d48c81a23100172bab77e86a70e29152
urfaceFlinger.cpp
|
420a283c4dc2a669c93bd5c0a2180b14f3625501 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
Fix a problem where hwc and GL composition could show a different buffer if a surface's buffers are reallocated, the current active buffer will end-up pointing on one of these until a new buffer is retired. we're now keeping a reference to the actual buffer until we retire a new one. Change-Id: Ib1703947e7a0340694d846e0962576318863b935
ayer.cpp
ayer.h
|
ebeb7095961e09f5cff0c7cf2c04fa4770b2e033 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix debug.sf.showbackground Change-Id: Ie4eeca006ad6d8030900d8cb0029e4d1c22474fb
urfaceFlinger.cpp
|
da9584dc295cc5e6d0b49a97c1e45159249d650b |
14-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix [3223749] media server crashes when switching mode from video capture to still image capture there was an issue were in some situation SF would call prepare() on hwc with a NULL handle and never call prepare again. in this situation, we onw set the SKIP flag to make sure that hwc won't process this layer and as soon as we receive our first buffer we trigger a recompute of the visible regions which will end-up calling prepare() again. Change-Id: I6b400b2df79712408b9315a9859290c7fcb1609e
ayer.cpp
ayer.h
|
fb88981051118e169d6acfe796f7eab9a827b2e0 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
Merge "fix [3176642] Camera preview turns completely black for multiple toggles between camera and camcorder app"
|
5eee3d2b13880c9a486be8fca20128660a19b7f7 |
15-Dec-2010 |
Mathias Agopian <mathias@google.com> |
Merge "minor clean-up. SurfaceFlinger doesn't need libpixelflinger.so."
|
dd17b3eaa99f761e265ff457e335b5a0ff83dafb |
14-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix [3176642] Camera preview turns completely black for multiple toggles between camera and camcorder app There was a leak of Surface tokens when a surface was detached from a UserClient. We now always detach a surface from its client before attaching to the new one, this guarantees that its token is freed. Change-Id: Icfad0b16286ed58155bdfafdf36ab161440aa485
ayer.cpp
|
455d18d4c26a823bff62ca14771986cca52d3462 |
14-Dec-2010 |
Mathias Agopian <mathias@google.com> |
minor clean-up. SurfaceFlinger doesn't need libpixelflinger.so. Change-Id: I3bdca74351c8e480a05084bc412a96c5f685221d
ndroid.mk
|
bf2c6a6c8f1df40ac94e28b948754bb9739daaca |
11-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3258939] Need snapshot to limit which layers are included Change-Id: Id7351a0e3f53dde99b291cffba553d89fd4d7ca9
urfaceFlinger.cpp
urfaceFlinger.h
|
f345069099a13f0c2dd91f1fa92786643e4becb0 |
09-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3211070] camera preview image is rendered offset from the UI overlay frame somehow this change got lost. Change-Id: I36f6c7ef3f782918042b77e9dc91a4c811d84a40
ayer.cpp
|
86bdb2f918ffd238d6e0d1ae1f95af882f04d6cb |
09-Dec-2010 |
Mathias Agopian <mathias@google.com> |
fix [3260137] Sometimes front-facing camera mirroring is wrong make sure to take the buffer's orientation into account. Change-Id: I9fef89e66368ad2dec1cb8c7b77ac2b3b4858efb
ayer.cpp
|
1293a8eb567fd63c072a6970fa9dcf37d076059f |
09-Dec-2010 |
Mathias Agopian <mathias@google.com> |
More clean-up. Get rid off the "blur" effect in SurfaceFlinger For multiple reason, this effect is not maintainable and was never used due to its abysmal performance. it'll be resurected when it can be implemented efficiently. Change-Id: Id4222c9b86c629275cdec18873ef07be8723b6d2
ndroid.mk
lurFilter.cpp
lurFilter.h
ayerBlur.cpp
ayerBlur.h
urfaceFlinger.cpp
urfaceFlinger.h
|
e0be194c7b8639e5a20b33fea44fb8abc8a540cf |
09-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 74da537f: Merge "[317580] fix issue where the screen wouldn\'t be rotated properly in bypass mode" into gingerbread * commit '74da537f80ba36c1279c04fcb85d89fc38c246a6': [317580] fix issue where the screen wouldn't be rotated properly in bypass mode
|
a5529c8778c2f407f482fc12165aeb76c0f505c2 |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
remove support for PUSH_BUFFER surfaces and overlays the same functionality is now supported through the h/w composer HAL, and YUV support in the GPU. Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ayerBase.cpp
ayerBase.h
ayerBuffer.cpp
ayerBuffer.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/overlays/Android.mk
ests/overlays/overlays.cpp
ests/resize/resize.cpp
ests/surface/surface.cpp
|
1d21a9cafc534c34a2f28c985c4c7aa176d0e67b |
02-Dec-2010 |
Erik Gilling <konkers@android.com> |
surfaceflinger: add support for gralloc dump hooks Change-Id: Ib6f539ed0132b70d040d653c03d52cc04249ac3c
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
urfaceFlinger.cpp
|
5ec99b57c3b6e15a1e19a9888100de76278b7696 |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
should fix build. Change-Id: I7705227ad123c73714af2ecb7ad84f5432a21c1d
ayerBase.h
|
a1aa18fc267a7d2db99b3cbc39907127bcdf6ac6 |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
resolved conflicts for merge of a0f011ff to master Change-Id: I4c17021fc269ce66c98cc345353600eda332f980
|
e24cc7a38dce071267156a9345e9ec3f27890daf |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[317580] fix issue where the screen wouldn't be rotated properly in bypass mode In some situations, the screen transformation would not be applied while in bypass mode. Change-Id: I3d6dd52e4c12b11aae97b54bf8e2322536eee37f
ayer.cpp
ayer.h
urfaceFlinger.cpp
|
b5a00fcb71426492f248ed49a0514a9b8d385065 |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 48f42f8c: am 4153bf3a: Merge "[3171580] don\'t automatically log GraphicBuffer allocation failures" into gingerbread * commit '48f42f8c3fbd33b2f46c6290ff5963dd58938cf9': [3171580] don't automatically log GraphicBuffer allocation failures
|
e4f81090c27d22b418d2cbe874fc28cbcf810167 |
07-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am a2977c38: Merge changes Ie03796ae,Ide3e980a into gingerbread * commit 'a2977c383d363e1e88a5b36230b1fa4c312807d2': [3171580] SurfaceFlinger Bypass mode. (DO NOT MERGE) [3171580] Add transform field to native buffers. (DO NOT MERGE)
|
9669d23caedd9f5f71f3a6f4b589f91958b40f88 |
07-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 05813b0e: Merge changes I244b5469,I32044e91 into gingerbread * commit '05813b0eb92cb1bc79607ee402f14ca1e4b43f6d': [3253328, 3171580] Treat GONE and INVISIBLE views the same when calculating transparent regions [3171580] Fix two typos related to fixed-size buffers
|
372c56e98b93647b7050e518c285057a8a72bc74 |
07-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 4153bf3a: Merge "[3171580] don\'t automatically log GraphicBuffer allocation failures" into gingerbread * commit '4153bf3a259624a2f2dc497b77b225a1fb517abc': [3171580] don't automatically log GraphicBuffer allocation failures
|
22c67843bebd2083053af5992befe7ebd50303a5 |
02-Nov-2010 |
Mathias Agopian <mathias@google.com> |
[3171580] SurfaceFlinger Bypass mode. (DO NOT MERGE) This is a poor's man precursor to the h/w composer HAL. Basically we detect when a window is full screen and in that case we bypass surfaceflinger's composition step, which yields to much improved performance. Change-Id: Ie03796ae81a1c951949b771c9323044b980cb347
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
ayer.cpp
ayer.h
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
733189d408e13b54fd70971b265244367efd0f51 |
03-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3171580] Fix two typos related to fixed-size buffers mFixedSize was never set, this bug was introduced during some "cleanup", in practice this could cause some issues when a fixed-size buffer was used and the window was resized. Layer::drawForSreenShot() had a typo that had no effect. mFixedSize was used to determine if filtering was needed, which was a bit too conservative and created a dependency between filtering and "fixed size" states which should exist. Now we enable filtering based on the size of the buffer vs. the size of the layer. Change-Id: I32044e91b0c944c1b137efdceb3f01dfaa78119d
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
|
678bdd6349344df254cc0c3377a40fd99e216635 |
04-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3171580] don't automatically log GraphicBuffer allocation failures some of these failures are not fatal and even expected in some cases so they should not emit a dump in the log in those cases. Change-Id: Idcfa252e3bfa9d74e27fe4ad8f8623aa01aa9c5e
ayer.cpp
|
040481419473cb9913b632cd8973b1d7065f9c9c |
01-Dec-2010 |
Louis Huemiller <lhuemill@google.com> |
Remove const_cast to layer handle Change-Id: Ica1e089cb56b5f9f46ab87abf735ffe7237fc926
ayer.cpp
|
4ba398df1797fc9e3b5c11b52898bc9e74f76be5 |
12-Nov-2010 |
Jamie Gennis <jgennis@google.com> |
Merge "Implement reducing the buffer count of a Surface."
|
54cc83e8a48c57307cdd40fe4b7e296020490095 |
02-Nov-2010 |
Jamie Gennis <jgennis@google.com> |
Implement reducing the buffer count of a Surface. Change-Id: I7f979c60c06d654aa8265002836277434bc1a64f Bug: 3095167
ayer.cpp
ayer.h
|
37b126a3b274e1930fbbddcdf3ec708d13d01801 |
10-Nov-2010 |
Jamie Gennis <jgennis@google.com> |
Remove a problematic empty update optimization. This change removes an optimization from SurfaceFlinger that skipped composition when it got window updates that had an empty dirty region. This optimization caused problems because it would skip the hwcomposer set call, which could leave the window's previous frame buffer bound to an overlay plane. When the application subsequently dequeued and tried to lock its next buffer (which would be the buffer currently bound to the overlay), the lock call would block until the next hwcomposer set call (which may never happen). Change-Id: I563b626a1d52c1f30eb82489eae0ceb4edc79936 Bug: 3138752
urfaceFlinger.cpp
|
c23902b27fc8f4825217cef720c95c14e900efd8 |
28-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 5c0efef9: am 7d452f69: Merge "really fix [3118445] Transform * Transform does not work as expected" into gingerbread
|
c2dba08cc6c7f1a5dd2d7e6ff741f2e7924fc1b0 |
28-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 7d452f69: Merge "really fix [3118445] Transform * Transform does not work as expected" into gingerbread
|
883dffaa0095ac9ac2be70915f620af9f429dc4b |
26-Oct-2010 |
Mathias Agopian <mathias@google.com> |
really fix [3118445] Transform * Transform does not work as expected Two bugs were counter acting each other. - rotation matrices are on the left-hand side of multiplies - the transform of the overlay is applied before that of the layer Change-Id: Ia79bd368e9b719235c89ecf244ea263f01ce906a
ayerBase.cpp
ayerBuffer.cpp
ransform.cpp
|
d4a36d51021a66c44719dbed1bd43a471ac38657 |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am e1ca532d: am 457bed2b: Merge "fix [3123221] Video sticks playing back upside down following orientation switch" into gingerbread Merge commit 'e1ca532d72cbfacdce794f8bb4d439e609ec9871' * commit 'e1ca532d72cbfacdce794f8bb4d439e609ec9871': fix [3123221] Video sticks playing back upside down following orientation switch
|
bb35a6322e96da0571bbb49b1a4401f3d5e525d9 |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am b4645353: am ce4d36ad: Merge "fix [3118445] Transform * Transform does not work as expected" into gingerbread Merge commit 'b4645353090f1bdd5cc1d4ab98feac7ccf966368' * commit 'b4645353090f1bdd5cc1d4ab98feac7ccf966368': fix [3118445] Transform * Transform does not work as expected
|
a7a8f05d8cdf1f05896f5fea9c43321cd84f4784 |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 457bed2b: Merge "fix [3123221] Video sticks playing back upside down following orientation switch" into gingerbread Merge commit '457bed2bc6561dd67429dde238453fee8602fa9b' into gingerbread-plus-aosp * commit '457bed2bc6561dd67429dde238453fee8602fa9b': fix [3123221] Video sticks playing back upside down following orientation switch
|
46135ee9a3b0b773f78690af831c46b79996ce8f |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am ce4d36ad: Merge "fix [3118445] Transform * Transform does not work as expected" into gingerbread Merge commit 'ce4d36ad729f83253d4c5ec9906148f45cc00f8e' into gingerbread-plus-aosp * commit 'ce4d36ad729f83253d4c5ec9906148f45cc00f8e': fix [3118445] Transform * Transform does not work as expected
|
38e5c8ef89065ee3dfd7721d20df8c061f219168 |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Merge "fix [3123221] Video sticks playing back upside down following orientation switch" into gingerbread
|
d3caac954c3d6f2e4b4d4a5f13a570a2a15f8667 |
25-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix [3123221] Video sticks playing back upside down following orientation switch the overlay wasn't reconfigured when the screen-orientation changed. It was only done when a parameter of the surface itself changed. Change-Id: I0ca0925bf58ded4c91ab89d12cb1fe4d1477c96c
ayerBuffer.cpp
ayerBuffer.h
|
0694d0f3b3d016b9eedda13c447e8e7735a4a177 |
24-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix [3118445] Transform * Transform does not work as expected The problem wasn't in the multiply operator, but rather in the code that built the transform from the HAL bitmask. We now use the multiply operator to build the Transform from the bitmask, which guarantees, it'll always be correct. Also added a simple test for Transform. Change-Id: I09bf3b0e51d92f59d83ea91c4cc94fc2aa0bf227
ransform.cpp
ransform.h
ests/transform/Android.mk
ests/transform/TransformTest.cpp
|
47a79466a72715d57934016a3cad19444dad0642 |
21-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am fb31036f: am 583fefc8: Merge "Use the context_priority extension when present." into gingerbread Merge commit 'fb31036fd844444c395a2ae9c97439eec9f774e4' * commit 'fb31036fd844444c395a2ae9c97439eec9f774e4': Use the context_priority extension when present.
|
db02bde7887c74dd1def274f818d326cde11bd0a |
21-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 583fefc8: Merge "Use the context_priority extension when present." into gingerbread Merge commit '583fefc8dcadecc7fc933513d3569dd9c16c100c' into gingerbread-plus-aosp * commit '583fefc8dcadecc7fc933513d3569dd9c16c100c': Use the context_priority extension when present.
|
3c85e4ad5a14a49fffcd458886cf7519276daed5 |
21-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Merge "Use the context_priority extension when present." into gingerbread
|
0a96e3c31f137fd4e271c1fb2aef9aa0b6e79ce0 |
16-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 9f6d18ca: am 04358138: Merge "[3095807] screen takes a long time to turn on" into gingerbread Merge commit '9f6d18cadf9ac50062063f5f5ff5de7f6895696a' * commit '9f6d18cadf9ac50062063f5f5ff5de7f6895696a': [3095807] screen takes a long time to turn on
|
fb3051b15e15b0f57196e0f2bc6ba8570f7ffe5e |
16-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 7e9a54d4: am d4e03f37: addresses parts of 3096779 and 3097475 Merge commit '7e9a54d460030a871a4f05e61e943c6a694e9ef8' * commit '7e9a54d460030a871a4f05e61e943c6a694e9ef8': addresses parts of 3096779 and 3097475
|
1cc53746aa8f548349385af7134af1135cfd1d5e |
16-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am a8faf91f: am 6d71f6a0: Merge "fix [3095607] Gingerbread screen turn-on animation does not show the last frame" into gingerbread Merge commit 'a8faf91fa558be1235d508e776eb24be4429585c' * commit 'a8faf91fa558be1235d508e776eb24be4429585c': fix [3095607] Gingerbread screen turn-on animation does not show the last frame
|
c9ce8cbe3bc1cd75598ab67081fe8b96199bfd31 |
15-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 3d4a9774: am b0e020ab: Merge "may fix 3097381 and 3097482. don\'t abort on/off if the animation fails" into gingerbread Merge commit '3d4a9774ced0c704da455c5bd9989127e90ba133' * commit '3d4a9774ced0c704da455c5bd9989127e90ba133': may fix 3097381 and 3097482. don't abort on/off if the animation fails
|
e33a35f02576b482a5ac4891a78f6e72fb4c0dea |
15-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 5bfa3a34: am 011b5bcc: Merge "implement part of [3094280] New animation for screen on and screen off add support for screen on animation" into gingerbread Merge commit '5bfa3a34eaef759c3ec4def76f646eb1c0bf997f' * commit '5bfa3a34eaef759c3ec4def76f646eb1c0bf997f': implement part of [3094280] New animation for screen on and screen off
|
65019fdc828f59f59682d9eb90749f4edb9ddda3 |
15-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 04358138: Merge "[3095807] screen takes a long time to turn on" into gingerbread Merge commit '043581382e43acbe29a8a62420bc765f49a9dd90' into gingerbread-plus-aosp * commit '043581382e43acbe29a8a62420bc765f49a9dd90': [3095807] screen takes a long time to turn on
|
a6546e5af4ce0cff01cd13605fc3eb16325feac3 |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
[3095807] screen takes a long time to turn on turn on animation is now ~200 ms (12 frames). Change-Id: I49ca9e8d0afa566349d360b3b6c88f0d55aa6e75
urfaceFlinger.cpp
|
af384f8e3bf56f9bf4f10e5977093cbc41557464 |
15-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am d4e03f37: addresses parts of 3096779 and 3097475 Merge commit 'd4e03f37423bee383d17f7292753a5f67e497a28' into gingerbread-plus-aosp * commit 'd4e03f37423bee383d17f7292753a5f67e497a28': addresses parts of 3096779 and 3097475
|
b9d181f46e18423ca93de595b45f8922ea7aacaf |
15-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 6d71f6a0: Merge "fix [3095607] Gingerbread screen turn-on animation does not show the last frame" into gingerbread Merge commit '6d71f6a0ae9fd81ce25562aee67f841b5d8394cf' into gingerbread-plus-aosp * commit '6d71f6a0ae9fd81ce25562aee67f841b5d8394cf': fix [3095607] Gingerbread screen turn-on animation does not show the last frame
|
abd671a08a41519a7ab3d438a500efe0ef0bfc1d |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
addresses parts of 3096779 and 3097475 3097475: Animation setting should control the screen on animation 3096779: CRT power-on animation can briefly show the top app instead of lockscreen There is now a parameter that controls wether the ON and/or OFF animation are performed. we also always clear the screen to black on power off, to make sure it won't briefly appear on power on. HOWEVER, 3096779 is not 100% fixed in the case where we're doing the animation because there is a race, where SF doesn't wait (b/c it doesn't know) for the framework to have redrawn the lockscreen. Change-Id: Ie0f02c9225fcdf24b1e8907e268eb7da2c5b0a03
urfaceFlinger.cpp
urfaceFlinger.h
|
a310993c83c29b43ea1f80b529b5a5261e97f80a |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am b0e020ab: Merge "may fix 3097381 and 3097482. don\'t abort on/off if the animation fails" into gingerbread Merge commit 'b0e020ab409b725a556f2c5043b08c9bac2c29bf' into gingerbread-plus-aosp * commit 'b0e020ab409b725a556f2c5043b08c9bac2c29bf': may fix 3097381 and 3097482. don't abort on/off if the animation fails
|
a7f0373533e590fdca1400f90e6657ebb2dd5f17 |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix [3095607] Gingerbread screen turn-on animation does not show the last frame always redraw the screen entirely after the power-on animation, because: - the animation may not run (ie: on the emu) - the animation may not contain the video planes - the interpolation may not be perfect and not land exactly on the last frame Change-Id: I9ba40f537b1e94464f8a3ed6f81e7c2f552df51d
urfaceFlinger.cpp
|
015fb3fb41ffe04475ab2b604cc30cc1c031815a |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
may fix 3097381 and 3097482. don't abort on/off if the animation fails now that sf handles more of the screen on/off state, we don't want to abort because/if the animation fails for some reason (which will be the case on the emulator). Change-Id: I239e0a39cf8aff3074647e82db92de4a0bf0e494
urfaceFlinger.cpp
|
503d2d4a08370209dc83330bd00997ba9512f46f |
14-Oct-2010 |
Joe Onorato <joeo@google.com> |
am 9a12a3c8: am ba799098: Merge changes I76513387,I335fb671 into gingerbread Merge commit '9a12a3c8d4bb20042cf69e07d268e3a04ac71f96' * commit '9a12a3c8d4bb20042cf69e07d268e3a04ac71f96': Remove dead code, and make the animation a setting. turn off the electron beam
|
d91595b0004d24d0183fcbc594c693105b6c906b |
14-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 011b5bcc: Merge "implement part of [3094280] New animation for screen on and screen off add support for screen on animation" into gingerbread Merge commit '011b5bcc0355338b7ff906656282a54ffaa04b5a' into gingerbread-plus-aosp * commit '011b5bcc0355338b7ff906656282a54ffaa04b5a': implement part of [3094280] New animation for screen on and screen off
|
9daa5c9b9dd286cbbf5d43f7e45a5e9e4048e855 |
13-Oct-2010 |
Mathias Agopian <mathias@google.com> |
implement part of [3094280] New animation for screen on and screen off add support for screen on animation Change-Id: If50cf52ae04b95b42da7d74cf7fa96d5cb54d238
isplayHardware/DisplayHardwareBase.cpp
urfaceFlinger.cpp
urfaceFlinger.h
|
296b1d77641e6cf4f03e12c62c0d55a9e32b6b67 |
12-Oct-2010 |
Joe Onorato <joeo@google.com> |
am ba799098: Merge changes I76513387,I335fb671 into gingerbread Merge commit 'ba799098608c7be8ff1e18adfa7dc1f452205a7e' into gingerbread-plus-aosp * commit 'ba799098608c7be8ff1e18adfa7dc1f452205a7e': Remove dead code, and make the animation a setting. turn off the electron beam
|
59119e658a12279e8fff508f8773843de2d90917 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
turn off the electron beam Change-Id: I335fb6719f1d5a3f1c6f37a046fd1c2c4ed2bbc6
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
eb8f8980d4c67347d45bfc27cdf52f2c2c636c34 |
12-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 5d477279: am cf6b2765: Merge "fix a bug where FLIP_H would do a 180 rotation" into gingerbread Merge commit '5d477279e6e41c9d61abe66dcded5c57a51e2c78' * commit '5d477279e6e41c9d61abe66dcded5c57a51e2c78': fix a bug where FLIP_H would do a 180 rotation
|
09e5687757296a4d8d2a5e5353b31dc5de14b423 |
12-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 3754d0cc: am d0528b74: Merge "deliver invalidate messages AFTER other messages" into gingerbread Merge commit '3754d0ccc7ba07fd867d3d28e6493e84ce0a139d' * commit '3754d0ccc7ba07fd867d3d28e6493e84ce0a139d': deliver invalidate messages AFTER other messages
|
3b996c96e4cd1057cb6b9531eaf8c01f934d2b2a |
10-Oct-2010 |
Romain Guy <romainguy@google.com> |
Always create OpenGL accelerated windows in RGBA 8888. Bug #3081600 The OpenGL renderer in libhwui uses a single EGL context per process and thus create it with an RGBA 8888 EGL configuration. To ensure that all windows are compatible with this configuration, this change modifies the window manager and SurfaceFlinger. The window manager now checks the window's flags and if the window is hardware accelerated, it forces the window's pixel format to be translucent when creating the surface. The window itself is still marked as opaque if we know that the window will be opaque on screen. This keeps existing optimizations in place. Similarly in SurfaceFlinger, a translucent Surface can now be created with the Surface.OPAQUE flag, indicating SurfaceFlinger that the surface does not require blending, despite its RGBA 8888 configuration. Change-Id: Ic747b6b12564ba064412d842117880fcc199eb7c
ayer.cpp
|
67226814e1b6d1c02079635608444e73ec658837 |
12-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Use the context_priority extension when present. Change-Id: I12eadf1e32d576de5d811fba44afa73263e13eef
ndroid.mk
isplayHardware/DisplayHardware.cpp
|
c6f607dcdd6a3322619d3e3ef4a10d93c8c082f5 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am cf6b2765: Merge "fix a bug where FLIP_H would do a 180 rotation" into gingerbread Merge commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b' into gingerbread-plus-aosp * commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b': fix a bug where FLIP_H would do a 180 rotation
|
20f29b4a2a6caf31352709863abaaee69155bb34 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Merge "fix a bug where FLIP_H would do a 180 rotation" into gingerbread
|
3c2c54c270d8ecefccc9a57b0f5b1d691588a258 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix a bug where FLIP_H would do a 180 rotation Change-Id: Ie2cc4a8543a5625750c8596f87edcb66fcbca31f
ayerBase.cpp
|
2e109a8666b99825ca1d6c5373f16cf237c99f90 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am d0528b74: Merge "deliver invalidate messages AFTER other messages" into gingerbread Merge commit 'd0528b74b6de87c415ea498095e142d52c68875b' into gingerbread-plus-aosp * commit 'd0528b74b6de87c415ea498095e142d52c68875b': deliver invalidate messages AFTER other messages
|
7b0ba1668872eb6336bd305f9893991c84a08462 |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
deliver invalidate messages AFTER other messages because invalidate messages were always handled first, they could prevent other messages to get through entirely. there is no real reason to handle invalidate messages first because the other messages are very uncommon and won't interfer with updates. Change-Id: Ib95cdf35a91407bd2f4d69dd082c5f546e1e0071
essageQueue.cpp
|
8d5ed611214d500f2761b45ce6477b158f0d0aba |
11-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am a7c76d83: Merge "fix a bug where timeouts would only be handled when a message was delivered" into gingerbread Merge commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c' into gingerbread-plus-aosp * commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c': fix a bug where timeouts would only be handled when a message was delivered
|
23a0920339a04c0fcfc3a2840f4e020040c2afbf |
08-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix a bug where timeouts would only be handled when a message was delivered Change-Id: I98c69b129e75e065e61f47e54f0f855d9401b0dc
essageQueue.cpp
|
954fdd27ca1420aadc51c2752072a81a2e9bcb3c |
08-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix a bug where timeouts would only be handled when a message was delivered Change-Id: Id3127b21c1a1a1afab32911a8edbb202360d7c9b
essageQueue.cpp
|
58959343dbdb6157fa5f5463262d4842b8954353 |
07-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Fix a null dereference Change-Id: I3df446b90c1607782778749de7ba0f8c00698c33
isplayHardware/HWComposer.cpp
|
6263c831ec9da9a28ef008897bda7dcb7f775120 |
05-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am 19058877: Merge "refactored screenshot code" into gingerbread Merge commit '19058877df9bf94f197a72855f810f7f6bf8d068' into gingerbread-plus-aosp * commit '19058877df9bf94f197a72855f810f7f6bf8d068': refactored screenshot code
|
df85c455c34a920d22a8e3f7459a1cc615efcd27 |
29-Sep-2010 |
Mathias Agopian <mathias@google.com> |
refactored screenshot code the core screenshot function now can capture the screen at any lower resolution performing bilinear filtering. we also now have some client code to interface with the screenshot service. it's now possible to request a screenshot at a lower resolution. Change-Id: I33689bba98507ab928d0898b21596d0d2fe4b953
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerBuffer.cpp
ayerBuffer.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/screencap/screencap.cpp
|
74c40c0a273dbfd7d10617c4cc1b0c066bfc812e |
29-Sep-2010 |
Mathias Agopian <mathias@google.com> |
refactored screenshot code the core screenshot function now can capture the screen at any lower resolution performing bilinear filtering. we also now have some client code to interface with the screenshot service. it's now possible to request a screenshot at a lower resolution. Change-Id: I5a3b0e431421800e3aad601d9af8f94adffbc71f
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerBuffer.cpp
ayerBuffer.h
urfaceFlinger.cpp
urfaceFlinger.h
ests/screencap/screencap.cpp
|
a3aefeb1c31618dcc897da22d2d2f741104e3fe3 |
25-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am 495ad4f2: am beabe75a: Merge changes I1f7c4535,I741c68a2 into gingerbread Merge commit '495ad4f22096aa172d025c16c25497e7dad8f2bd' * commit '495ad4f22096aa172d025c16c25497e7dad8f2bd': simple test app for screen capture API add support for [1974164] Be able to take a screen shot on the device
|
c814f965de344cab63a99d7db5632c814573111a |
25-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am beabe75a: Merge changes I1f7c4535,I741c68a2 into gingerbread Merge commit 'beabe75a842d521b005999460d3a6361ab32108e' into gingerbread-plus-aosp * commit 'beabe75a842d521b005999460d3a6361ab32108e': simple test app for screen capture API add support for [1974164] Be able to take a screen shot on the device
|
06e7056660d65d4b0bbe1bb2cbf3e779074dbd9f |
25-Sep-2010 |
Mathias Agopian <mathias@google.com> |
simple test app for screen capture API Change-Id: I1f7c453508ccfd4faaa8b1279968a358ce3f1e5a
ests/screencap/Android.mk
ests/screencap/screencap.cpp
|
1b0b30d04304392748a8a4ab5a69e52a19f51b3a |
24-Sep-2010 |
Mathias Agopian <mathias@google.com> |
add support for [1974164] Be able to take a screen shot on the device screenshots are taken using ISurfaceComposer::captureScreen() which returns the size of the screenshot and an IMemoryHeap containing the data. screenshots have limitations: - they will always fail if a secure window is up on screen - require GL_OES_framebuffer_object extension - in some situation, video planes won't been captured Change-Id: I741c68a2d2984fb139039301c3349e6780e2cd58
LExtensions.cpp
LExtensions.h
urfaceFlinger.cpp
urfaceFlinger.h
|
8372785879d329f592f6883620b5a32d80d74691 |
24-Sep-2010 |
Mathias Agopian <mathias@google.com> |
dump HWC state in dumpsys Change-Id: Ifbb38ca1ac9685776250e01c8d02021b35af72cf
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
73d3ba9e50be1014aa21ec4bbdc874be394accb4 |
23-Sep-2010 |
Mathias Agopian <mathias@google.com> |
add a way to toggle the h/w composer at runtime to DISABLE the h/w composer: adb shell service call SurfaceFlinger 1008 i32 1 to ENABLE the h/w composer: adb shell service call SurfaceFlinger 1008 i32 0 the state is dumped in "dumpsys SurfaceFlinger" Change-Id: I23e2242d42c6e3fd5261a83332dd900b189e38ce
urfaceFlinger.cpp
urfaceFlinger.h
|
e44d21a247aac5192b8ef397d433a4aefb6ba53e |
21-Sep-2010 |
Mathias Agopian <mathias@google.com> |
fix [3018216] UI shrinks / stretches while using apps with IME Change-Id: Ie4c5d8a434b4489355ed8c52af96eb931b4d7167
ayer.cpp
|
9c2de1a4b59ee03f1fd3cc542c7b7a307b68e76c |
17-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Merge "Fix a SurfaceFlinger bug."
|
5dda7f7cf23a02fff2e35d7eb6bb7c9f0d620f95 |
17-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Fix a SurfaceFlinger bug. The bug caused SurfaceFlinger to constantly trigger reallocation of buffers that requested a fixed size. Change-Id: Ic993a60e6474e36a344c8b48d541a0d08b8c4faf
ayer.cpp
|
fe0a0af7bdab1e61fdb00f4705ccff5b46c19d8e |
17-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am 793b2293: am 1bcb8b1a: Merge "surfaceflinger / GL extensions cleanup" into gingerbread Merge commit '793b2293797ea930078640c4827d3cbdf449c227' * commit '793b2293797ea930078640c4827d3cbdf449c227': surfaceflinger / GL extensions cleanup
|
c05246ae344f16f3892a1274ef75627772c7c9aa |
17-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am 1bcb8b1a: Merge "surfaceflinger / GL extensions cleanup" into gingerbread Merge commit '1bcb8b1afbfa2fc387a0f7068740f1efbe9a1f69' into gingerbread-plus-aosp * commit '1bcb8b1afbfa2fc387a0f7068740f1efbe9a1f69': surfaceflinger / GL extensions cleanup
|
7f198b6bff54af3c8e8ac32b83ffc6488e773ac1 |
16-Sep-2010 |
Michael I. Gold <gold@nvidia.com> |
surfaceflinger / GL extensions cleanup Add correct enumerants for OES_EGL_image_external to glext.h. SurfaceFlinger now checks for the correct extension name. Change-Id: I2ba2728a01fa2260bd086d2df4316c68f694a9b1
LExtensions.cpp
ayerBlur.cpp
ayerDim.cpp
urfaceFlinger.cpp
extureManager.cpp
|
c479e18db0216f7096fefe85ffa71ab00329aef3 |
15-Sep-2010 |
Mathias Agopian <mathias@google.com> |
resolved conflicts for merge of 48a86240 to master Change-Id: I2305fef9f4dd46183337217d822df3c675b6b6e5
|
5e4cf02dfe0e8dbabb49b49ed38120cac8bbb9a3 |
15-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am b3ffc78f: Merge "Add logging of various important graphics events" into gingerbread Merge commit 'b3ffc78f3432344702e6f5232067ab624083cad2' into gingerbread-plus-aosp * commit 'b3ffc78f3432344702e6f5232067ab624083cad2': Add logging of various important graphics events
|
35b48d10bc9e064201d3d54d2d476314684a7a05 |
14-Sep-2010 |
Mathias Agopian <mathias@google.com> |
Add logging of various important graphics events There are 16 events logged in the event log: SF_APP_DEQUEUE_BEFORE SF_APP_DEQUEUE_AFTER SF_APP_LOCK_BEFORE SF_APP_LOCK_AFTER SF_APP_QUEUE SF_REPAINT SF_COMPOSITION_COMPLETE SF_UNLOCK_CLIENTS SF_SWAP_BUFFERS SF_REPAINT_DONE SF_FB_POST_BEFORE SF_FB_POST_AFTER SF_FB_DEQUEUE_BEFORE SF_FB_DEQUEUE_AFTER SF_FB_LOCK_BEFORE SF_FB_LOCK_AFTER all events log the buffer conserned and a timestamp in microseconds. by default the logging is not enabled, to turn it on: adb shell service call SurfaceFlinger 1006 i31 1 adb shell setprop debug.graphic_log 1 The effect is immediate in SurfaceFlinger, but applications need to be restarted. Change-Id: Ifc2e31f7aed072d9a7dede20ff2ce59231edbec1
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
urfaceFlinger.cpp
|
f5f2712854599b4970643c6000fe6ae950a08ba9 |
09-Sep-2010 |
Antti Hatala <ahatala@nvidia.com> |
surfaceflinger: give hwcomposer a chance to release buffers Change-Id: I605fa779702022865dd58df3b36f37c2644ade36
isplayHardware/DisplayHardware.cpp
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
|
586a0deb76012c4347298c11df460631853b67f8 |
09-Sep-2010 |
Antti Hatala <ahatala@nvidia.com> |
surfaceflinger: composite HWC_SKIP_LAYER layers Change-Id: I363ede63287ae903d66d0d419343f4ecd81bcc00
urfaceFlinger.cpp
|
8392b504bdf63ac7820c79c7217a89f2b2411bd0 |
08-Sep-2010 |
Antti Hatala <ahatala@nvidia.com> |
surfaceflinger: unlock clients only after flip Change-Id: I039291a36f05bbaa02b29325d4012114abd784b9
urfaceFlinger.cpp
|
413f750501c4392e096c7bed27af0764cbadeb94 |
26-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 6d4346ce: am 4cffbb47: Merge "fix [2946787] Screen flicker on low resolution setting in camcorder." into gingerbread Merge commit '6d4346ce35a521d67f45d7c9658c450c0fc461d2' * commit '6d4346ce35a521d67f45d7c9658c450c0fc461d2': fix [2946787] Screen flicker on low resolution setting in camcorder.
|
9cca403ed0da6ac601a664e0731fad50843c0c2c |
26-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 4cffbb47: Merge "fix [2946787] Screen flicker on low resolution setting in camcorder." into gingerbread Merge commit '4cffbb47a28faa594c2217d1e84f9382e0b57cc4' into gingerbread-plus-aosp * commit '4cffbb47a28faa594c2217d1e84f9382e0b57cc4': fix [2946787] Screen flicker on low resolution setting in camcorder.
|
eff062c49e858d0dd94a1e57f6115bc84dba103e |
25-Aug-2010 |
Mathias Agopian <mathias@google.com> |
fix [2946787] Screen flicker on low resolution setting in camcorder. Change-Id: I7e86f2b6d85dcae8dd212890b978fa6ac7de6893
ayer.cpp
|
e34a3d1a294e1d83caa410f3006e474bef787e1a |
25-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 46820412: am 8eb16af2: Merge "don\'t try to lock a buffer that wasn\'t allocated with SW usage bits" into gingerbread Merge commit '468204124e95bbf74ae8cc000318ade29e311be6' * commit '468204124e95bbf74ae8cc000318ade29e311be6': don't try to lock a buffer that wasn't allocated with SW usage bits
|
2091772e7ce8ce5b7ff1ddb9921e60cbaa6bd5f0 |
25-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 8eb16af2: Merge "don\'t try to lock a buffer that wasn\'t allocated with SW usage bits" into gingerbread Merge commit '8eb16af29303cda190133a1d220b9ecd9341e261' into gingerbread-plus-aosp * commit '8eb16af29303cda190133a1d220b9ecd9341e261': don't try to lock a buffer that wasn't allocated with SW usage bits
|
f1b38247d4d9c2ddc7315a72b609a95e0ed8050f |
21-Aug-2010 |
Mathias Agopian <mathias@google.com> |
don't try to lock a buffer that wasn't allocated with SW usage bits Change-Id: Iabbcec1bfa30dc47d45ece699dd178653f1b675b
ayer.cpp
|
4ad298c12c43563789fd2213428347caf2f74c64 |
25-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am bc4389ed: am 8395b462: Merge "fix [2931513] Add support for setting the orientation of an ANativeWindow" into gingerbread Merge commit 'bc4389edfbb5777aec1a9af7863b2ca3ade2fa64' * commit 'bc4389edfbb5777aec1a9af7863b2ca3ade2fa64': fix [2931513] Add support for setting the orientation of an ANativeWindow
|
95acdcc7de8d99bf40d11c6f297415787bb32973 |
25-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 8395b462: Merge "fix [2931513] Add support for setting the orientation of an ANativeWindow" into gingerbread Merge commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc' into gingerbread-plus-aosp * commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc': fix [2931513] Add support for setting the orientation of an ANativeWindow
|
b661d66013b9803c50dc78ca0247ac39caef443a |
20-Aug-2010 |
Mathias Agopian <mathias@google.com> |
fix [2931513] Add support for setting the orientation of an ANativeWindow Also implement support for cropping. Change-Id: Iba5888dd242bf2feaac9e9ce26e404c1f404c280
ayer.cpp
ayerBase.cpp
ayerBase.h
ayerBlur.cpp
ayerBuffer.cpp
extureManager.h
|
89c2dd2cc27ead77da131fe27810c99a11a92ad7 |
11-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Change the framework to use the new camera preview path. This change makes the camera HAL interface take an ANativeWindow interface from which all the camera preview buffers will be allocated. The framework code running in application processes now passes a Surface object rather than an ISurface to the camera server via Binder when setting the preview surface. The camera server then forwards that Surface object (which implements the ANativeWindow interface) to the camera HAL, which uses it to communicate with SurfaceFlinger to allocate the camera preview buffers. Change-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f
urfaceFlinger.cpp
|
3f45e44adf9d76c7b76d33aec4c6e93f794d470d |
23-Aug-2010 |
Andreas Huber <andih@google.com> |
Merge "Squashed commit of the following:"
|
8b42e8a5d87dcdc8ea31368ab88de49b72ab5432 |
16-Aug-2010 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 35cc68814a9537c31fde146e171e7b0bbdfe211e Author: Andreas Huber <andih@google.com> Date: Mon Aug 16 08:48:42 2010 -0700 Only enable support for yuv to yuv conversion on passion, where it's available, use the slower yuv->rgb565 path everywhere else. commit d8ac5a8814103e60d11d2acf61997fc31a1dc58d Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 13:56:44 2010 -0700 The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise. commit 684972074b74318bdcb826ed9b5b0864d2d2e273 Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 09:34:35 2010 -0700 A first shot at supporting the new rendering APIs. Change-Id: Iea9b32856da46950501f1a700f616b5feac710fd
ndroid.mk
urfaceFlinger.cpp
|
f84f146159922eb1f5d9bec7ec9a71cda1e866b1 |
21-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am a90a1e55: am 545eab8a: Merge "remove unused pixel format" into gingerbread Merge commit 'a90a1e55c60604b930eecff03fe25429205ec7df' * commit 'a90a1e55c60604b930eecff03fe25429205ec7df': remove unused pixel format
|
8258339e47e827a3a26a4b54b0015b2fe6a01f8f |
19-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 545eab8a: Merge "remove unused pixel format" into gingerbread Merge commit '545eab8ae80b070177cc442931eadc8cd980de26' into gingerbread-plus-aosp * commit '545eab8ae80b070177cc442931eadc8cd980de26': remove unused pixel format
|
c04cffd5703607f31356c26016b6e3ec971f6511 |
19-Aug-2010 |
Mathias Agopian <mathias@google.com> |
remove unused pixel format Change-Id: I55bc3cc41385743c07f7e4de06335c922f746f73
extureManager.cpp
|
1339581c921eea51e885a8c5c237e66d3904bc51 |
18-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 26bcc7b4: Merge "revert hwcomposer HAL changes. DO NOT MERGE." into gingerbread Merge commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03' into gingerbread-plus-aosp * commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03': revert hwcomposer HAL changes. DO NOT MERGE.
|
000ca8fa9a1a92aa2f132ba41d11ece6d01cdadd |
18-Aug-2010 |
Mathias Agopian <mathias@google.com> |
revert hwcomposer HAL changes. DO NOT MERGE. This reverts commit: 94364b91a2894bf037b8beb027132fbb812e1434 f8e705dea48f77f1c2532fdbadd4997dd1851af0 b59beb5ca68d0228f60dda60d85e2d0226b33215 e0d5f5bcf5a8b26f4ad75f549cbf380b2c9faf20
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
3c7a766c66456476c774a627369e7f031660f06e |
14-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 6a73368b: Merge "fix a typo that prevented glTexImage2D codepath to work" into gingerbread Merge commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89' into gingerbread-plus-aosp * commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89': fix a typo that prevented glTexImage2D codepath to work
|
998831fbc3fc82beb0c490ee49d8748bbbb888e9 |
14-Aug-2010 |
Mathias Agopian <mathias@google.com> |
Merge "fix a typo that prevented glTexImage2D codepath to work" into gingerbread
|
f1c468e48160208afe4919f57de464369cd3cafc |
14-Aug-2010 |
Mathias Agopian <mathias@google.com> |
fix a typo that prevented glTexImage2D codepath to work Change-Id: I36a3bf9d1d2eacd9b14e00b0a6c53bf88bba381c
extureManager.cpp
|
38af31e3e25a16295caec8dea205d10075912662 |
13-Aug-2010 |
Erik Gilling <konkers@android.com> |
am 94364b91: surfaceflinger: don\'t check HWComposer numLayers unless one exists Merge commit '94364b91a2894bf037b8beb027132fbb812e1434' into gingerbread-plus-aosp * commit '94364b91a2894bf037b8beb027132fbb812e1434': surfaceflinger: don't check HWComposer numLayers unless one exists
|
ae957658688ce174a8d58434b4567d022c22a6cf |
13-Aug-2010 |
Erik Gilling <konkers@android.com> |
surfaceflinger: don't check HWComposer numLayers unless one exists Change-Id: I4b83f7bf7ba1318c70054117f14e759fe0ad105c
urfaceFlinger.cpp
|
5e9615eaff388e02e5b54c35796cc741e0652795 |
13-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am b7d1be01: Merge "Fix a couple issues with the new hwcomposer HAL" into gingerbread Merge commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732' into gingerbread-plus-aosp * commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732': Fix a couple issues with the new hwcomposer HAL
|
45721773e1a68e96da4b6cc04cef276bae7ca3e9 |
13-Aug-2010 |
Mathias Agopian <mathias@google.com> |
Fix a couple issues with the new hwcomposer HAL - we now clear the framebuffer upon request from the HAL - the HAL list size could get out of sync with reality - there was also an issue where sometime we could run past the list Change-Id: Ic3a34314aed24181f2d8cc787096af83c046ef27
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
urfaceFlinger.cpp
|
ea6dbaf3029783fba305fe6323c504accc3c2fd7 |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 65f2490e: Merge "should fix sim build, hopefully" into gingerbread Merge commit '65f2490e1baa6eac5905cbc638e69581ebcd8dee' into gingerbread-plus-aosp * commit '65f2490e1baa6eac5905cbc638e69581ebcd8dee': should fix sim build, hopefully
|
f1352df47fe20aed23c216a78923c7d248f2bb91 |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
should fix sim build, hopefully Change-Id: I5390bd34dcca36fef43b5169386fff1b04cc842b
isplayHardware/HWComposer.cpp
|
8ea0bbd9b06ec0ca8c9a4c80a9f845cca5331947 |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 90dc48b1: Merge "call into hwcomposer HAL when present" into gingerbread Merge commit '90dc48b17f673b7e334e3254ea633450f994226c' into gingerbread-plus-aosp * commit '90dc48b17f673b7e334e3254ea633450f994226c': call into hwcomposer HAL when present
|
127fbb7943e25e8b4c19fcb0cc3a4ae8de67a42d |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 24d7050c: Merge "don\'t handle the transparent region of a layer in draw()" into gingerbread Merge commit '24d7050ca605804efd5fde03f0d0d8d1d052c247' into gingerbread-plus-aosp * commit '24d7050ca605804efd5fde03f0d0d8d1d052c247': don't handle the transparent region of a layer in draw()
|
c1ee0bea391fedd41e6d4871d623b81dc456f2ee |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 8e7515d9: Merge "get rid of our LayerVector implementation" into gingerbread Merge commit '8e7515d9c938f5addd08d97bccfccfa976e76c11' into gingerbread-plus-aosp * commit '8e7515d9c938f5addd08d97bccfccfa976e76c11': get rid of our LayerVector implementation
|
820863e7749c705f4ae4089e8b77eda022f6c2f6 |
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
am 025822a0: Merge "keep a list of visible sorted surfaces" into gingerbread Merge commit '025822a03a09337ec382e708c5a798fe805109ed' into gingerbread-plus-aosp * commit '025822a03a09337ec382e708c5a798fe805109ed': keep a list of visible sorted surfaces
|
a350ff98692b3a50cad5cc93f9f83221242ca86a |
11-Aug-2010 |
Mathias Agopian <mathias@google.com> |
call into hwcomposer HAL when present Change-Id: I70f31c69a9436a43860e78977442863ecba6d27b
ndroid.mk
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/HWComposer.cpp
isplayHardware/HWComposer.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
bc7e31a84b936a5a9ac295db56f0836c50c1ac7f |
11-Aug-2010 |
Mathias Agopian <mathias@google.com> |
don't handle the transparent region of a layer in draw() this is already taken into consideration in computeVisibleRegion and therefore not needed at draw time. Change-Id: I3fc7336d22f1147dfcd3a20fd71bf79b946d971f
ayerBase.cpp
|
f6679fc6f70939643901f29a9a69e40c603e6e5f |
11-Aug-2010 |
Mathias Agopian <mathias@google.com> |
get rid of our LayerVector implementation we now use SortedVector<> with a special compare implementation. Change-Id: I910459cf3b3c8993b55ad0786a8c348369262de5
ayerBase.cpp
ayerBase.h
urfaceFlinger.cpp
urfaceFlinger.h
|
4da751999358fffa4cefc4c8046dab72045925f6 |
11-Aug-2010 |
Mathias Agopian <mathias@google.com> |
keep a list of visible sorted surfaces Change-Id: Ib815eeff894f8a3b1e79fbbf8186d5d91bb60285
urfaceFlinger.cpp
urfaceFlinger.h
|
4952ac0498ef1bf1d61ff9a44e413cdf986c6457 |
11-Aug-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am bc881e66: Merge "frameworks/base: Swap width and height of temporary buffer only with orientation change" Merge commit 'bc881e66d15181494fdd5d0ece83e20ef325453b' into gingerbread-plus-aosp * commit 'bc881e66d15181494fdd5d0ece83e20ef325453b': frameworks/base: Swap width and height of temporary buffer only with
|
ad1c5cf963e85d2efe7b34c07e076dbf6b6ab7d0 |
06-Aug-2010 |
Omprakash Dhyade <odhyade@codeaurora.org> |
frameworks/base: Swap width and height of temporary buffer only with orientation change Current code swaps the width and height by assuming that aspect ratio of the buffer width and height will be same as that of the layout clip width and height. That is not always true. Change the check to orientation change. Change-Id: Ie387f3a7369025427484e4173cbde7a08df2b9d7
ayerBuffer.cpp
|
208cb0772429b9ac800010829ecc7b854bdc2d24 |
28-Jul-2010 |
Mathias Agopian <mathias@google.com> |
fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once. this situation happened when the last buffer needed to be resized (or allocated, the first time). the assumption was that the buffer was in use by SF itself as the current buffer (obviously, this assumption made no sense when the buffer had never been allocated, btw). the system would wait until some other buffer became the "front" buffer. we fix this problem by entirely removing the requirement that the buffer being resized cannot be the front buffer. instead, we just allocate a new buffer and replace the front buffer by the new one. the downside is that this uses more memory (an extra buffer) for a brief amount of time while the old buffer is being reallocated and before it has actually been replaced. Change-Id: I022e4621209474ceb1c671b23deb4188eaaa7285
ayer.cpp
ests/surface/Android.mk
ests/surface/surface.cpp
|
be48137beb68893870c26b7f8c59eac5d0bf517a |
23-Jul-2010 |
Mathias Agopian <mathias@google.com> |
move native services under services/ moved surfaceflinger, audioflinger, cameraservice all native services should now reside in this location. Change-Id: Icd7336f7289db35df9c8c1857a5122bb8a6f1c86
ndroid.mk
arrier.h
lurFilter.cpp
lurFilter.h
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerBlur.cpp
ayerBlur.h
ayerBuffer.cpp
ayerBuffer.h
ayerDim.cpp
ayerDim.h
ODULE_LICENSE_APACHE2
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceFlinger.h
okenizer.cpp
okenizer.h
ransform.cpp
ransform.h
lz.cpp
lz.h
ests/Android.mk
ests/overlays/Android.mk
ests/overlays/overlays.cpp
ests/resize/Android.mk
ests/resize/resize.cpp
|
a1e6bc864fb821c1b470b7aad9b75c441f54eeb4 |
15-Jul-2010 |
Mathias Agopian <mathias@google.com> |
added BinderService<> template to help creating native binder services Change-Id: Id980899d2647b56479f8a27c89eaa949f9209dfe
urfaceFlinger.cpp
urfaceFlinger.h
|
81bac09fa6b01dd1495644d9c825c3666762fced |
15-Jul-2010 |
Mathias Agopian <mathias@google.com> |
move native services under services/ moved surfaceflinger, audioflinger, cameraservice all native services should now reside in this location. Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
ndroid.mk
arrier.h
lurFilter.cpp
lurFilter.h
isplayHardware/DisplayHardware.cpp
isplayHardware/DisplayHardware.h
isplayHardware/DisplayHardwareBase.cpp
isplayHardware/DisplayHardwareBase.h
LExtensions.cpp
LExtensions.h
ayer.cpp
ayer.h
ayerBase.cpp
ayerBase.h
ayerBlur.cpp
ayerBlur.h
ayerBuffer.cpp
ayerBuffer.h
ayerDim.cpp
ayerDim.h
ODULE_LICENSE_APACHE2
essageQueue.cpp
essageQueue.h
urfaceFlinger.cpp
urfaceFlinger.h
extureManager.cpp
extureManager.h
ransform.cpp
ransform.h
lz.cpp
lz.h
ests/Android.mk
ests/overlays/Android.mk
ests/overlays/overlays.cpp
ests/resize/Android.mk
ests/resize/resize.cpp
|