Commit Graph

1850 Commits

Author SHA1 Message Date
Marco Nelissen
097ca275f4 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
2014-11-17 08:47:01 -08:00
Narayan Kamath
5d07648b36 am 26653bad: Fix build.
* commit '26653bad7cdaa09470828781c5a2bab7c4d2445f':
  Fix build.
2014-11-14 10:42:55 +00:00
Narayan Kamath
26653bad7c Fix build.
Remove reference to undefined open max index extension.

Change-Id: I984b91afad3ca4d279a31048b4112fa9afdba9e9
2014-11-14 10:24:28 +00:00
Lajos Molnar
c931ca1eec am 1d5d637d: Merge "implement asString() for OMX enumerations used by framework" into lmp-mr1-dev
* commit '1d5d637d6e68bd4965bf0ff9df7b99bc146172f3':
  implement asString() for OMX enumerations used by framework
2014-11-14 10:10:15 +00:00
Lajos Molnar
1d5d637d6e Merge "implement asString() for OMX enumerations used by framework" into lmp-mr1-dev 2014-11-14 10:02:22 +00:00
Dianne Hackborn
1f3ac8b42f am a4cff88d: Fix issue #18356768: some app process may hang at Runtime#exit...
* commit 'a4cff88d80bf1acbdbd063af88ecad83a8b9b7b4':
  Fix issue #18356768: some app process may hang at Runtime#exit...
2014-11-14 01:43:31 +00:00
Dianne Hackborn
a4cff88d80 Fix issue #18356768: some app process may hang at Runtime#exit...
...in Parcel destructor

Don't use a Mutux object, just use simple posix mutex primitives,
to avoid static init/destroy order problems.

Change-Id: Ic012d94297564c0a55d58869f8276d7d10545fbc
2014-11-13 17:09:59 -08:00
Yabin Cui
007335e688 am bc49cd07: Merge "kill HAVE_FORKEXEC"
* commit 'bc49cd07664d8a590bc6ed44884ba9405f6b706e':
  kill HAVE_FORKEXEC
2014-11-13 23:35:25 +00:00
Yabin Cui
0dd549aae0 kill HAVE_FORKEXEC
Bug: 18317407
Change-Id: I0c7b5886e5de12bdd95cfcc046bc87e4a6aeef5b
2014-11-12 17:10:40 -08:00
Lajos Molnar
a1ae5a4fe5 implement asString() for OMX enumerations used by framework
Bug: 18285408
Change-Id: I7893cbf0b13514e0fe9001c90db3c8387c1920c0
2014-11-12 09:09:42 -08:00
Dianne Hackborn
ba2e1a332e am ca69e8f2: Merge "Add tracking of parcel memory allocations." into lmp-mr1-dev
* commit 'ca69e8f2d0a1fc963bd170f9b2bf164028761323':
  Add tracking of parcel memory allocations.
2014-11-12 03:51:05 +00:00
Dianne Hackborn
7e790af756 Add tracking of parcel memory allocations.
Change-Id: I76ffed0e69ccfe70e87d98646f11d4de7c3fd980
2014-11-11 16:23:04 -08:00
Andreas Gampe
bfd633e131 Frameworks/native: Fix unused parameter warning
Pulled in in hardware/, where -Werror is used.

Change-Id: I13fc31d31fe2f623d39c84862b0c95a28813723d
(cherry picked from commit a32900deec)
2014-11-08 22:18:47 +00:00
Andreas Gampe
a32900deec Frameworks/native: Fix unused parameter warning
Pulled in in hardware/, where -Werror is used.

Change-Id: I13fc31d31fe2f623d39c84862b0c95a28813723d
2014-11-07 16:49:48 -08:00
Dan Stoza
8e624d4cad am 98d20f82: Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-dev
* commit '98d20f82ca8979b30c81df9639f54ab11e1951f9':
  Add a BufferItem parameter to onFrameAvailable
