Commit Graph

2306 Commits

Author SHA1 Message Date
The Android Open Source Project
de8c80692b Merge commit '1ee45c2d2d816ee912624d81ff1b0aaa98e8fa74' into HEAD 2013-12-05 12:38:18 -08:00
The Android Open Source Project
fc3cdb936e Merge commit 'afd0debe4bdf47dc0f968282ca1261842bb65d60' into HEAD
Change-Id: Ic9aed2c57bdfeb250ce2dd7f0e9289ba5b6e936a
2013-11-22 11:20:20 -08:00
Elliott Hughes
a5a13a3ecf Remove references to obsolete pmem functionality.
Change-Id: I5d3befd075e51614e6801115388a0a9f32fbb6ea
2013-11-21 12:22:39 -08:00
Marco Nelissen
fddab47617 am 708cc794: Native counterpart of new power manager method
* commit '708cc794f6ccd4d31e0a00a23b289272c665adc1':
  Native counterpart of new power manager method
2013-10-25 15:01:29 -07:00
Marco Nelissen
708cc794f6 Native counterpart of new power manager method
Cherrypicked from master.

b/9464621

Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d
2013-10-25 12:50:04 -07:00
Shuo Gao
0a885309aa fix corruption in Vector<> when malloc falied
1. When alloc or realloc failed in the function SharedBuffer::editResize,
it would return a NULL pointer, then mStorage would update to be 1 by
SharedBuffer::data() if no pointer check here, which is an obviously
wrong address, and would cause corruption when used it e.g. in capacity().

So add the pointer check here for the return value of SharedBuffer::editResize,
if it's NULL do not use it to update mStorage, to avoid the value of mStorage
polluted.

2. when alloc or realloc falied in _grow & _shrink function, mStorage keep
the original value, so mCount should not be updated here.

Otherwise, mStorage might be 0 but mCount>0, so a corruption would happend
when it try to delete items from the Vector since mCount>0.

Change-Id: I7c3814e843c459834ca5eed392e8d63d1cb7d2d8
Signed-off-by: Shuo Gao <shuo.gao@intel.com>
Signed-off-by: Jian Luo <jian.luo@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 139626
2013-10-22 22:36:46 -07:00
Michael Wright
47f0b9894b am 3223217a: Only consume touches up until the frame time
* commit '3223217aed6dcfa55b5b952cd6be71f70e41ba63':
  Only consume touches up until the frame time
2013-10-21 17:23:55 -07:00
Michael Wright
3223217aed Only consume touches up until the frame time
When resampling is disabled, it's currently possible to consume
touches after the current frame time. This breaks some guarantees and
could cause unexpected behaviors.

Change-Id: I99908a2cac2df9f795dd4a07188b4451213cf3e4
2013-10-21 23:57:17 +00:00
Andy McFadden
251b11c204 am 85075869: Wait for buffers to drain
* commit '8507586903fa803abf535853a169913f2cf2e555':
  Wait for buffers to drain
2013-10-18 16:57:01 -07:00
Andy McFadden
8507586903 Wait for buffers to drain
When a BufferQueue producer disconnects and reconnects, we retain
the previously-queued buffers but empty the slots.  This allows
the number of queued buffers to grow without limit.  The low-memory
killer does not approve.

Bug 11069934

Change-Id: Ia2eaa954c7a3904b54209a3701dba01689e204d8
2013-10-18 23:10:16 +00:00
Dave Burke
06c964d9b3 am 9c0dfa09: Merge "Eliminate latency when resampling is disabled" into klp-dev
* commit '9c0dfa09731a8366a7cdcd7171dde64b73af0d5c':
  Eliminate latency when resampling is disabled
2013-10-10 19:39:05 -07:00
Dave Burke
9c0dfa0973 Merge "Eliminate latency when resampling is disabled" into klp-dev 2013-10-11 02:33:15 +00:00
Aravind Akella
1f1e576840 am 5d6aa951: Merge "Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection." into klp-dev
* commit '5d6aa95129a13aae37a60b3e4246a0592dab396d':
  Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.
2013-10-10 19:21:05 -07:00
Michael Wright
ad526f8505 Eliminate latency when resampling is disabled
Since the latency was introduced to avoid egregious errors during
resampling, remove it when we aren't resampling.

Change-Id: Ia8e9a9afb1e16212fec81a8c9c661c598e1b0ebf
2013-10-10 18:54:12 -07:00
Aravind Akella
701166d9f6 Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.
Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36
2013-10-09 17:26:01 -07:00
Jamie Gennis
6be1d210ee am f0cf5f10: BufferQueue: fix a test crash
* commit 'f0cf5f103cf9c54d59de4ed6f1d8ddd2302dec1b':
  BufferQueue: fix a test crash
