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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
cb55857bbde34a06c19dde3db5064d1717a0173e |
|
05-Oct-2012 |
Mathias Agopian <mathias@google.com> |
fix dumpsys Layer name when using multiple displays Bug: 7288401 Change-Id: I14beeef58fac5270cef3b611e18c163060efe6c3
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
9e2463e71796964cfaa06bf09a880875ac3537bc |
|
22-Sep-2012 |
Mathias Agopian <mathias@google.com> |
add/remove displays properly on hotplug events Bug: 7191563 Change-Id: I8f0fbf3b29658c9479443141798e6f288a1f2d52
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
b4d18ed34e3513f3a14ea0876c7e330bee72a529 |
|
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix an issue where hotplug events were not dispatched Change-Id: I527eec77f338cd6f1a9021aa4c9d384dbddd6d2a
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
38e623bc5c2d7224ebd5b82efaea401bc8e5367a |
|
21-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix a typo preventing pre hwc-1.1 devices from booting Change-Id: Icf01254689633d04967872749ac947a671e47ed8
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
f5a33928349bebc8eebc9f466618997e98c24e68 |
|
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
we now correctly set-up connected screens during boot Change-Id: Ie8b1a3b97ad1821cc970e43abe96c8cec7135b66
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
148994e5f33ce240ff24ceb5bc0500b7f2001959 |
|
20-Sep-2012 |
Mathias Agopian <mathias@google.com> |
We now report hotplug events to the framework Change-Id: I2d6b7787d39e5929485a551e4982498c5053c211
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
6ab93290aeed63f139b0e77819ea889bbce9ec8b |
|
18-Sep-2012 |
Mathias Agopian <mathias@google.com> |
suppress superfluous log Change-Id: I838f2de4cf99e885833c4f42e2a69d6e3bb8eea5
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
d3d35f18345c3ef93217313a583ace473b5a47ad |
|
18-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Check that HWC exists before trying to use it Bug: 7185810 Change-Id: I1271d6ba397f3abf0ef166b8d03b9b26b72e28d7
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
da27af9832a0170f1fc40ef3f21371c4d30d21b3 |
|
14-Sep-2012 |
Mathias Agopian <mathias@google.com> |
add support hwc 1.1 Bug: 7124069 Change-Id: I53d705105c4ad8954d3f50ee4f4c8b7ec936b871
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
db27621e22559a1b16414f890677ef04242fbc3b |
|
07-Sep-2012 |
Jesse Hall <jessehall@google.com> |
Initialize new HWC 1.2 fields Also rename resolution* to width/height. Change-Id: Ia5f0c50d3f0a349160f314a3257c3b985e13ef1d
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
babba1868773eba5edf8a8e335b8e109a32292e0 |
|
12-Sep-2012 |
Andy McFadden <fadden@android.com> |
Fix emulator Emulator has no HWC. Change-Id: I7810b27034f6772823142e5bf877681db1c8ee49
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
1bd20e0f9ecd27cc5ad2bdf08b01837ecc10c357 |
|
29-Aug-2012 |
Jesse Hall <jessehall@google.com> |
HWC 1.1: hook up hotplug event, use new display config queries Change-Id: I2fd359e5fc7e1948072c6bc6b6fe47ea5e8025c1
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
9eb1eb5bb55740982ceae9966fc536824edc302a |
|
29-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Handle new device api version encoding Change-Id: I3d36058bd5d31c23b3cc4a7eb5aa033b6f3c1955
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
f435863467ab407f2a482604beed5fa6f0144c62 |
|
23-Aug-2012 |
Mathias Agopian <mathias@google.com> |
teach HWC about multiple displays Change-Id: I5e72a83d419a729835cb0e1ec45557b4d3fb56b1
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
30bcc61431d8e3bef779472dd52a7b156dcaba09 |
|
23-Aug-2012 |
Mathias Agopian <mathias@google.com> |
remove support for HWC < 1.0 Change-Id: If7e676a6e3524afeb9af3875125d2131d95db38b
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
bbd164a3c790a0649dffd2f015e6f47692c72e1c |
|
21-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Update for cleanups in hwc interface Change-Id: I363fd8b085167a1af6c14b68012bda5c62bfe59f
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
8f971ff6661c875e7adb3f14731e1579c3c80c62 |
|
22-Aug-2012 |
Jesse Hall <jessehall@google.com> |
Pass the correct number of displays based on HWC version Change-Id: I27372f5d3102ad56f6d67722d631ae18d37f8330
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
8b736f138cfd9b239a2c7073347a13c489534ae1 |
|
14-Aug-2012 |
Mathias Agopian <mathias@google.com> |
xdpi / ydpi were reported as 0 Bug: 6975723 Change-Id: Ia7fa37ec11e2308804f5034959a37e508d292d31
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
b685c542836b93c99cd85053e07696406ea37adb |
|
31-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Changes to support multi-display HWC Change-Id: I07efff54f2980dcb013935747b03e099b8f1181b
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
03e407270c7ad76632f982c886d0776bed9e9b4c |
|
27-Apr-2012 |
Mathias Agopian <mathias@google.com> |
set vsync power hint Change-Id: I28c2faf9ff584df3e74392712971cbcf75eb9e98
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
22ffb117b0c2a906bd04aef9738a52223cdd1dce |
|
11-Apr-2012 |
Mathias Agopian <mathias@google.com> |
make sure to disable VSYNC while screen is off Change-Id: If1894c43b0a39a2851e1280a35ae77bccd6d9abd
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
e2c4f4ec23b735dd2a03f4ea8b08b288a1bb04e8 |
|
11-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Added vsync debugging information in dumpsys log Change-Id: I20ef05a73d89caaf6a70dc9ca25ada6e6a1f6ff9
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
3a77871383bc1a03cc866686d81628493d14de7c |
|
09-Apr-2012 |
Mathias Agopian <mathias@google.com> |
start VSYNC thread when HWC doesn't handle it Change-Id: I853a822ea9ec13870ae25af55a89ad9a8cc3936a
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
2965b26022f95051f65b09d7eac47cbe923855c9 |
|
09-Apr-2012 |
Mathias Agopian <mathias@google.com> |
VSYNC handling cleanup Change-Id: I1376bf864c4e03c11fb6d1333a8b7cfdda08c9e4
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
31d2843b45ebdb69ec3355111b7567363fd2a6b7 |
|
04-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Add HWC vsync hook. Currently unused. Change-Id: I849d56f375813a044c5e2d0b25f791476a60fa01
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
aebac5f34a098f733f887c993bd617a393e10db8 |
|
30-Sep-2011 |
Mathias Agopian <mathias@google.com> |
improve hwc log output we now print the handle of each buffer Change-Id: I70884ae458a9dcf10cfc403258d48eaa4618b7f4
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
fc60b94db9081adb4835bd44eacdd0573fc4d644 |
|
23-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix dumpsys wording for h/w composer Change-Id: Iaa1094964f2fb83da491e23b9309f7690079c17e
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
fb4d5d5726c172adbe62341d99a2148685a98379 |
|
21-Sep-2011 |
Mathias Agopian <mathias@google.com> |
improve hwc dumpsys we now log the buffer's format Change-Id: I9d3ad8018e884240a153de3baefb6331cb014d0f
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
22da60c3e64cd57535cbba063c07127814a2b52f |
|
09-Sep-2011 |
Mathias Agopian <mathias@google.com> |
Improve SF dumpsys output wrt HWC Change-Id: Ibdb7930fa3b521bfd3f44750ed98cfd75f9a01fe
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
1d21a9cafc534c34a2f28c985c4c7aa176d0e67b |
|
02-Dec-2010 |
Erik Gilling <konkers@android.com> |
surfaceflinger: add support for gralloc dump hooks Change-Id: Ib6f539ed0132b70d040d653c03d52cc04249ac3c
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
58959343dbdb6157fa5f5463262d4842b8954353 |
|
07-Oct-2010 |
Mathias Agopian <mathias@google.com> |
Fix a null dereference Change-Id: I3df446b90c1607782778749de7ba0f8c00698c33
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
8372785879d329f592f6883620b5a32d80d74691 |
|
24-Sep-2010 |
Mathias Agopian <mathias@google.com> |
dump HWC state in dumpsys Change-Id: Ifbb38ca1ac9685776250e01c8d02021b35af72cf
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
f5f2712854599b4970643c6000fe6ae950a08ba9 |
|
09-Sep-2010 |
Antti Hatala <ahatala@nvidia.com> |
surfaceflinger: give hwcomposer a chance to release buffers Change-Id: I605fa779702022865dd58df3b36f37c2644ade36
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
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
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
f1352df47fe20aed23c216a78923c7d248f2bb91 |
|
12-Aug-2010 |
Mathias Agopian <mathias@google.com> |
should fix sim build, hopefully Change-Id: I5390bd34dcca36fef43b5169386fff1b04cc842b
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|
a350ff98692b3a50cad5cc93f9f83221242ca86a |
|
11-Aug-2010 |
Mathias Agopian <mathias@google.com> |
call into hwcomposer HAL when present Change-Id: I70f31c69a9436a43860e78977442863ecba6d27b
/frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp
|