2014-11-07 20:03:42 +00:00
Dan Stoza
98d20f82ca Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-dev 2014-11-07 19:44:31 +00:00
Dan Stoza
8dc55396fc 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
2014-11-07 10:39:13 -08:00
Jeff Tinker
5221104854 am 621c6f3b: Merge "Add missing secure stop methods" into lmp-mr1-dev
* commit '621c6f3b13f96b0e84163f355c6f3024cd3afb2e':
  Add missing secure stop methods
2014-11-06 02:44:25 +00:00
Jeff Tinker
621c6f3b13 Merge "Add missing secure stop methods" into lmp-mr1-dev 2014-11-06 02:33:31 +00:00
Jesse Hall
04c9683aa1 Merge "surfaceflinger: fix -Wmismatched-tags warnings" into lmp-mr1-dev 2014-10-31 16:58:45 +00:00
Jesse Hall
1495ceb885 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 646f541050)
2014-10-31 09:51:10 -07:00
Jeff Tinker
57481590b9 Add missing secure stop methods
b/18053197
b/18076411

Change-Id: I42b97f7e39d6e9e58990b41a4c4b5a7c9b8a49cf
2014-10-31 00:42:33 -07:00
Dan Stoza
d23b34b3ac am f3929d66: am e42cba8f: Merge "Initialize ARect fields in default ctor"
* commit 'f3929d6611bb8278e561fdd4b05a21915ac9de76':
  Initialize ARect fields in default ctor
2014-10-29 23:08:21 +00:00
Dan Stoza
f3929d6611 am e42cba8f: Merge "Initialize ARect fields in default ctor"
* commit 'e42cba8feb2bbfe385f162a06e41e2c2c0f40c99':
  Initialize ARect fields in default ctor
2014-10-29 23:04:05 +00:00
Dmitriy Ivanov
bccab86174 Initialize ARect fields in default ctor
So that we can use Rect() for update and such.

Bug: 18095940
Change-Id: I03ed87121d2d279f22013b75e95dd7254551ca1f
2014-10-29 15:48:28 -07:00
Dmitriy Ivanov
b2e19208dd Initialize ARect fields in default ctor
So that we can use Rect() for update and such.

Bug: 18095940
Change-Id: I03ed87121d2d279f22013b75e95dd7254551ca1f
2014-10-28 16:41:10 -07:00
Lajos Molnar
f0ca2ade53 am 53aad5e7: am 3454f123: media: add kMetadataBufferTypeGraphicBuffer
* commit '53aad5e7de7619cbc9b0d9a0a0830fc29c331f8d':
  media: add kMetadataBufferTypeGraphicBuffer
2014-10-14 22:24:22 +00:00
Lajos Molnar
53aad5e7de am 3454f123: media: add kMetadataBufferTypeGraphicBuffer
* commit '3454f123d0a10bd0ce0760828996aa26c80a8fd4':
  media: add kMetadataBufferTypeGraphicBuffer
2014-10-14 19:56:24 +00:00
Lajos Molnar
e7e61beffc am 3454f123: media: add kMetadataBufferTypeGraphicBuffer
* commit '3454f123d0a10bd0ce0760828996aa26c80a8fd4':
  media: add kMetadataBufferTypeGraphicBuffer
2014-10-14 08:27:07 +00:00
Lajos Molnar
3454f123d0 media: add kMetadataBufferTypeGraphicBuffer
Bug: 17935149
Change-Id: I1c26d1e83d8fa0a9ccdb25f6f3b19a86b1dc6f37
2014-10-13 22:58:03 -07:00
Jesse Hall
20fca75fbd am b7702c5c: Merge "BufferQueueProducer: Throttle EGL frame production." into lmp-mr1-dev
* commit 'b7702c5ce7f010fa5f19646fd79f28ff04e7014b':
  BufferQueueProducer: Throttle EGL frame production.
2014-10-08 16:59:38 +00:00
Jesse Hall
b7702c5ce7 Merge "BufferQueueProducer: Throttle EGL frame production." into lmp-mr1-dev 2014-10-08 16:50:13 +00:00
Aravind Akella
ae29ee0a9e am 93176114: am a7eb4b74: Merge "Fix sockfd leakage in SensorService." into lmp-dev
* commit '93176114cf34c9874c2db70fd7665e9f95dda9d0':
  Fix sockfd leakage in SensorService.