2013-10-02 11:16:59 -07:00
Jamie Gennis
f0cf5f103c BufferQueue: fix a test crash
Bug: 10935880
Change-Id: If76e9fb055103bad0db7e6c16487532671573149
2013-10-02 18:02:28 +00:00
Jamie Gennis
886b152111 am a9c47f32: Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev
* commit 'a9c47f327373cbe48e187442c7f9554d24a75c08':
  GLConsumer: start using EGL_ANDROID_image_crop
2013-10-02 10:41:58 -07:00
Jamie Gennis
dbe9245e2e GLConsumer: start using EGL_ANDROID_image_crop
This change makes GLConsumer use the EGL_ANDROID_image_crop extension when
available on a device.  The crop rectangle is passed to the EGL driver when
creating EGLImages, allowing the crop to be performed by the driver rather than
using the texture transform matrix.

Bug: 10897141
Change-Id: I63e9a5d5c85067376abc420e3639154468346311
2013-10-02 17:34:35 +00:00
Eino-Ville Talvala
1160e89d31 am d171da97: GLConsumer: Add query for current frame number.
* commit 'd171da973de3c6b30263011334fdcd916739144f':
  GLConsumer: Add query for current frame number.
2013-09-19 14:59:51 -07:00
Eino-Ville Talvala
d171da973d GLConsumer: Add query for current frame number.
Surface the underlying frame number of the current texture.

Bug: 10830400
Change-Id: Ide3a7da12ea0aac54588beb6bf00dbfe2cd37653
2013-09-19 13:36:07 -07:00
Mathias Agopian
a7e1660b25 am c1c05de4: fix camera API 2.0 orientation
* commit 'c1c05de415854eb7a13a16b7e22a22de8515123a':
  fix camera API 2.0 orientation
2013-09-18 15:33:38 -07:00
Mathias Agopian
c1c05de415 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
2013-09-17 23:45:22 -07:00
Mathias Agopian
e803e6095e am 799f5126: Fix build (tests)
* commit '799f51268006f319f6ae538dca670bfc7f522688':
  Fix build (tests)
2013-09-17 15:58:55 -07:00
Mathias Agopian
799f512680 Fix build (tests)
Change-Id: I5b233ef448e5e7eec3818c6586dfea138b28f7b6
2013-09-17 15:55:18 -07:00
Mathias Agopian
3f342c1133 am 02b62df7: Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev
* commit '02b62df7119b27c89d91d96938d8f4f5232b296b':
  Make sure do disconnect from a BQ when its client dies.
2013-09-17 14:33:09 -07:00
Mathias Agopian
02b62df711 Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev 2013-09-17 21:31:14 +00:00
Jesse Hall
b8080d9a3b am 2a36497e: Merge "Stop using default value for Surface producerControlledByApp parameter" into klp-dev
* commit '2a36497e45d4d96e35fed89cfdcb09b71459ac3c':
  Stop using default value for Surface producerControlledByApp parameter
2013-09-16 20:30:11 -07:00
Mathias Agopian
365857df8b Make sure do disconnect from a BQ when its client dies.
Bug: 5679534

Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53
2013-09-16 16:15:21 -07:00
Jesse Hall
83cafffeac Stop using default value for Surface producerControlledByApp parameter
Bug: 10785749
Change-Id: Ifbf9340e5eabe621a69e990ec3e05ac51f8db66a
2013-09-16 15:39:55 -07:00
Kenny Root
06ef81bd70 resolved conflicts for merge of 1852eb4f to klp-dev-plus-aosp
Change-Id: I7217c0e859b384a042c02fe339e745996c6ef49e
2013-09-12 11:51:34 -07:00
Mathias Agopian
7c4f236532 am 90ed3e8d: fix a few problems with BitTube
* commit '90ed3e8d7883d9c80fb8bf11b1c593bd8b2b39d0':
  fix a few problems with BitTube
2013-09-11 15:06:10 -07:00
Kenny Root
0ae966033d Remove copy of UniquePtr.h
The UniquePtr.h file is no longer in libcore/... so there is no need to
have this extra copy of it anymore.

Change-Id: I4ec4f86d2844e524b50441c3a9100a50a6a45b1a
2013-09-11 14:29:20 -07:00
Mathias Agopian
90ed3e8d78 fix a few problems with BitTube
BitTube used to send objects one at a time and didn't
handle errors properly.

We now send all the objects in one call, which means they
have to be read as a single batch as well. This changes the
BitTube API.

Update SensorService to the new API.

Also added an API to set the size of the send buffer.

Bug: 10641596
Change-Id: I77c70d35e351fdba0416fae4b7ca3b1d56272251
2013-09-10 21:10:53 -07:00
Aravind Akella
e29df8b929 am a5552de9: Merge "Sensor batching. Changes to the native code." into klp-dev
* commit 'a5552de96f0cff9fb1947d8d21556bfeccf9cd03':
  Sensor batching. Changes to the native code.
