OSDN Git Service
Mathias Agopian [Mon, 16 Apr 2012 22:59:59 +0000 (15:59 -0700)]
Merge "get rid off preserve backbuffer optimization in SF"
Mathias Agopian [Mon, 16 Apr 2012 22:59:39 +0000 (15:59 -0700)]
Merge "s/w rendered apps can now use n-buffering (n>2)"
Mathias Agopian [Mon, 16 Apr 2012 06:34:59 +0000 (23:34 -0700)]
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
Mathias Agopian [Mon, 16 Apr 2012 07:08:26 +0000 (00:08 -0700)]
make sure to pass the transform-hint on ANW.connect
this optimization was probably lost during ST refactoring.
Change-Id: I845978c4b718cb91941d15b30484837f19714abe
Mathias Agopian [Fri, 13 Apr 2012 23:21:06 +0000 (16:21 -0700)]
Merge "make sure to repaint the screen when screen turns on"
Mathias Agopian [Fri, 13 Apr 2012 23:18:55 +0000 (16:18 -0700)]
make sure to repaint the screen when screen turns on
Bug:
6336168
Change-Id: Ic6f11b6bf6c3d849f5cb6ac95961d10d7f88e4ec
Mathias Agopian [Thu, 12 Apr 2012 23:32:37 +0000 (16:32 -0700)]
s/w rendered apps can now use n-buffering (n>2)
Bug:
6311881
Change-Id: I6e52e281e8d432430aad011f6d9dcf35d7b4ac7d
Martijn Coenen [Fri, 13 Apr 2012 04:23:28 +0000 (21:23 -0700)]
Move com.nxp.mifare to frameworks/native.
Change-Id: I4dbec41cbf062334af8d66780859736f0ee5dab3
Mathias Agopian [Fri, 13 Apr 2012 03:43:16 +0000 (20:43 -0700)]
don't wake-up eventthread every 16ms if there are no vsync requests
Bug:
6332534
Change-Id: Idf79ad913770c6180969f6c95a9b125fff580231
Mathias Agopian [Fri, 13 Apr 2012 02:36:42 +0000 (19:36 -0700)]
fix a typo causing pre-rotation to never work
Change-Id: I8d698ec52d53ef1a553b887c7329413e1f49cc72
Daniel Lam [Tue, 3 Apr 2012 22:54:58 +0000 (15:54 -0700)]
Enabled cropping support in SurfaceTexture
SurfaceTexture will modify the crop rect so it matches
the desired output aspect ratio when the scaling
mode is NATIVE_WINDOW_SCALING_MODE_CROP. Added a test
for this new scaling mode.
Change-Id: I60f24dcbc294b65cd10a393d9e27d40f07d27bb6
Ramanan Rajeswaran [Thu, 12 Apr 2012 20:11:23 +0000 (13:11 -0700)]
add com.android.nfc_extras to native/ for pdk.
Change-Id: Ife40ac33241878814f5d9e027e43cd176c57fb56
Mathias Agopian [Thu, 12 Apr 2012 03:45:32 +0000 (20:45 -0700)]
Merge "Revert "handle surfaces posts independently from composition""
Mathias Agopian [Thu, 12 Apr 2012 03:43:19 +0000 (20:43 -0700)]
Revert "handle surfaces posts independently from composition"
This reverts commit
562f4b2c1e555b853997113bb54b21303d642bc6.
Change-Id: I96efe11c2f0494ed2d57fc580e49c598d913830e
Jamie Gennis [Thu, 12 Apr 2012 00:27:12 +0000 (17:27 -0700)]
SurfaceTexture: work around a compiler bug
This change works around a compiler bug with the GCC 4.6 toolchain.
Bug:
6292211
Change-Id: I004c4750d92a29f193a37d8e605a28fdc3b7f076
Jamie Gennis [Thu, 12 Apr 2012 00:20:03 +0000 (17:20 -0700)]
SurfaceTexture: add a test for user sizes & prerotation
This change adds 3 tests for:
- User-overridden buffer size
- Transform hint
- User-overridden buffer size with transform hint
Change-Id: Ib15ea354685e436822c506099613b2bffa7b68c9
Michael I. Gold [Tue, 10 Apr 2012 02:46:29 +0000 (19:46 -0700)]
SurfaceTextureClient: support for application buffer dimensions
Add a new API native_window_set_buffers_user_dimensions to allow native
applications to override the native window size for the default buffer size.
This has lower precedence than the existing
native_window_set_buffers_dimensions and allows the two to co-exist.
Change-Id: Ie73590e1c94ef0dadbce500bd0941dfabbcace3c
Mathias Agopian [Sun, 25 Mar 2012 00:47:24 +0000 (17:47 -0700)]
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
Mathias Agopian [Thu, 12 Apr 2012 01:13:55 +0000 (18:13 -0700)]
Merge "make sure to disable VSYNC while screen is off"
Mathias Agopian [Wed, 11 Apr 2012 22:35:21 +0000 (15:35 -0700)]
Merge "rework screen on/off code"
Mathias Agopian [Wed, 11 Apr 2012 04:04:02 +0000 (21:04 -0700)]
make sure to disable VSYNC while screen is off
Change-Id: If1894c43b0a39a2851e1280a35ae77bccd6d9abd
Jeff Sharkey [Wed, 11 Apr 2012 19:31:43 +0000 (12:31 -0700)]
Merge "Add sdcard_r group to dumpstate."
Jeff Sharkey [Wed, 11 Apr 2012 19:25:47 +0000 (12:25 -0700)]
Add sdcard_r group to dumpstate.
Bug:
6321962
Change-Id: I318cd88493396f3d8adb5d4d0fc7a12ee40ba737
Mathias Agopian [Wed, 11 Apr 2012 05:09:54 +0000 (22:09 -0700)]
rework screen on/off code
Change-Id: I13f71e850592a588bbd4805b1830c503bd4decb4
Mathias Agopian [Wed, 11 Apr 2012 01:25:31 +0000 (18:25 -0700)]
Added vsync debugging information in dumpsys log
Change-Id: I20ef05a73d89caaf6a70dc9ca25ada6e6a1f6ff9
Mathias Agopian [Mon, 9 Apr 2012 23:14:01 +0000 (16:14 -0700)]
use in/out structures for queueBuffer() IPC
Change-Id: Ie125df2444b62a9a2200586a717dca268852afc9
Mathias Agopian [Wed, 11 Apr 2012 01:53:50 +0000 (18:53 -0700)]
Merge "BufferQueue returns proper code on acquire"
Daniel Lam [Tue, 10 Apr 2012 05:51:52 +0000 (22:51 -0700)]
BufferQueue returns proper code on acquire
Also removed unnecessary debug messages from
SurfaceTextureClient.
Change-Id: I291897a44170142f9d42a007b008823fad4683e0
Jesse Hall [Thu, 5 Apr 2012 22:53:28 +0000 (15:53 -0700)]
Hibernate the EGL implementation when idle
If the EGL implementation supports the EGL_IMG_hibernate_process
extension, use it to hibernate (and hopefully release memory or other
resources) when the process isn't actively using EGL or OpenGL ES. The
idleness heuristic used in this change is:
(a) Wake up when entering any EGL API call, and remain awake for the
duration of the call.
(b) Do not hibernate when any window surface exists; this means the
application is very likely in the foreground.
(c) Do not hibernate while any context is made current to a thread.
The app may be using a client API without the EGL layer knowing,
so it is not safe to hibernate.
(d) Only check these conditions and attempt to hibernate after a
window surface is destroyed or a thread's context is detached. By
not attempting to hibernate at the end of every EGL call, we avoid
some transient wakeups/hibernate cycles when the app is mostly idle,
or is starting to become active but hasn't created its window
surface yet.
On a Galaxy Nexus, hibernating frees 1567 VM pages from the process.
Both hibernating and waking can take anywhere from 30ms to over 100ms
-- measurements have been very inconsistent.
Change-Id: Ib555f5d9d069aefccca06e8173a89625b5f32d7e
Jesse Hall [Wed, 4 Apr 2012 23:53:42 +0000 (16:53 -0700)]
Increment/decrement a counter around EGL calls
This is in preparation for a change that will hibernate the underlying
EGL when idle. Instead of a bare egl_display_t*, get_display() now
returns a egl_display_ptr, which acts like a smart pointer. The
"wakecount" counter managed by the smart pointer isn't used for
anything in this change. It will be used to make sure we don't
hibernate when any thread is in an EGL call, without having to hold a
mutex for the duration of the call.
Change-Id: Iee52f3549a51162efc3800e1195d3f76bba2f2ce
Mathias Agopian [Tue, 10 Apr 2012 00:35:00 +0000 (17:35 -0700)]
Merge "BufferQueue no longer hardcodes buffer counts"
Mathias Agopian [Mon, 9 Apr 2012 21:16:47 +0000 (14:16 -0700)]
start VSYNC thread when HWC doesn't handle it
Change-Id: I853a822ea9ec13870ae25af55a89ad9a8cc3936a
Mathias Agopian [Sun, 8 Apr 2012 22:13:32 +0000 (15:13 -0700)]
VSYNC handling cleanup
Change-Id: I1376bf864c4e03c11fb6d1333a8b7cfdda08c9e4
Mathias Agopian [Sun, 8 Apr 2012 22:01:31 +0000 (15:01 -0700)]
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
Daniel Lam [Tue, 27 Mar 2012 03:37:15 +0000 (20:37 -0700)]
BufferQueue no longer hardcodes buffer counts
BufferQueue is now more flexible as it can be used
by SurfaceMediaSource in addition to SurfaceTexture.
Change-Id: I4222be8918d63372c44fcd412d9ad241c6a3eeb9
Jamie Gennis [Fri, 6 Apr 2012 22:58:55 +0000 (15:58 -0700)]
Merge "EGL: add GPU frame completion tracing"
Nick Kralevich [Fri, 6 Apr 2012 22:34:02 +0000 (15:34 -0700)]
Merge "dumpstate: don't follow symlinks when creating /data/anr/traces.txt"
Glenn Kasten [Fri, 6 Apr 2012 21:50:42 +0000 (14:50 -0700)]
Merge "Add a log tag"
Erik Gilling [Fri, 6 Apr 2012 21:13:32 +0000 (14:13 -0700)]
Fix SurfaceFlinger crash in HWC::eventControl
eventControl was not checking if there was a hwc before callingi
hwc->eventControl
Change-Id: I4d739fc9c0d47da131f4ffc5d50e274de156d012
Nick Kralevich [Fri, 6 Apr 2012 17:51:11 +0000 (10:51 -0700)]
Merge "Ensure that /data/anr/traces.txt is world-writable"
Nick Kralevich [Fri, 6 Apr 2012 16:53:45 +0000 (09:53 -0700)]
dumpstate: don't follow symlinks when creating /data/anr/traces.txt
Make Android more robust against symlink attacks when /data/anr
is world-writable.
Bug:
5614000
Change-Id: I9a7e4c4ec9aa4300ac30a968db0dcd276f364ab6
Nick Kralevich [Fri, 6 Apr 2012 16:31:28 +0000 (09:31 -0700)]
Ensure that /data/anr/traces.txt is world-writable
The umask changed for init. We have to force /data/anr to be world
readble and /data/anr/traces.txt to be world writable so dalvik
processes can write to it.
Hopefully this is a short term change while we investigate tightening
up these permissions.
Bug:
6300296
Change-Id: Iacb4c9f1bc69d2ac679697f9cf9a52694f888489
Jamie Gennis [Fri, 6 Apr 2012 03:34:54 +0000 (20:34 -0700)]
EGL: add GPU frame completion tracing
This change adds a debug option to EGL to use an EGLSyncKHR each frame to
determine when the GPU finishes rendering the frame.
Change-Id: I09ce071db904b44f07ca814c586c291c8b59385a
Jamie Gennis [Fri, 6 Apr 2012 16:05:49 +0000 (09:05 -0700)]
Merge "Fixed disconnect bug in SurfaceTexture"
Glenn Kasten [Thu, 5 Apr 2012 20:41:56 +0000 (13:41 -0700)]
Add a log tag
Change-Id: If30aa8536130cf6ff9918ce97c5e4e8651ae2fef
Mathias Agopian [Wed, 4 Apr 2012 05:09:52 +0000 (22:09 -0700)]
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
Mathias Agopian [Wed, 4 Apr 2012 01:32:39 +0000 (18:32 -0700)]
Merge "Add HWC vsync hook. Currently unused."
Mathias Agopian [Tue, 3 Apr 2012 23:31:39 +0000 (16:31 -0700)]
Add HWC vsync hook. Currently unused.
Change-Id: I849d56f375813a044c5e2d0b25f791476a60fa01
Mathias Agopian [Wed, 4 Apr 2012 00:48:03 +0000 (17:48 -0700)]
refactor / simplify EventThread
Change-Id: I3981c6fba93b7b985174b2a7045e24db2c0b4428
Mathias Agopian [Tue, 3 Apr 2012 22:38:10 +0000 (15:38 -0700)]
Merge "use a socketpair instead of a pipe in BitTube"
Andreas Huber [Tue, 3 Apr 2012 21:15:05 +0000 (14:15 -0700)]
New Crypto "HAL" API.
Change-Id: I225cdfeffb7663a2d639a01cfe704aa12f9014b8
related-to-bug:
6275919
Mathias Agopian [Tue, 3 Apr 2012 00:02:19 +0000 (17:02 -0700)]
use a socketpair instead of a pipe in BitTube
Bug:
6252830
Change-Id: Ia7a7b08409517214136261c05569dc5959a597ab
Yang Chuang [Fri, 10 Feb 2012 07:18:26 +0000 (15:18 +0800)]
Add Japanese specific key codes
These keys are specific to Japanese hardware keyboard which can be
used by input method.
Patch ported from AOSP, with the addition of KANA.
Change-Id: I1474f0eb8971ed5d632822b1f9825c426f4817eb
Daniel Lam [Tue, 27 Mar 2012 03:37:15 +0000 (20:37 -0700)]
Fixed disconnect bug in SurfaceTexture
BufferQueue's disconnect could race with updateTexImage
where invalid buffers could be released. Additionally
fixed similar bug with setBufferCount. Tests were added
to stress the disconnect mechanism.
Change-Id: I9afa4c64f3e025984e8a9e8d924852a71d044716
Jamie Gennis [Sun, 1 Apr 2012 22:41:24 +0000 (15:41 -0700)]
Merge "SurfaceTexture: add context attach & detach"
Jamie Gennis [Thu, 29 Mar 2012 02:05:54 +0000 (19:05 -0700)]
SurfaceTexture: add context attach & detach
This change adds the detachFromContext and attachToContext methods to
SurfaceTexture. These methods allow the SurfaceTexture to switch from
one consumer GLES context to another. This change also includes a few
cleanups to the error return codes in updateTexImage.
Change-Id: I0df1eb599aa7b6f58f07431f242f8f09269559ed
Mathias Agopian [Fri, 30 Mar 2012 00:10:08 +0000 (17:10 -0700)]
reduce IPC with BufferQueue
collapse setCrop, setTransform and setScalingMode to queueBuffer()
this ends up simplifying things quite a bit and reducing the numnber
of IPC needed per frame.
Change-Id: I3a13c07603abe4e76b8251e6380b107fde22e6d9
Jamie Gennis [Thu, 29 Mar 2012 20:57:10 +0000 (13:57 -0700)]
Merge "Refactored DummyConsumer"
Mathias Agopian [Thu, 29 Mar 2012 19:25:45 +0000 (12:25 -0700)]
Merge "better workaround for bug:
6020860"
Mathias Agopian [Thu, 29 Mar 2012 19:23:51 +0000 (12:23 -0700)]
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
Colin Cross [Wed, 28 Mar 2012 20:55:43 +0000 (13:55 -0700)]
Move services/powermanager from frameworks/base to frameworks/native
Move services/powermanager into frameworks/native so audioflinger can
use it. Note that this is not the same as a PowerManagerService,
which is part of systemserver and handles turning the screen on and
off, etc. This is just a binder interface to allow taking wakelocks.
Change-Id: I6b6a8b41cdbad17e826fda45aab5f059f22fc64e
Daniel Lam [Tue, 27 Mar 2012 03:37:15 +0000 (20:37 -0700)]
Refactored DummyConsumer
DummyConsumer no longer uses a ProxyConsumerListener
Change-Id: I0a99428b3f9dae82cb47d5da3589de77653f3d7c
Colin Cross [Tue, 27 Mar 2012 20:57:43 +0000 (13:57 -0700)]
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
Colin Cross [Tue, 27 Mar 2012 17:28:58 +0000 (10:28 -0700)]
Merge "frameworks/native: prevent some opengl tests from building in pdk"
Colin Cross [Tue, 27 Mar 2012 00:22:22 +0000 (17:22 -0700)]
Merge "move hardware feature definitions"
Jamie Gennis [Tue, 27 Mar 2012 00:17:49 +0000 (17:17 -0700)]
Merge "Added a DummyConsumer for use with BufferQueue."
Mathias Agopian [Mon, 26 Mar 2012 23:53:19 +0000 (16:53 -0700)]
Merge "debug.egl.finish can be used to force a glFinish() when eglSwapBuffers() is called"
Colin Cross [Mon, 26 Mar 2012 23:29:20 +0000 (16:29 -0700)]
move hardware feature definitions
Move the hardware feature xml files from frameworks/base/data/etc
to frameworks/native/data/etc.
Change-Id: I0c572237b78f233d58627801896c0a81215531e8
Colin Cross [Mon, 26 Mar 2012 23:01:43 +0000 (16:01 -0700)]
frameworks/native: prevent some opengl tests from building in pdk
Some of the tests in frameworks/native/opengl/tests depend on java
or jni, and shouldn't be in frameworks/native. Prevent them from
building in pdk builds for now.
Change-Id: Ie7a012513dd03992ac1f093bd245aeca826c9cb9
Keun young Park [Mon, 26 Mar 2012 22:30:38 +0000 (15:30 -0700)]
Merge "add Looper.cpp to build for linux host to use in CTS audio"
Daniel Lam [Sat, 24 Mar 2012 01:12:04 +0000 (18:12 -0700)]
Added a DummyConsumer for use with BufferQueue.
The DummyConsumer is a consumer that can connect to BufferQueue
that does nothing. It is required as BufferQueue checks
if a consumer is connected. Also fixes a bug where SurfaceTexture
was reusing old texture slots.
Bug:
6172739
Change-Id: I5e7a118dd4d07807ba4c763200242b5ee7d3412b
Keun young Park [Mon, 26 Mar 2012 21:44:24 +0000 (14:44 -0700)]
add Looper.cpp to build for linux host to use in CTS audio
Change-Id: I59cfe30fd48fcba0bb949033f4d2aef5ce9916e4
Colin Cross [Mon, 26 Mar 2012 19:38:26 +0000 (12:38 -0700)]
move dumpstate and dumpsys from frameworks/base to frameworks/native
Change-Id: I8a5318022ce5cd3e7c8055f21fe5da74639aa6c0
Glenn Kasten [Mon, 26 Mar 2012 19:18:24 +0000 (12:18 -0700)]
mv libcpustats from frameworks/base to /native
OK to lose history
Change-Id: I563fec271e0bc240e4a09a8b9647c7439badd85b
Mathias Agopian [Sun, 25 Mar 2012 07:49:46 +0000 (00:49 -0700)]
debug.egl.finish can be used to force a glFinish() when eglSwapBuffers() is called
this debug property is evaludated at eglInitialize() time.
Change-Id: Ie439e4aac87f7fdc6ab2add86183d6d042f3ee8b
Mathias Agopian [Fri, 23 Mar 2012 23:46:54 +0000 (16:46 -0700)]
Merge "surfaceflinger: disable ddms debugging on pdk builds"
Colin Cross [Fri, 23 Mar 2012 21:17:18 +0000 (14:17 -0700)]
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
Mathias Agopian [Fri, 23 Mar 2012 21:19:36 +0000 (14:19 -0700)]
move ndk headers to frameworks/native
Change-Id: Ib740333753818ff8f8230ed009211b447e30cbee
Mathias Agopian [Fri, 23 Mar 2012 21:15:44 +0000 (14:15 -0700)]
remove dependency of EGL on ndk header
Change-Id: Ia6e489b5b4f028864bdf54923e81f604710dd8ad
Mathias Agopian [Fri, 23 Mar 2012 19:19:05 +0000 (12:19 -0700)]
Merge "rewrite density calculation code so it's understandable"
Dima Zavin [Fri, 23 Mar 2012 18:38:30 +0000 (11:38 -0700)]
Merge "build: add device-type dalvik heap configs"
Colin Cross [Fri, 23 Mar 2012 17:14:56 +0000 (10:14 -0700)]
frameworks/native: link host libutils against external/zlib
Fix the SDK build by statically linking host libutils against libz
from external/zlib.
Change-Id: Id6805d3c9071e6fa0559024336642b5386cf3c52
Dima Zavin [Fri, 23 Mar 2012 16:41:02 +0000 (09:41 -0700)]
build: add device-type dalvik heap configs
These have been moved from frameworks/base/build
Change-Id: Ib0cdf82f4e2d61a1956baabf1fe636f46ddbc13a
Signed-off-by: Dima Zavin <dima@android.com>
Colin Cross [Fri, 23 Mar 2012 01:46:44 +0000 (18:46 -0700)]
frameworks/native: move Zip* from libandroidfw to libutils
ZipUtils is needed by build/tools, move it from libandroidfw
(frameworks/base) to libutils (frameworks/native).
Change-Id: Ib8c41134ccdec6d6aa8d49860f8dddef49a24783
Kenny Root [Thu, 22 Mar 2012 23:28:11 +0000 (16:28 -0700)]
Add UniquePtr.h to frameworks/native
This is a copy of libcore's UniquePtr.h header which is used until we
get C++11 which has std::unique_ptr which is essentially the same.
Taken from libcore project at commit
3e6dd45baa0d7f9b4fa06f4ade76e088b59cc7bf
Change-Id: I7537b016f9eae33bfc4c57b24f86260909719ab8
Mathias Agopian [Thu, 22 Mar 2012 19:15:54 +0000 (12:15 -0700)]
rewrite density calculation code so it's understandable
Change-Id: I1016cd5fd75355abe4ab879d04f4849bd2dd4122
Dima Zavin [Thu, 22 Mar 2012 06:37:46 +0000 (23:37 -0700)]
displayhardware: fix not obeying ro.sf.lcd_density when specified
Change-Id: I71efd6aebfdb0323b07327f5e448a5cb5eb0fad6
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Wed, 21 Mar 2012 06:23:35 +0000 (23:23 -0700)]
Merge "surfaceflinger: use display dpi if not forced with ro.sf.lcd_nensity"
Jamie Gennis [Tue, 20 Mar 2012 19:03:29 +0000 (12:03 -0700)]
Merge "libgui: have ST::updateTexImage check the GL ctx"
Jamie Gennis [Tue, 20 Mar 2012 19:03:06 +0000 (12:03 -0700)]
Merge "libgui: add BQ consumer buffer free notifications"
Jamie Gennis [Tue, 20 Mar 2012 01:33:05 +0000 (18:33 -0700)]
libgui: have ST::updateTexImage check the GL ctx
This change adds a check to SurfaceTexture::updateTexImage to verify
that the current GL context is the same as the one that was used for
previous updateTexImage calls.
Change-Id: If02d2f787bcfdb528046dc9ddf6665f8a90e1bf4
Jamie Gennis [Thu, 15 Mar 2012 21:01:24 +0000 (14:01 -0700)]
libgui: add BQ consumer buffer free notifications
This change adds a new callback for BufferQueue consumers to be notified
when the BufferQueue frees some or all of its buffers. This is needed
to retain SurfaceTexture behavior where all buffers would be freed when
the producer disconnects. This change also modifies the
SurfaceTextureGLToGLTest.EglDestroySurfaceUnrefsBuffers test to catch
when the buffers are not freed.
The implementation is a little complicated because it needs to avoid
circular sp<> references across what will be a binder interface (so wp<>
can't be used directly). It also needs to avoid the possibility of
locking the BufferQueue and consumer (e.g. SurfaceTexture) mutexes in
the wrong order.
This change also includes a few additional fixes and test cleanups.
Change-Id: I27b77d0af15cb4b135f4b63573f634f5f0da2182
Jeff Brown [Sat, 17 Mar 2012 05:18:39 +0000 (22:18 -0700)]
Add a simple work queue abstraction.
Makes it easy to schedule a bunch of work to happen in parallel.
Change-Id: Id9c0e52fc8b6d78d2b9ed4c2ee47abce0a01775c
Jeff Brown [Fri, 16 Mar 2012 21:45:49 +0000 (14:45 -0700)]
Add traits to common utils data structures.
Many of our basic data structures are trivially movable using
memcpy() even if they are not trivially constructable, destructable
or copyable. It's worth taking advantage of this *ahem* trait.
Adding trivial_move_trait to String16 reduces appt running
time on frameworks/base/core/res by 40%!
Change-Id: I630a1a027e2d0ded96856e4ca042ea82906289fe
Andreas Huber [Fri, 16 Mar 2012 16:00:53 +0000 (09:00 -0700)]
Remove all traces of long obsolete OMXComponentBase class.
Change-Id: I749994fe1560363afc95beae45b66ea56a20caa8
Siva Velusamy [Thu, 15 Mar 2012 23:43:05 +0000 (16:43 -0700)]
Merge "gltrace: Only accept connections from the shell."
Siva Velusamy [Thu, 15 Mar 2012 23:18:38 +0000 (16:18 -0700)]
gltrace: Only accept connections from the shell.
Only accept incoming connections from the shell user.
Change-Id: Ibef1a796d794d45f73db59949b39cb1ce68542b4
Eino-Ville Talvala [Thu, 15 Mar 2012 17:33:59 +0000 (10:33 -0700)]
Merge "Move CameraParameters.h to frameworks/native."
Eino-Ville Talvala [Thu, 15 Mar 2012 00:17:05 +0000 (17:17 -0700)]
Move CameraParameters.h to frameworks/native.
CameraParameters.h is indirectly required to implement the Camera
HAL. Move it to frameworks/native.
Bug:
6171735
Change-Id: If4ccb273ea7ca79f54402ebc00febf1c3e59799f
Dima Zavin [Thu, 15 Mar 2012 00:15:10 +0000 (17:15 -0700)]
surfaceflinger: use display dpi if not forced with ro.sf.lcd_nensity
Change-Id: I52c4b872e0f2c088c2a6ada7a5bb15db071f0002
Signed-off-by: Dima Zavin <dima@android.com>