2014-10-03 22:39:19 +00:00
Eric Penner
99a0afbaee BufferQueueProducer: Throttle EGL frame production.
Throttling was previously controlled by a combination of the
driver and the number of buffers in the queue. This patch makes
a more consistent trade-off, which allows two GPU frames pending
but not three. More buffering could improve throughput in the
case of varying frame times, but this also increases latency.

Bug: 17502897
Change-Id: I4ee68019ca94c635294c5959931a555a6c4ef2df
2014-10-03 14:57:09 -07:00
Aravind Akella
021543fc65 am a7eb4b74: Merge "Fix sockfd leakage in SensorService." into lmp-dev
* commit 'a7eb4b74f74423dafd88adf94a7984ae927c3a23':
  Fix sockfd leakage in SensorService.
2014-10-03 21:50:52 +00:00
Aravind Akella
a7eb4b74f7 Merge "Fix sockfd leakage in SensorService." into lmp-dev 2014-10-03 21:45:37 +00:00
Aravind Akella
8a96955c8e Fix sockfd leakage in SensorService.
i) Call removeFd() only if the fd in the BitTube has been
previously added to the Looper. Use a flag to determine whether the fd
has been previously added or not.
ii) Increment mPendingFlushEventsToSend after holding a connectionLock.
iii) Store the number of acks that are pending in SensorEventQueue
 and send them all at once.

Bug: 17472228
Change-Id: I1ec834fea1112a9cfbd9cddd2198438793698502
2014-10-02 18:59:56 -07:00
Lajos Molnar
754b3c9fe1 am 167013b2: am 0ba908e7: Merge "add OMX_VIDEO_AVCLevel52 constant" into lmp-dev
* commit '167013b2bea340ccf14bf751ef39cc5abef4533a':
  add OMX_VIDEO_AVCLevel52 constant
2014-10-02 23:06:25 +00:00
Lajos Molnar
be89b6f084 am 0ba908e7: Merge "add OMX_VIDEO_AVCLevel52 constant" into lmp-dev
* commit '0ba908e7a55ce2641f8886db2a059ccaa3f7a22a':
  add OMX_VIDEO_AVCLevel52 constant
2014-10-02 22:49:19 +00:00
Chong Zhang
4f99490ad2 am dd230cb8: Merge "add a parameter for PCM limiter enable" into lmp-dev
* commit 'dd230cb8d2a43ea453a507b12c612a221a3780e7':
  add a parameter for PCM limiter enable
  Use set_sched_policy to put dexopt operations in SP_BACKGROUND cgroup
  Revert "Modify EGL to disconnect the window when the surface gets destroyed."
  crash if getNativeBuffer() called on NULL GraphicBuffer
2014-10-02 12:40:06 +00:00
Lajos Molnar
cd57b41db4 add OMX_VIDEO_AVCLevel52 constant
Bug: 17676461
Change-Id: I120041e9b2ffe2a232a2419bcb5fe88cb49961cb
2014-10-01 21:49:53 -07:00
Chong Zhang
30e4b31a8e am dd230cb8: Merge "add a parameter for PCM limiter enable" into lmp-dev
* commit 'dd230cb8d2a43ea453a507b12c612a221a3780e7':
  add a parameter for PCM limiter enable
  Use set_sched_policy to put dexopt operations in SP_BACKGROUND cgroup
  Revert "Modify EGL to disconnect the window when the surface gets destroyed."
  crash if getNativeBuffer() called on NULL GraphicBuffer
2014-10-01 22:38:37 +00:00
Chong Zhang
db8cad1585 add a parameter for PCM limiter enable
Bug: 17470065
Change-Id: I327115fc16e7afe2bf5870e123d63f9887161206
2014-10-01 10:39:10 -07:00
Lajos Molnar
147372fdf9 resolved conflicts for merge of 67d8bd66 to lmp-mr1-dev-plus-aosp
Change-Id: I5e7e6fdf0d2afe6c3e4a0ed6ef96afb4713a72bc
2014-09-19 06:23:46 -07:00
Lajos Molnar
435d9cde27 resolved conflicts for merge of 67d8bd66 to lmp-dev-plus-aosp
Change-Id: I2e9aab90ac53bb32630598f50cc26f6e46acf6d6
2014-09-18 20:09:39 -07:00
Lajos Molnar
67d8bd66aa 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
2014-09-18 17:03:20 -07:00
Aravind Akella
3d0daa57f5 am 8493b79e: SensorService fixes
* commit '8493b79e1cff92450076ca7450c4bf4e434a6816':
  SensorService fixes