2013-09-03 17:43:44 -07:00
Aravind Akella
724d91d778 Sensor batching. Changes to the native code.
Bug: 10109508
Change-Id: I7333f3aac76125a8226a4c99c901fb904588df04
2013-09-03 17:04:36 -07:00
Mathias Agopian
d213910ab0 am 9b5534b0: Merge changes I8283a989,I64add89a into klp-dev
* commit '9b5534b0e5e1510f56e6a2c58ad0816167603ebd':
  switch to use mat4
  vector and matrix classes for graphics use
2013-08-30 18:31:38 -07:00
Mathias Agopian
9b5534b0e5 Merge changes I8283a989,I64add89a into klp-dev
* changes:
  switch to use mat4
  vector and matrix classes for graphics use
2013-08-31 01:30:10 +00:00
Jesse Hall
2d28c37269 am 87967c18: Merge "Force async behavior for the virtual display output BufferQueue" into klp-dev
* commit '87967c186995d1500875c495cba8f04f7cff76cc':
  Force async behavior for the virtual display output BufferQueue
2013-08-30 14:19:13 -07:00
Jesse Hall
8db92553e9 Force async behavior for the virtual display output BufferQueue
Bug: 10551087
Change-Id: I40bbb2b87d64420939a0ea309254f281437dab56
2013-08-29 16:09:11 -07:00
Mathias Agopian
595ea77f6b vector and matrix classes for graphics use
- this implements vec2, vec3, vec4, which are float vectors
of size 2, 3 and 4 respectively.

the code allows easy instantiation of vectors of a different
type via the tvec{2|3|4}<T> template classes.

- this also implements mat4 which is a float 4x4 matrix. the
tmat44<T> template class allows easy instantiation of a
4x4 matrix of a different value_type.

The vector types have some minimal support for the
glsl style swizzled access; for instance:

  vec4 u;
  vec3 v = u.xyz;

only .x, .xy, .xyz and their .stpq / .rgba equivalent are
supported.

most operators are supported on both vector and matrices:
arithmetic, unary, compound assignment and comparison
(bit-wise operators NOT supported).

- operations available on vectors include:
dot, length, distance, normalize and cross

- operations available on matrices include:
transpose, inverse, trace

- and a few utilities to create matrices:
ortho, frustum, lookAt

Change-Id: I64add89ae90fa78d3f2f59985b63495575378635
2013-08-26 20:41:13 -07:00
Jeff Brown
14641f7f30 am 464febc4: Remove input flinger stubs. (DO NOT MERGE)
* commit '464febc44908fb4a8fca9e513ba8469750dde838':
  Remove input flinger stubs.  (DO NOT MERGE)
2013-08-22 19:34:04 -07:00
Jeff Brown
464febc449 Remove input flinger stubs. (DO NOT MERGE)
Bug: 10446930
Change-Id: I4dd46f539cd2a2e324dfc83b45ba2787f7404a4a
2013-08-22 18:40:07 -07:00
Eino-Ville Talvala
169636c62b am b6aea00c: Merge "Surface: Fix controlledByApp parameter" into klp-dev
* commit 'b6aea00c7843705fdc6d265d7e15b3df52e86009':
  Surface: Fix controlledByApp parameter
2013-08-22 12:26:51 -07:00
Eino-Ville Talvala
7895e90e29 Surface: Fix controlledByApp parameter
Bug: 10425641
Change-Id: I1a47e2ce4ecbdb8e67030a5d9ddf6604c5e2497d
2013-08-21 12:05:42 -07:00
Andy McFadden
f94705f5fb am 8b308ed7: Fix build
* commit '8b308ed70ed782f68c8075aac2a6b66bbfcdb9af':
  Fix build
2013-08-19 09:51:16 -07:00
Andy McFadden
8b308ed70e Fix build
Neglected the "checkbuild"-built tests.

Change-Id: I202692f1a6d1e306c88e820c959d07d16e7c6a00
2013-08-19 08:56:07 -07:00
Andy McFadden
30290a557e am 90f59bf9: Merge "Re-enable frame dropping for non-auto timestamps" into klp-dev
* commit '90f59bf9eba79b27629505bc2709d84e7c811c8b':
  Re-enable frame dropping for non-auto timestamps
2013-08-19 07:29:11 -07:00
Andy McFadden
3c25621ad7 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
2013-08-16 15:15:16 -07:00
Igor Murashkin
0ba1a16bbb am e60a0b1e: Merge "gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired" into klp-dev
* commit 'e60a0b1e6a29d79b4d0ec0374446cb829bcadee4':
  gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired
2013-08-16 14:07:10 -07:00