2014-09-12 05:36:58 +00:00
Aravind Akella
8493b79e1c SensorService fixes
i) Significant Motion multiple clients fix. Make a copy of
  mActiveConnections vector before cleaning up SensorEventConnections
  when one-shot sensors trigger.
  ii) Maintain a mapping between flush_complete_events and
  SensorEventConnections to accurately map flush() API calls and
  corresponding flush_complete_events
  iii) Remove all references to 1_1 and 1_2 HALs.
  iv) Dynamically allocate sensor_event buffers in SensorService main
  threadLoop.

Bug: 17412359
Change-Id: If3c3986197660cafef2d2e0b4dc7582e229cf1c4
2014-09-10 18:24:18 -07:00
Dan Albert
5746f14978 am fb017a4c: Merge "Fix clang warnings about struct vs. class."
* commit 'fb017a4c3b23741f737093c3fcb78087bbe5e73c':
  Fix clang warnings about struct vs. class.
2014-09-10 01:43:11 +00:00
Jeff Tinker
f7a8f90ad4 am 1173137a: Merge "Add support for max res decode" into lmp-dev
* commit '1173137af3fb93c7708fb7b1109c5b37db72d783':
  Add support for max res decode
2014-09-10 00:51:52 +00:00
Jeff Tinker
1173137af3 Merge "Add support for max res decode" into lmp-dev 2014-09-09 23:56:00 +00:00
Dan Albert
aeb8ab8c34 Fix clang warnings about struct vs. class.
Change-Id: I9f26cd01ac3153efa6d77a4133686842e2d63203
2014-09-09 15:22:48 -07:00
Riley Andrews
75ec33e0e6 am d15ef27f: Update ScreenshotClient to take advantage of rotation in surfaceflinger\'s screencap api
* commit 'd15ef27f9b13727fa7358e3c09572f66bb1e0668':
  Update ScreenshotClient to take advantage of rotation in surfaceflinger's screencap api
2014-09-09 21:55:45 +00:00
Riley Andrews
129dc8423d am edb86f9f: Merge "Add rotation to surfaceflingers screen cap." into lmp-dev
* commit 'edb86f9f681e082a64a670814ee4d73ccf39942a':
  Add rotation to surfaceflingers screen cap.
2014-09-09 21:55:26 +00:00
Riley Andrews
d15ef27f9b Update ScreenshotClient to take advantage of rotation in surfaceflinger's screencap api
Change-Id: I836649d9d5cd5958ce34e47f26f4a36d2d05d24c
2014-09-09 19:41:32 +00:00
Dan Albert
7d83187103 Make string literal concatenation play nice with C++11.
In C++11 mode, "foo"MACRO_THAT_EXPANDS_TO_STRING gets lexed as a user
defined literal. Add space around the macro.

Had missed these when resolving merge conflicts last night.

Change-Id: I1a381a06c3909b76a3b44ce79c37aa6f244d3736
2014-09-09 09:21:28 -07:00
Riley Andrews
c3ebe66b49 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
2014-09-09 03:51:16 +00:00
Glenn Kasten
a602086872 Make IPowerManager native conform to .aidl for oneway
But provide a temporary escape hatch for AudioFlinger.
This oneway option will be removed as soon as possible.

Bug: 16408906
Change-Id: I20d6da1969ae05b96e72795463470eb4c1f8fbdc
2014-09-05 17:12:24 -07:00
Aravind Akella
253c4720af Merge "SensorService flush fixes." into lmp-dev 2014-09-05 19:53:36 +00:00
Stephen Hines
457296ad6c Fix undefined behavior (not returning a value from a function with return).
Bug: 17379740

This function was missing a return statement, even though it declares a return
type. This is undefined behavior, which clang miscompiled into just falling
through to a later function in some cases. Adding the return statement
fixes the undefined behavior (and probably fixes a bug too).

Change-Id: I05c03b6473b831769dc4fa8b5ba43fb4249f7626
2014-09-04 15:52:47 +00:00
Aravind Akella
9e3adfcebf SensorService flush fixes.
i) Fix a possible race condition when adding a pending flush connection
 to mActiveSensors data structure.
 ii) Invalidate flush_complete_events as soon as they are consumed by a
 connection so that they are not used by other connections which are
 registered for the same sensor.

Change-Id: I1491bea8c2081c4aab1feacc60add13b7aa26bb7
2014-09-03 18:24:05 -07:00
Wally Yau
19f8b79f15 Merge "New keycode definitions for TV remotes." into lmp-dev 2014-09-03 17:15:38 +00:00
Hans Boehm
08ff802151 Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
After fixing b/16874785.

This reverts commit f010a05c7e.

Original comment, which actually describes the effect of this:

Change the mExtras field in Binder.h to be a stdatomic.h atomic
value, and replace references to it with proper stdatomic.h calls.
This removes one of a small number of remaining 64 bit
android_atomic references.  It also replaces the erroneously
non-atomic read accesses to mExtras.

It would be better if this used the C++11 <atomic> facility,
but we don't quite have that yet.

Fixes

Bug:16513433

Change-Id: I1645ca5d6f60595bf5d388913665ce4b8780b26d
(cherry picked from commit 3effababf2)
2014-09-02 16:11:46 -07:00
ASAZU, Hideki
5b3dc861fb New keycode definitions for TV remotes.
Keys which are necessary for supporting world-wide broadcast
standard or used commonly for TV/STB remotes.

Change-Id: I2721ceb7d956c87f1d4106b99f9d21947ae13d47
2014-09-02 13:48:25 -07:00
Jeff Tinker
c3959f5bc2 Add support for max res decode
bug: 16034599
Change-Id: Ia1de1457ca29fe1dd7e55f4bb45da45ea3f6e5b1
2014-08-28 18:00:58 -07:00
Eric Penner
2d14a0ed4f GLConsumer: Fix eglTerminate/eglInit edge case.
If a display is terminated and then initialized, we can't detect
this using the display itself (it has the same value), but all
EglImages still become invalid for the display. This patch detects
this during image binding and forces creation of a new EglImage.

Bug: 10430249
Change-Id: I75101c50962f21263dca3ec6e241a2e5a3c23dad
2014-08-27 03:10:58 +00:00
Adam Lesinski
16d08a595e Add native flag to reflect new density type
Bug:17007265
Change-Id: If0129c4ad222fe28628d6f7cd8ee78fc6424e177
2014-08-22 22:23:08 -07:00
Michael Wright
51409573be Add Voice Assist key.
Bug: 16292420
Change-Id: I607fadc2edf673079bfd9f7406e6e45603474957
2014-08-21 19:09:49 -07:00
Aravind Akella
6c2664ae34 SensorService fixes.
1) Flush should only be received by the app calling flush(). Maintain
      a queue of all flush() calls and send flush_complete events in that
      order.
   2) Log warnings for older HALs. Remove batch() calls with DRY_RUN flag.
   3) Reallocate event cache when more sensors register and the desired
      maxCacheSize increases. Clear NEEDS_ACK flag in the buffer whenever
      there is a write() failure.
   4) More dump information. Add wake-up flag, maxDelay and timestamps for
      sensor events.

Bug: 16874778
Change-Id: I195646191059fd31f75f2f07886c0f98bf9b509a
2014-08-19 11:18:25 -07:00
Michael Wright
62fbb16383 Shelve InputFlinger for another release. DO NOT MERGE
Change-Id: I0f034a2b8b1d9192f61f5001799bd3aa4b3964c7
2014-08-18 10:17:18 -07:00
Hans Boehm
3effababf2 Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
After fixing b/16874785.

This reverts commit f010a05c7e.

Change-Id: I1645ca5d6f60595bf5d388913665ce4b8780b26d
2014-08-12 22:56:00 +00:00
Hans Boehm
f010a05c7e Revert "Revert "Revert "Remove incorrect android_atomic_...64 use."""
This reverts commit 66629e0de5.

Change-Id: Ic298b345d0e500d18e4297b00e755ce3340f13fb
2014-08-09 01:17:13 +00:00
Rachad
7d1cd4aae2 Merge "Tunneled Video Playback support" into lmp-dev 2014-08-09 00:45:27 +00:00
Hans Boehm
66629e0de5 Revert "Revert "Remove incorrect android_atomic_...64 use.""
This reverts commit 9dc5c269f7.
Adds a stdint.h include in case stdatomic.h stops including that.

Change-Id: If3dd1db1f1132c0f2dc1efb0a44617d3f36d7cfb
2014-08-08 17:14:30 -07:00
Hans Boehm
9dc5c269f7 Revert "Remove incorrect android_atomic_...64 use."
This reverts commit 88b7541d68.

Change-Id: Ie701c308451a3697bb167aff119318b932133f90
2014-08-06 22:45:13 +00:00
Aravind Akella
8f3b7ce889 Merge "Sensor related changes for NDK." into lmp-dev 2014-08-05 17:41:31 +00:00
Aravind Akella
b37ba399c1 Sensor related changes for NDK.
i) ASensorManager_getDefaultSensor returns a wake-up/non wake-up sensor
      depending on the type.
   ii) Add ASensor_isWakeUpSensor and ASensorManager_getDefaultSensorEx
       methods.
Bug : 16399898
Change-Id: I1a86fb8d9de23039fdf41679d1487e1cd761a9d0
2014-08-05 17:17:51 -07:00
Jean-Michel Trivi
e91cd213d4 AAC codec profile updates
Add new fields to OMX_AUDIO_PARAM_AACPROFILETYPE for
- SBR configuration
- decoder max number of channels
- decoder DRC parameters

Bug 16740915

Change-Id: Ib01822bc402fe9064c6c1c68b72c570cf72b7ecb
2014-08-05 22:34:37 +00:00
Rachad
7cb0d39016 Tunneled Video Playback support
Added native_window_set_sideband_stream() method to Surface.[h|cpp]
 Added ConfigureVideoTunnelModeParams OMX configuration structure to
 HardwareAPI.h

Bug: 16132368
Change-Id: I28fa1b9dbe858d93e353e0991098cad45c626bd9
2014-08-04 21:57:22 +00:00
Jeff Tinker
bc6b9e7f8a Allow device to be unprovisioned
bug: 12247651
Change-Id: Ib0ec34da708b11a95da66c353d864bb87a6616c9
2014-07-31 10:27:53 -07:00
Michael Wright
1f6078aef7 Have VirtualDisplays send SF resize messages when resizing
Change-Id: I76d15b22099a659450ec875836c9bf2b6584838f
2014-07-30 11:23:44 -07:00
Riley Andrews
03414a1cfe 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
2014-07-28 22:07:41 +00:00
Lajos Molnar
524077caa6 OMX: add supporting methods for flexible YUV
Bug: 10706245
Change-Id: I2427930a34c468e49d3db7ba2865344f1fba2960
2014-07-25 18:06:37 -07:00
Aravind Akella
c268068c55 Merge "SensorService performance improvements." into lmp-dev 2014-07-24 15:37:54 +00:00
Aravind Akella
56ae42613c SensorService performance improvements.
i) Send ack for wake_up sensors on the socket connection instead of using Binder RPC.
  ii) Cache events per connection in case there are write failures. Compute cache size
      from FIFO counts of sensors.
 iii) Send FlushCompleteEvent only for apps that explicitly called flush().

Change-Id: I018969736b7794b1b930529586f2294a03ee8667
2014-07-24 17:23:01 -07:00
Eric Penner
2295687487 Merge "GLProducer: Reference count images rather than buffers." into lmp-dev 2014-07-24 15:36:21 +00:00
Chong Zhang
2cbba477be add noteResetVideo/Audio to IBatteryStats
Bug: 12979595
Change-Id: Ida474e539a3af0a85ec157a66bbf986430c8020e
2014-07-23 21:51:56 +00:00
Hans Boehm
88b7541d68 Remove incorrect android_atomic_...64 use.
Change the mExtras field in Binder.h to be a stdatomic.h atomic
value, and replace references to it with proper stdatomic.h calls.
This removes one of a small number of remaining 64 bit
android_atomic references.  It also replaces the erroneously
non-atomic read accesses to mExtras.

It would be better if this used the C++11 <atomic> facility,
but we don't quite have that yet.

Bug: 16513433
Change-Id: Ibabb88d05025187ee1ce6c7f1aa670b133a547f8
2014-07-23 11:35:13 -07:00
Chong Zhang
9b365296a7 Merge "update battery status for audio/video" into lmp-dev 2014-07-22 21:50:21 +00:00
Chong Zhang
bd42d38b16 update battery status for audio/video
Bug: 12979595

Change-Id: Ic8e8d625becc6d1050f840ad63b7423f388eeba3
2014-07-22 23:08:53 +00:00
Antoine Labour
78014f32da BufferQueue: release mutex while allocating. DO NOT MERGE
BufferQueueProducer::allocateBuffers used to keep the BufferQueueCore
mutex while doing the buffer allocation, which would cause the consumer
(which also needs the mutex) to block if the allocation takes a long
time.
Instead, release the mutex while doing the allocation, and grab it again
before filling the slots. Keep a bool state and a condvar to prevent
other producers from trying to allocate the slots while the mutex is
released.

Bug: 11792166

Change-Id: I4ab1319995ef892be2beba892f1fdbf50ce0416d
(cherry picked from commit ea96044470)
2014-07-22 19:45:55 +00:00
Eric Penner
5c3d243fcc GLProducer: Reference count images rather than buffers.
In most cases, EGLImages can be created one-to-one with graphic
buffers in slots, but that was difficult due to some special
cases:
- ReleaseTexImage binds a custom 'unslotted' debug image.
- When all slots are freed, we still need to hang on to one.

These cases were handled by keeping an additional reference to
the 'current' buffer (mCurrentTextureBuf), but we would create
new images since we can't reference count them in the same way.
This patch uses the same semantics, except that it reference
counts the image (an EglImage wrapper class) rather than just
buffer. The wrapper class also detects the cases when we need
a new EGLImage, and only creates them in those rare cases.

Change-Id: I2915761dbe49d2a9bda1f59e60f857543634636b
2014-07-21 18:16:12 -07:00
Ruben Brunk
1681d95989 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
2014-07-14 22:14:32 +00:00
Jeff Tinker
f0ca9cd773 Merge "Fix non-portable definition of CryptoPlugin::SubSample" 2014-07-01 19:25:54 +00:00
Jeff Tinker
03a0571e96 Fix non-portable definition of CryptoPlugin::SubSample
bug: 16016106
Change-Id: I76514b2e7a28c86a0b0b311af575ca9dfc9471a9
2014-07-01 14:54:45 -07:00
Dan Stoza
dc56bf721a Merge "BufferQueue: Add allocateBuffers method" 2014-06-27 15:56:14 +00:00
Dan Stoza
ab57491de3 GLConsumer: Allow creation in detached mode
Adds a constructor that doesn't require a GLES texture name and sets
up the GLConsumer in detached mode.

Bug: 15616428
Change-Id: Idc9ea2e59baa24bbd959da9fffe0fb71c0aa9818
2014-06-25 15:00:48 -07:00
Dan Stoza
e49ba8e2ed 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
2014-06-24 13:09:19 -07:00
Dan Stoza
29a3e90879 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
2014-06-20 13:13:57 -07:00
Andy McFadden
91b2ca8562 Add two new display info fields
This adds SurfaceFlinger's app VSYNC offset and buffer deadline
values to DisplayInfo.

Bug 14612039

Change-Id: Ie0ab21d388fe2764f2b6f71bd1cefa33dc861a73
2014-06-17 10:41:46 -07:00