Commit Graph

1966 Commits

Author SHA1 Message Date
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
Narayan Kamath
f8f419bfcd Merge "Remove Parcel::writeIntPtr." 2014-06-10 21:18:16 +00:00
Narayan Kamath
7da40c0a84 Remove Parcel::writeIntPtr.
All uses of this API have been removed. It should
never have been made public in the first place.

bug: 15424960
Change-Id: Id07d24ec95b2b393e6da138a7e8a9a4ecebeca94
2014-06-12 15:26:39 +01:00
Aravind Akella
adb65d9add Merge "Surface reportingMode for Sensors." 2014-06-12 03:30:50 +00:00
Aravind Akella
0e025c5af3 Surface reportingMode for Sensors.
Change-Id: Iac8dd3408c90eb7d285a2e8043131fab3a7e58fa
2014-06-12 14:49:41 -07:00
Prashant Malani
7227b96a73 Merge "surfaceflinger: Replace blank/unblank with setPowerMode" 2014-06-12 03:30:50 +00:00
Narayan Kamath
f905bc3bdc Remove Parcel::writeIntPtr.
All uses of this API have been removed. It should
never have been made public in the first place.

bug: 15424960

(cherry picked from commit 7da40c0a84)

Change-Id: I8d89f62dbdaee7149ef908e0c97417b85e0c48a2
2014-06-13 10:27:33 +01:00
Michael Wright
8f6710fdeb Bump axis limit
Change-Id: I53d18646be2b884c5022f10c7c4ea8f6cda176c8
2014-06-09 18:56:43 -07:00
Lajos Molnar
6445efde47 am 64f5ec51: fix compiler warning in OMX_VideoExt.h
* commit '64f5ec51ad3a9aea5a849d51139e605815b42d75':
  fix compiler warning in OMX_VideoExt.h
2014-06-06 06:58:39 +00:00
Lajos Molnar
64f5ec51ad fix compiler warning in OMX_VideoExt.h
Bug: 11969958
Change-Id: I6dbc1c5a56c5f8db0af931c9391299aaaf1b536a
2014-06-05 22:33:52 -07:00
Prashant Malani
2c9b11f029 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>
2014-06-05 16:35:52 -07:00
Aravind Akella
e75b7b491e Remove getRequiredPermission from NDK.
Bug: 15089664
Change-Id: Ic967adde89f30261c75fca67c09d14d35bd1cdb3
(cherry picked from commit 1236710bcc)
2014-06-05 22:24:49 +00:00
Narayan Kamath
db1972bd8e am 26063a91: am f1dd859b: Merge "x86_64: Align uint64_t/int64_t structure member to 8 bytes"
* commit '26063a9155ddd18d858cea7fac7c1ddf71e1bcb7':
  x86_64: Align uint64_t/int64_t structure member to 8 bytes
2014-06-03 13:58:40 +00:00
Narayan Kamath
26063a9155 am f1dd859b: Merge "x86_64: Align uint64_t/int64_t structure member to 8 bytes"
* commit 'f1dd859baa114995bcbcfb7119e939d0b4f45ed5':
  x86_64: Align uint64_t/int64_t structure member to 8 bytes
2014-06-03 13:29:00 +00:00
Narayan Kamath
f1dd859baa Merge "x86_64: Align uint64_t/int64_t structure member to 8 bytes" 2014-06-03 10:06:55 +00:00
Fengwei Yin
83e0e425c6 x86_64: Align uint64_t/int64_t structure member to 8 bytes
To make sure the stature which pass between 32/64bit process have
same memory layout for 32/64bit.

Signed-off-by: Fengwei Yin <fengwei.yin@intel.com>
Co-Authored-by: Narayan Kamath <narayan@google.com> (Unit test only.)
Change-Id: I1bc2d12cce41ec0bc484adcaf968f274bec75c12
2014-05-30 14:13:29 +01:00
Dan Stoza
3d5c8a98c1 Merge "SurfaceFlinger: Add sourceCrop to screenshot" 2014-05-28 18:31:40 +00:00
Aravind Akella
812f15f2f9 Merge "Surface maxDelay and isWakeUpSensor flag in Sensor.java." 2014-05-27 19:38:00 +00:00
Etienne Le Grand
03b1a9db9d am b3a65bb0: am 9dcd38ad: Merge "Add heart rate to ASensorEvent" into klp-modular-dev
* commit 'b3a65bb0c2d2f6e660510efe0d93b3d26b0b2bf9':
  Add heart rate to ASensorEvent
2014-05-27 18:14:51 +00:00
Etienne Le Grand
b3a65bb0c2 am 9dcd38ad: Merge "Add heart rate to ASensorEvent" into klp-modular-dev
* commit '9dcd38ad3b8335308b59932718e3f145aa50d318':
  Add heart rate to ASensorEvent
2014-05-27 18:10:16 +00:00
Etienne Le Grand
9dcd38ad3b Merge "Add heart rate to ASensorEvent" into klp-modular-dev 2014-05-27 18:02:49 +00:00
Aravind Akella
d9441e4c27 Surface maxDelay and isWakeUpSensor flag in Sensor.java.
Change-Id: Idd1e9045190beeca87b086b272e8cbf0bed05bae
2014-05-23 18:58:01 -07:00
Etienne Le Grand
630e31d6ed Add heart rate to ASensorEvent
Change-Id: Ic82838b17a575de93d499e44a454bb382f17678f
2014-05-23 12:35:10 -07:00
Aravind Akella
72c524dd8c am 040730e8: am 1236710b: Remove getRequiredPermission from NDK.
* commit '040730e8954b2f686390434646f82bc333de7058':
  Remove getRequiredPermission from NDK.
2014-05-23 18:04:27 +00:00
Dan Stoza
c18790018b 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
2014-05-23 09:19:03 -07:00
Aravind Akella
040730e895 am 1236710b: Remove getRequiredPermission from NDK.
* commit '1236710bccd8f5870c0281e24a899c3d58f708e6':
  Remove getRequiredPermission from NDK.
2014-05-22 22:44:55 +00:00
Aravind Akella
1236710bcc Remove getRequiredPermission from NDK.
Change-Id: Ic967adde89f30261c75fca67c09d14d35bd1cdb3
2014-05-22 13:19:49 -07:00
Jeff Brown
b9e879d429 Merge "Support VIRTUAL flag in keyboard layouts." 2014-05-21 02:34:36 +00:00
Jeff Brown
5a7d2f9a15 Support VIRTUAL flag in keyboard layouts.
This flag is used to provide haptic feedback for virtual hard keys.

Bug: 14319563
Change-Id: Ia0ca1acc8cfa00a42d1c04d279dfa59c6cc00f4d
2014-05-20 17:29:30 -07:00
Jinsuk Kim
bc4e396d17 New keycode definitions for HDMI-CEC
Following keys are added to be mapped to HDMI-CEC standard keys:

KEYCODE_MEDIA_TOP_MENU
KEYCODE_11
KEYCODE_12
KEYCODE_LAST_CHANNEL
KEYCODE_TV_DATA_SERVICE

Change-Id: Ie73cf4cd8355ced4753eb5bba0ea130b087dfc36
2014-05-20 07:51:18 +09:00
Tim Kilbourn
6b4e02f1cb Add KEYCODE_PAIRING.
Used for initiating a peripheral pairing mode.

Change-Id: I7e8439d27491ccc72d045cabf5751a35b9113aa7
2014-05-16 15:36:11 -07:00
Narayan Kamath
f8c66b4bee am cfba3bf1: am c9fcaf37: Merge "Change InputMessage.motion.pointerSize to a uint32_t."
* commit 'cfba3bf1606dfdb1daf1be1c19176180660ae19d':
  Change InputMessage.motion.pointerSize to a uint32_t.
2014-05-16 12:10:21 +00:00
Narayan Kamath
cfba3bf160 am c9fcaf37: Merge "Change InputMessage.motion.pointerSize to a uint32_t."
* commit 'c9fcaf3751af078ad730913304431197e4d1ae80':
  Change InputMessage.motion.pointerSize to a uint32_t.
2014-05-16 12:08:06 +00:00
Narayan Kamath
ed5fd384b7 Change InputMessage.motion.pointerSize to a uint32_t.
This ensures it's the same size in both 32 and 64 bit
processes and also brings it in line with struct
MotionEntry.

(cherry-picked from bc6001b026)

Change-Id: I28e87050478920a54132efbbb8138076ebad1409
2014-05-16 12:53:16 +01:00
Todd Poynor
a186e65368 BatteryProperty: Add property ENERGY_COUNTER and 64-bit integer properties
Also fixup comments to match recent changes in BatteryManager.

Change-Id: I6f40924f9e66d564ad1175f9650e2bfd2ad39a3a
2014-05-16 03:05:11 +00:00
Andy Hung
574b641173 Merge "Allow OMX pointer types to be forced to 32 bits" 2014-05-15 03:21:01 +00:00
Greg Hackmann
f974bffb36 am 38c9e132: am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API"
* commit '38c9e1327a5b24267c3dab5293bc9d7ada6e9fc9':
  Use asynchronous lock/unlock API
2014-05-12 18:18:47 +00:00
Greg Hackmann
38c9e1327a am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API"
* commit 'c1ffd351bc44483369271c11dd4c6391bba8c64c':
  Use asynchronous lock/unlock API
2014-05-12 18:12:34 +00:00
Greg Hackmann
c1ffd351bc am bd20e551: Merge "Use asynchronous lock/unlock API"
* commit 'bd20e551f64234142e1146f9fa4b2dcebbd72122':
  Use asynchronous lock/unlock API
2014-05-12 18:08:13 +00:00
Francis Hart
8f3960179c Use asynchronous lock/unlock API
The gralloc API now provides a way for using lock/unlock with the Android
explicit synchronisation concept. This changes updates the GraphicBuffer class
to also expose this functionality, and updates the Surface class to make use of
in line with the dequeueBuffer/queueBuffer mechanism.

This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local
gralloc module does not support this then the existing synchronous lock/unlock
mechanism will be used.

Change-Id: I8c3fd9592e0c5400ac9be84450f55a77cc0bbdc5
2014-05-12 09:13:03 -07:00
Greg Hackmann
2f3dca149a am 9493d492: am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API""
* commit '9493d4924a59f14b698389386337a9c07a7ea3c4':
  Revert "Use asynchronous lock/unlock API"
2014-05-09 22:00:04 +00:00
Greg Hackmann
02528cf6aa am 4b46776f: am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API"
* commit '4b46776ff88c5a365700b88e8b2b04e1b2c77e6e':
  Use asynchronous lock/unlock API
2014-05-09 21:54:48 +00:00
Greg Hackmann
9493d4924a am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API""
* commit '9eb142e34a5bc11508c0bd6f60ad3933c60aa530':
  Revert "Use asynchronous lock/unlock API"
2014-05-09 21:51:51 +00:00
Greg Hackmann
9eb142e34a am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API""
* commit 'a9d49f99e69d8fc0e60b492b131322c96f47a232':
  Revert "Use asynchronous lock/unlock API"
2014-05-09 21:46:44 +00:00
Greg Hackmann
53ec72523a Revert "Use asynchronous lock/unlock API"
This reverts commit 378ef07760.

Change-Id: I1de5ab973b5383633e75924fe90ac3ca8216c36a
2014-05-09 21:36:48 +00:00
Greg Hackmann
4b46776ff8 am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API"
* commit '8a6cd189034ec4709a66e581b41deba56c028291':
  Use asynchronous lock/unlock API
2014-05-09 21:13:16 +00:00
Greg Hackmann
8a6cd18903 am f60564a1: Merge "Use asynchronous lock/unlock API"
* commit 'f60564a13e917877c76c99294194a621d872076b':
  Use asynchronous lock/unlock API
2014-05-09 21:08:39 +00:00
Andy Hung
abec6ad341 Allow OMX pointer types to be forced to 32 bits
Enabled by #define.  Is used for 64 bit compilation to
force structs to use 32 bit pointer values for eventual
IPC to 32 bit OMX codecs.

May change later if we support 64 bit OMX codecs.

Change-Id: I0d12f86774f6f7ce9c39c8abea5d51988a7eef11
Signed-off-by: Andy Hung <hunga@google.com>
2014-05-07 11:12:34 -07:00
Dan Stoza
dd02391756 Merge "Enable changing display configuration" 2014-05-06 21:08:16 +00:00
Narayan Kamath
4522f5749d Merge "Change InputMessage.motion.pointerSize to a uint32_t." 2014-05-06 10:00:57 +00:00
Rachad
6900656b2d Merge "HEVC Support Added HEVC enums and structures to OMX header files" 2014-05-06 00:39:10 +00:00
Dan Stoza
7f7da32569 Enable changing display configuration
This allows querying and switching display device configurations
through the ISurfaceComposer/SurfaceComposerClient interface.

Bug: 14320401
Change-Id: I8c22165698950e5da32204c1c4da92122f91a715
2014-05-05 16:45:26 -07:00
Rachad
184077dee4 HEVC Support
Added HEVC enums and structures to OMX header files

Change-Id: If4135c6df86df51098fc7a979543975ed70b0641
2014-05-05 12:03:54 -07:00
Francis Hart
378ef07760 Use asynchronous lock/unlock API
The gralloc API now provides a way for using lock/unlock with the Android
explicit synchronisation concept. This changes updates the GraphicBuffer class
to also expose this functionality, and updates the Surface class to make use of
in line with the dequeueBuffer/queueBuffer mechanism.

This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local
gralloc module does not support this then the existing synchronous lock/unlock
mechanism will be used.

Change-Id: I77daa1beb197b63b1c2f281b8414ac4ae4b5b03c
2014-05-02 13:28:14 -07:00
Narayan Kamath
bc6001b026 Change InputMessage.motion.pointerSize to a uint32_t.
This ensures it's the same size in both 32 and 64 bit
processes and also brings it in line with struct
MotionEntry.

Change-Id: I66bb8b8d8664763e7dcbd489686051f563d5e1dc
2014-05-02 17:58:43 +01:00
Michael Wright
32ccf558ce Merge "Move key attribute information out of native." 2014-04-29 22:31:18 +00:00
Bill Yi
e4f00b2aae Merge commit '6d05ef2310bdc84811d5b0385b009ad11447a749' into HEAD 2014-04-29 11:34:19 -07:00
Alex Glaznev
c215abe8e8 Merge "Add VP8 encoder extra parameters structure to support configuring encoder key frame interval, number of temporal layers, type of temporal layer pattern and minimum and maximum quantization parameters." 2014-04-24 21:53:30 +00:00
Aravind Akella
943de2f71b Merge "Enable wakeup sensors." 2014-04-24 00:41:08 +00:00
Alex Glaznev
5b155b84a2 Add VP8 encoder extra parameters structure to support
configuring encoder key frame interval, number of
temporal layers, type of temporal layer pattern
and minimum and maximum quantization parameters.

Bug: 11969958
Change-Id: I561e03148a7c5d928b5bf350ad3631ae69871065
2014-04-23 17:15:18 -07:00
Aravind Akella
9a844cf78f Enable wakeup sensors.
SensorService should hold a wakelock till the app reads events from a wakeup sensor. Currently drivers hold a wakelock with a
timeout while delivering events from a wake up sensor like Significant Motion. This hack can be removed now.

Bug: 9774884
Change-Id: If3b5acb99c9cf0cd29012fcfa9d6b04c74133d01
2014-04-23 14:38:56 -07:00
Michael Wright
872db4f11e Move key attribute information out of native.
Native doesn't ever actually care about the attributes of keys, so
move all of it up into the managed layer and move all of the key
names down so they're defined once.

Change-Id: Ic8ded13ce050b2b98744735ff50d11e8d882d7d5
2014-04-22 16:55:36 -07:00
Dan Stoza
e0d5862ad8 Remove deprecated BufferQueue constructor
Finally remove the BufferQueue constructor itself. From now on, all
BufferQueues must be created through the createBufferQueue method.

Bug: 13415624
Change-Id: I192bf9430265bab761dcd59db1f02c9d0ac4feed
2014-04-22 14:12:55 -07:00
Dan Stoza
fb39827ebc Merge "BufferQueue: Increase max slots from 32 to 64" 2014-04-21 16:11:22 +00:00
Dan Stoza
febd4f4f46 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
2014-04-18 11:40:14 -07:00
Dan Stoza
99b18b447d BufferQueue: Add StreamSplitter
Adds a StreamSplitter class, that takes one IGraphicBufferConsumer
interface and multiple IGraphicBufferProducer interfaces and
implements a one-to-many broadcast of GraphicBuffers (while managing
fences correctly).

Change-Id: I38ecdf3e311ac521bc781c30dde0cc382a4376a3
2014-04-15 10:34:10 -07:00
Dan Stoza
d9822a3843 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
2014-04-15 10:27:25 -07:00
Aravind Akella
93b84e39e6 am ef89f763: am cf818ebb: Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev
* commit 'ef89f7638c43ce5f73e32d487bf65c3375995e3b':
  Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
2014-04-11 19:40:33 +00:00
Aravind Akella
ef89f7638c am cf818ebb: Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev
* commit 'cf818ebbf07c6a20ef48d71bf82f8d4bdf3a398c':
  Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
2014-04-11 19:34:53 +00:00
Aravind Akella
cf818ebbf0 Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev 2014-04-11 19:32:28 +00:00
Dan Stoza
21f18e6935 Merge "Add unique ID to GraphicBuffer" 2014-04-11 18:56:04 +00:00
Dan Stoza
fd34b65f71 Merge "BufferQueue: Add producer buffer-released callback" 2014-04-11 17:57:12 +00:00
Jeff Brown
88a34b2f43 am 974279d9: am db19e463: Remove unnecessary policy flags.
* commit '974279d98917c589181b70ea1c377842e7717643':
  Remove unnecessary policy flags.
2014-04-11 08:46:03 +00:00
Jeff Brown
974279d989 am db19e463: Remove unnecessary policy flags.
* commit 'db19e463fe5a4e00a0214c564527ba67f31e1afb':
  Remove unnecessary policy flags.
2014-04-11 03:53:32 +00:00
Aravind Akella
700180487f Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
This reverts commit 4369a4ebd5.

Change-Id: Ifa8619cc6873470a07a987763d818d78d4232610
2014-04-11 00:06:06 +00:00
Svetoslav
cf8684b206 Merge "Adding render stats APIs to UiAutomation (framework native)." 2014-04-10 19:32:44 +00:00
Svetoslav
d85084b2b6 Adding render stats APIs to UiAutomation (framework native).
bug:12927198

Change-Id: Ibb1c07f7d89e11281e5c1f27f412a29ac6f9c4ab
2014-04-10 12:32:19 -07:00
Jeff Brown
db19e463fe Remove unnecessary policy flags.
Bug: 13133142
Change-Id: Ib6c63ebad25d84f78623b4a46ccf83953d235fe7
2014-04-09 17:04:44 -07:00
Dan Stoza
b3d0bdf0db 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
2014-04-07 17:00:26 -07:00
Etienne Le Grand
75b332037f am 4369a4eb: Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
* commit '4369a4ebd5ae7567e7075bc82830b83178099ed5':
  Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
2014-04-05 09:06:00 +00:00
Etienne Le Grand
30d6fd6b28 Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
This reverts commit c57a019e11.

Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2
(cherry picked from commit 4369a4ebd5)
2014-04-05 06:13:41 +00:00
Etienne Le Grand
4369a4ebd5 Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
This reverts commit c57a019e11.

Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2
2014-04-05 05:02:22 +00:00
Etienne Le Grand
33458f72e1 am 00f4dde1: am c57a019e: Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
* commit '00f4dde1aa88576811bca79bc8242e1fc1edb333':
  Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
2014-04-05 03:53:51 +00:00
Etienne Le Grand
00f4dde1aa am c57a019e: Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
* commit 'c57a019e117117c5a76c772970b26cd0f5db8c6a':
  Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
2014-04-05 01:52:28 +00:00
Etienne Le Grand
c57a019e11 Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
Change-Id: If0f3dbdb5d2e9378e1fed4614baee4e750d0c850
2014-04-04 16:31:09 -07:00
John Spurlock
9ae71b0060 am 17251cd4: am ad98ad04: Add ACONFIGURATION_UI_MODE_TYPE_WATCH to configuation enum.
* commit '17251cd445cf80cfb6085a1b0b317cd85ad5be00':
  Add ACONFIGURATION_UI_MODE_TYPE_WATCH to configuation enum.
2014-04-04 19:34:07 +00:00
John Spurlock
17251cd445 am ad98ad04: Add ACONFIGURATION_UI_MODE_TYPE_WATCH to configuation enum.
* commit 'ad98ad0493625578f19c727576d02725b82f927c':
  Add ACONFIGURATION_UI_MODE_TYPE_WATCH to configuation enum.
2014-04-04 19:28:07 +00:00
Greg Hackmann
786e26a886 am 3b1cb037: am 27f8840f: Merge "make struct Event layout consistent on 32/64-bit"
* commit '3b1cb037eea56dba0d134c6858f8ddc0f9743ff8':
  make struct Event layout consistent on 32/64-bit
2014-04-04 01:53:51 +00:00
Greg Hackmann
3b1cb037ee am 27f8840f: Merge "make struct Event layout consistent on 32/64-bit"
* commit '27f8840f228abfe5e2458a261ce5403871495a54':
  make struct Event layout consistent on 32/64-bit
2014-04-04 00:08:11 +00:00
John Spurlock
ad98ad0493 Add ACONFIGURATION_UI_MODE_TYPE_WATCH to configuation enum.
Bug:13395758
Change-Id: Iecdae299bfd030f86145d02fa7860374b5a40a74
2014-04-03 16:39:17 -04:00
Glenn Kasten
18b94aa848 am fb3bbd1d: am d2f76332: Merge "AArch64: Correction to OMX_U32 and OMX_S32"
* commit 'fb3bbd1df323c24dc10c095f29ee8010fc3d1df0':
  AArch64: Correction to OMX_U32 and OMX_S32
2014-04-03 17:22:56 +00:00
Glenn Kasten
fb3bbd1df3 am d2f76332: Merge "AArch64: Correction to OMX_U32 and OMX_S32"
* commit 'd2f7633277dd13ac269adb51c4e7a85746e6c599':
  AArch64: Correction to OMX_U32 and OMX_S32
2014-04-03 17:14:50 +00:00
Greg Hackmann
27f8840f22 Merge "make struct Event layout consistent on 32/64-bit" 2014-04-03 17:07:09 +00:00
Glenn Kasten
d2f7633277 Merge "AArch64: Correction to OMX_U32 and OMX_S32" 2014-04-03 17:00:59 +00:00
Narayan Kamath
7f4fe6e586 am d09b2acd: am 033bdd72: Merge "Remove global variables from ProcessState."
* commit 'd09b2acdc8ca706c65984956e61c0bb333cee992':
  Remove global variables from ProcessState.
2014-04-03 16:56:29 +00:00
Narayan Kamath
d09b2acdc8 am 033bdd72: Merge "Remove global variables from ProcessState."
* commit '033bdd72f9f32f4bd3d282750bdc0dcfbb469959':
  Remove global variables from ProcessState.
2014-04-03 14:11:31 +00:00
Narayan Kamath
162ea0e9e8 Remove global variables from ProcessState.
These weren't really being used and they make it
very hard to reason about who looks at command line
arguments.

Processes started via app_process (this includes all
zygote forks and the system_server) can get information
about command line arguments from the AndroidRuntime
class, which is available via a call to
AndroidRuntime::getRuntime.

bug: 13647418

Change-Id: I6f92680c3619a68c6d4b0995db4cdc9adc788e36
2014-04-03 12:29:44 +00:00
Ruchi Kandoi
ca13fa7dd4 PowerManager: add powerHint binder method
Change-Id: Ide1d50bb1580698b25296fbfc1cc63c3b21a00bc
2014-04-02 21:24:01 +00:00
Marcus Oakland
849de60c1e AArch64: Correction to OMX_U32 and OMX_S32
The types of OMX_U32 and OMX_S32 were appropriate to a 32-bit system
but were not appropriate to a 64-bit system. They have been changed to
make them portable between the two systems. With this change and a
change to frameworks/av/media/libstagefright/foundation/AString.cpp,
the android.media.cts.DecoderTest#testFlush CTS test passes.

Change-Id: I8e16c7169f54599c23fea71585b531e48541c78a
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
2014-04-02 11:20:01 -07:00
Jeff Tinker
60a6337de0 am b2f414fb: am 98e5bf2c: Merge "Support CAST V2 Authentication in MediaDrm" into klp-modular-dev
* commit 'b2f414fbd6e3be45bbea28d84db3ce9712ddcd5b':
  Support CAST V2 Authentication in MediaDrm
2014-04-01 22:23:23 +00:00
Jeff Tinker
b2f414fbd6 am 98e5bf2c: Merge "Support CAST V2 Authentication in MediaDrm" into klp-modular-dev
* commit '98e5bf2cc0931fc4e4d88b3f64069bd200690be0':
  Support CAST V2 Authentication in MediaDrm
2014-04-01 22:00:44 +00:00
Jeff Tinker
98e5bf2cc0 Merge "Support CAST V2 Authentication in MediaDrm" into klp-modular-dev 2014-04-01 21:54:35 +00:00
Dan Stoza
b1363d37fc Add unique ID to GraphicBuffer
Adds a globally-unique ID (PID + sequence number) to every
GraphicBuffer, which will remain the same while crossing Binder,
even if the underlying handles change.

Change-Id: Ib11330a4c5e99621b82204e0adb31b9a88658426
2014-03-31 14:10:07 -07:00
Dan Stoza
f0eaf25e92 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
2014-03-31 14:10:07 -07:00
Jeff Tinker
c2f10f20ec Support CAST V2 Authentication in MediaDrm
Update frameworks to enable support for CAST
V2 Authentication in the DRM Plugin.

Change-Id: Ic38f0e1484b1388dd87f4591c74984cb724d50e2
related-to-bug: 12702350
2014-03-29 08:41:39 -07:00
Michael Wright
6c4e2d816b am 773585e6: Merge "Generate ACTION_CANCEL on joystick disconnect. DO NOT MERGE" into klp-modular-dev
* commit '773585e60c2e6c3e39f9f56d0d3b05eeae6dff04':
  Generate ACTION_CANCEL on joystick disconnect. DO NOT MERGE
2014-03-28 19:37:39 +00:00
Glenn Kasten
80a2f03051 Merge "Allow creation of heaps that are read-only to partner" 2014-03-27 22:28:11 +00:00
Michael Wright
d0bd391146 Generate ACTION_CANCEL on joystick disconnect. DO NOT MERGE
Bug: 11480300
Change-Id: I5a4096970c9e588d134f05dd0eb3a9c91c836b2f
2014-03-24 17:26:52 -07:00
Paul Lawrence
151d24899f Merge "batteryservice: Add battery capacity" 2014-03-20 18:11:10 +00:00
Fengwei Yin
0c7c81f5a6 make struct Event layout consistent on 32/64-bit
To make struct Event have consistent memory layout between x86
and x86_64, force nsecs_t timestamp align to 64bit because it's
not true for x86.

Change-Id: I49eaddd89e10d595cf6a5130f9762b5388c96625
Signed-off-by: Fengwei Yin <fengwei.yin@intel.com>
2014-03-20 16:49:06 +08:00
Michael Wright
38dcdff308 Generate ACTION_CANCEL on joystick disconnect.
Bug: 11480300
Change-Id: I46706838eec0711c6bf345301e7b4ccbad83b063
2014-03-20 01:54:00 +00:00
Paul Lawrence
d8e1f65273 batteryservice: Add battery capacity
Change-Id: I6879ec9ec931cbea82aa550b3b227e744255bfd4
2014-03-19 21:56:47 +00:00
Glenn Kasten
6546f2e458 Allow creation of heaps that are read-only to partner
Change-Id: I3c2b3d9b1671da4b9d9c58dce27e291d30703b03
2014-03-18 15:07:43 -07:00
Dan Stoza
75555b2eaf Merge "BufferItemConsumer: Use IGBC instead of BQ" 2014-03-18 17:55:06 +00:00
Dan Stoza
14226716f2 Merge "Remove deprecated BufferQueue constructor" 2014-03-18 16:56:15 +00:00
Wonsik Kim
8bf3b1a496 Merge "Revert "Implement video plane layer"" 2014-03-18 01:00:44 +00:00
Wonsik Kim
29fa9590ad Revert "Implement video plane layer"
This reverts commit f837c93a1b.

Change-Id: I6a1aa9ad0aca023267dc53d19c950b1535123ca7
2014-03-17 11:17:28 +00:00
Marco Nelissen
ce9f107c9d am 793be12c: am b730a452: am f0190bff: Add support for writing byte arrays to parcels
* commit '793be12c0f5a7878d1085e94e58a9c36c84f0911':
  Add support for writing byte arrays to parcels
2014-03-15 00:30:46 +00:00
Marco Nelissen
793be12c0f am b730a452: am f0190bff: Add support for writing byte arrays to parcels
* commit 'b730a45216991cf22c39451c47393b4bccae111b':
  Add support for writing byte arrays to parcels
2014-03-14 23:33:08 +00:00
Marco Nelissen
446ef4bae2 am f0190bff: Add support for writing byte arrays to parcels
* commit 'f0190bff38b6c29abbfc4a877442f71fc3d7dad8':
  Add support for writing byte arrays to parcels
2014-03-14 23:32:45 +00:00
Marco Nelissen
b730a45216 am f0190bff: Add support for writing byte arrays to parcels
* commit 'f0190bff38b6c29abbfc4a877442f71fc3d7dad8':
  Add support for writing byte arrays to parcels
2014-03-14 22:55:54 +00:00
Marco Nelissen
f0190bff38 Add support for writing byte arrays to parcels
b/13418320

Change-Id: I2285df9e9d3dc8a6a54055b13b352b81660bf45d
2014-03-13 14:17:40 -07:00
Jesse Hall
73ed82f809 Merge "Add sideband streams to BufferQueue and related classes" 2014-03-13 20:28:17 +00:00
Dan Stoza
6d5a7bb970 Remove deprecated BufferQueue constructor
Bug: 13415624
Change-Id: I52f58a4d22296d9fc3cdbd4ad53eb10a785db3ce
2014-03-13 11:39:09 -07:00
Dan Stoza
fe50d2a0a1 BufferItemConsumer: Use IGBC instead of BQ
Change-Id: Id1756ac62954ba412f2c23c5fa6e5d760c299347
2014-03-13 11:12:04 -07:00
RoboErik
ffd353a73e am d9e113f0: b/12068020 add nonce to InputDeviceDescriptor. Do not merge
* commit 'd9e113f0e0feac1a801f8339d2f907302bd432c5':
  b/12068020 add nonce to InputDeviceDescriptor. Do not merge
2014-03-12 21:12:28 +00:00
RoboErik
d9e113f0e0 b/12068020 add nonce to InputDeviceDescriptor. Do not merge
This is a cherry-pick of https://googleplex-android-review.git.corp.google.com/#/c/401795/

Adds a nonce field to allow generation of unique descriptors for
input devices.

Change-Id: Ie82bfb728bea95792b3b138dd3974f8b0aff63e0
2014-03-12 12:51:54 -07:00
Dan Stoza
f522af7eb6 BufferQueue: Allow returning interfaces as I*/Bn*
This adds a second createBufferQueue method that returns
sp<IGraphicBuffer*> interfaces instead of sp<BnGraphicBuffer*>, since
most clients don't actually need the Binderized versions (but some
might).

Change-Id: Iaf4f719c96ddb6f704afc75cf52be22588173e32
2014-03-12 10:17:20 -07:00
Michael Wright
d0f7ce457c am 9b04f860: Add MAX_CONTROLLER_LEDS constant. DO NOT MERGE
* commit '9b04f860f23481d39c3b45379a324d3630966825':
  Add MAX_CONTROLLER_LEDS constant. DO NOT MERGE
2014-03-11 23:22:00 +00:00
Michael Wright
9b04f860f2 Add MAX_CONTROLLER_LEDS constant. DO NOT MERGE
Change-Id: Ie6dbce926280c748f39e3c54d2ed4accbdcf9e59
2014-03-11 14:19:33 -07:00
Jesse Hall
399184a4cd 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
2014-03-11 12:23:14 -07:00
Dan Stoza
9f3053de78 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
2014-03-10 16:45:38 -07:00
Jeff Brown
59326cbb5c am d711ef1d: am 37bf0789: Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
* commit 'd711ef1d78581a598e23be9730246cfa8ca75bb2':
  Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
2014-03-08 05:44:49 +00:00
Jeff Brown
d711ef1d78 am 37bf0789: Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
* commit '37bf0789f5c1167f6f7f5667b09cad70e0bb27d4':
  Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
2014-03-07 23:43:18 +00:00
Jeff Brown
37bf0789f5 Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
Bug: 12938999
Change-Id: I544661b3887332998d703b7b2df9e56c23ab48c4
2014-03-07 13:57:59 -08:00
Andy McFadden
c0c6a0cd4c Merge "FramebufferNativeWindow.h is obsolete" 2014-03-06 15:31:39 +00:00
Andy McFadden
2e336496c3 FramebufferNativeWindow.h is obsolete
This adds a deprecation #warning to the header.

Change-Id: Ia32f16e491cb01d435ec8846dda3d9a7d1a9cfc5
2014-03-05 15:42:53 -08:00
Dan Stoza
c1ef3efecb Merge "Change BufferQueue into producer/consumer wrapper" 2014-03-05 18:55:13 +00:00
Michael Wright
f8da9623f3 am 1298c7e5: Merge "Parse LED mappings in keylayout files. DO NOT MERGE" into klp-modular-dev
* commit '1298c7e527fd242a39f9c0d53aa4f35d1c9decab':
  Parse LED mappings in keylayout files. DO NOT MERGE
2014-03-05 00:54:24 +00:00
Dan Stoza
3e96f1982f Change BufferQueue into producer/consumer wrapper
Now that BufferQueue has been split into core + producer + consumer,
rewrite BufferQueue to be a thin layer over a producer and consumer
interface. Eventually, this layer will be deprecated in favor of
only using either the producer or consumer interface, as applicable.

Change-Id: I340ae5f5b633b244fb594615ff52ba50b9e2f7e4
2014-03-04 15:58:03 -08:00
Dan Stoza
4a07dc8d21 Merge "Split BufferQueue into core + producer + consumer" 2014-03-04 20:03:59 +00:00
Dan Stoza
289ade165e Split BufferQueue into core + producer + consumer
Change-Id: Idc39f1e511d68ce4f02202d35425a419bc0bcd92
2014-03-04 09:33:14 -08:00
Michael Wright
962a108856 Parse LED mappings in keylayout files. DO NOT MERGE
Change-Id: I2b34939cc0df256e6b872502ea93f2884b4c8334
2014-03-03 13:59:35 -08:00
Lajos Molnar
c26c0bee1d Merge "Adding Opus related struct definitions to OMX_Index" 2014-03-03 21:03:34 +00:00
Vignesh Venkatasubramanian
1a8b0ed985 Adding Opus related struct definitions to OMX_Index
Adding Opus related structure and constant definitions to
OMX_Index.h

Change-Id: Iae0394c86900f0db322893ffce695f854624833a
2014-03-03 12:01:33 -08:00
Wonsik Kim
f837c93a1b Implement video plane layer
Binding with video source will follow.

Change-Id: Ic14e9757f5b61f4055cbeda47c1bafae0a621abb
2014-02-27 00:08:22 +00:00
Andy McFadden
22a5c8b2e3 am 44c35ec4: Allow "opaque" flag to be updated. DO NOT MERGE
* commit '44c35ec4a94eb33f7ee0df085c5d2d56d99962cf':
  Allow "opaque" flag to be updated. DO NOT MERGE
2014-02-18 23:59:43 +00:00
Andy McFadden
44c35ec4a9 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
2014-02-18 15:55:42 -08:00
Dan Stoza
c701401f8c 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
2014-02-14 23:10:42 +00:00
Jeff Brown
eac45b8a53 am ed4d28dd: Add method to apply offset to PointerCoords. (DO NOT MERGE)
* commit 'ed4d28dd70448b13eb74a3166ec8d1c1a530e2d4':
  Add method to apply offset to PointerCoords.  (DO NOT MERGE)
2014-02-12 00:26:19 +00:00
Jeff Brown
f086ddbb97 Add support for injecting events into ActivityContainers.
Enhanced the input system to support concurrent dispatch of touch
events on multiple displays which is required for this to work.

Add method to apply offset to PointerCoords.

Change-Id: I55fe4a9a8785ae5a2d3341d214fa3c5107f3963a
2014-02-11 14:51:24 -08:00
Jeff Brown
ed4d28dd70 Add method to apply offset to PointerCoords. (DO NOT MERGE)
Change-Id: I3dc2ba22b026e5b8e1c3d90f7366ec09a59ce6b6
2014-02-11 14:43:19 -08:00
Michael Wright
d02c5b6aac Move inputservice over to frameworks/native
Add all of the underlying input system pieces, minux PointerController and
SpriteController, to inputflinger. This is in preparation for moving input to
its own process and the addition of the input HAL.

Try 2.

Change-Id: I5f571fe86eb570885ae994e1f0552fb558930346
2014-02-11 10:47:14 -08:00
Michael Wright
1c284a9431 Add contains point method to Region
Change-Id: I553433ff7ac39f14ffca8278960d2abc95b4dd63
2014-02-10 13:00:14 -08:00
Andrew Hsieh
532cbb0fdc am bdab63e0: am 055dac1b: Merge "Fixed apparent copy/paste mistake Bug: 11634373"
* commit 'bdab63e06b6bacb60991420891cb06fe3dc5654f':
  Fixed apparent copy/paste mistake Bug: 11634373
2014-02-05 08:06:22 +00:00
Andrew Hsieh
bdab63e06b am 055dac1b: Merge "Fixed apparent copy/paste mistake Bug: 11634373"
* commit '055dac1b54af46a0608b32e83fcae45e75a4a8f0':
  Fixed apparent copy/paste mistake Bug: 11634373
2014-02-05 07:58:00 +00:00
David Friedman
8769436bba Fixed apparent copy/paste mistake
Bug: 11634373

Change-Id: I9b0ac4d3b4a9a2999b2013abd39465a062ec51ea
2014-02-05 11:19:04 +08:00
Changwan Ryu
dc425805b2 am e636692a: [DO NOT MERGE] Extend OpenMAX IL definitions to support AC3
* commit 'e636692a2eecead363f06297e7b5b379079331da':
  [DO NOT MERGE] Extend OpenMAX IL definitions to support AC3
2014-02-04 07:31:42 +00:00
Arve Hjønnevåg
88f6ad18de am c93865de: am 58242fc2: Merge changes Ib0e5a037,I1bd7c38e,Icfc67c2a,I96c64312,I59528054, ...
* commit 'c93865de80a16d3638936890fb42eb175284044b':
  ServiceManager: Implement PING_TRANSACTION
  ServiceManager: Use 32/64 bit types from new binder header
  Binder: Use 64 bit pointers in 32 processes if selected by the target
  Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
  Binder: Make binder portable
  ServiceManager: Fix the binder interface
  ServiceManager: Store handles in uint32_t instead of void *
  ServiceManager: Generic Fixes
  ServiceManager: Add extra error handling
  ServiceManager: Fix Android.mk
  ServiceManager: Make use of kernel exported structures
2014-02-03 22:11:16 +00:00
Changwan Ryu
e636692a2e [DO NOT MERGE] Extend OpenMAX IL definitions to support AC3
OpenMAX IL does not have generic support for AC3, but IL 1.1.2 and above
supports component extension APIs, which enable us to add our own constants
and definitions.

Change-Id: Iecee4f8bb3112b0720ceae9192017e12d3fe97e3
2014-02-03 14:10:18 +09:00
Arve Hjønnevåg
84e625ac1e Binder: Use 64 bit pointers in 32 processes if selected by the target
Uses new kernel header where void * has been replaced by binder_uintptr_t

Change-Id: Icfc67c2a279269f700343bd9246fd7cb94efe2c1
2014-01-31 15:51:06 -08:00
Serban Constantinescu
f683e0163a Binder: Make binder portable
Changes include
- Binder attempts to cast pointers to a int datatype
  which is not sufficient on a 64-bit platform.

- This patch introduces new read/write functions into
  Parcel that allow pointers to be written using the
  uintptr_t datatype for compile-time data type size
  selection.

-  Change access specifier for the methods above.

-  Binder uses the 64bit android_atomic_release_cas64
   (aka cmpxchg)

Change-Id: I595280541e0ba1d19c94b2ca2127bf9d96efabf1
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:40 +00:00
Andy McFadden
d592f32df9 Merge "Allow "opaque" flag to be updated" 2014-01-30 21:42:02 +00:00
Andy McFadden
4125a4ffaf 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
2014-01-29 17:36:49 -08:00
Adam Lesinski
809af3aa03 Moved androidfw back to frameworks/base
Change-Id: Idd57bbbc86c936cbfd60e02f8ac8d4f8fbc94592
2014-01-27 10:29:16 -08:00
Narayan Kamath
a9d5701b03 AssetManager cookies should be int32_t and not void*.
Cookies are really indices into vectors and arrays, so
they don't need to be void*. We choose int32_t instead
of size_t to allow their width to be well specified.

Change-Id: I319f271bd4f102dee7cb9f00df4c75ea697456f5
2014-01-27 11:11:50 +00:00
Dan Stoza
6a5d35dd5c libgui: Add a test for SRGB surfaces
Add SRGBTest.RenderToSRGBSurface, which validates that passing the
SRGB colorspace attributes to eglCreateWindowSurface actually
results in an SRGB surface by comparing the output values to those
of a standard RGB surface.

Change-Id: I3d5fef8070ed8fa2357ddd1c5fcc849ae3fbd12a
2014-01-07 16:43:39 -08:00
RoboErik
95c6675db1 Merge "b/12068020 add nonce to InputDeviceDescriptor" 2013-12-19 21:15:05 +00:00
RoboErik
ec2a15a26f b/12068020 add nonce to InputDeviceDescriptor
Adds a nonce field to allow generation of unique descriptors for
input devices.

Change-Id: I978b6c5e9edc9e0a6aa60f85cd8d4efc42ac2999
2013-12-19 11:54:29 -08:00
Brian Carlstrom
494600a755 am 285bfefb: am c1bf6fa9: am 7fea2361: Merge "Track Looper decoupling from ALooper"
* commit '285bfefb01f24e98348628c115eb6c524417ea82':
  Track Looper decoupling from ALooper
2013-12-19 07:58:30 +00:00
Christopher Tate
6fce2d2280 Fix MCC/MNC typo
Manual merge of https://android-review.googlesource.com/70831 across
the header refactoring.

Change-Id: I28b6a61e89b68d914124122882976a9d2f81a609
2013-12-16 15:04:10 -08:00
Brian Carlstrom
fe761ab6c7 Track Looper decoupling from ALooper
Change-Id: I612f0de7002e24948a4cbbea7b416b4fbb3929aa
2013-12-12 23:54:43 -08:00
Narayan Kamath
aae73e748c Reimplement ZipFileRO in terms of libziparchive.
This lets us share zip archive processing code with both
the runtime (Art, dalvik) and critical java code
(StrictJarFile).

This change also moves several utility methods to ZipUtils
and dedups code across several zip inflation methods.

One of the side effects of this change is that several
processing loops are now O(n) instead of O(n^2).

bug: 10193060

(cherry picked from commit afd31e08299008fdc5c2813f21b2573f29dc53df)

Change-Id: Iae67e62f1dc6dfc3f43e29bc38e3ffd1cb14d191
2013-12-09 16:34:30 +00:00
Igor Murashkin
7ea777f097 gui: Add tests for IGraphicBufferProducer
* Basic tests only. Needs more complicated queue/dequeue tests.
* Also needs consumer-side tests to really be thorough.

Change-Id: I1099dd56d65b6e9dfa15377726d6054ce657c0ca
2013-11-21 14:06:13 -08:00
Igor Murashkin
4be18a3566 gui: Remove BufferQueue::MIN_UNDEQUEUED_BUFFERS
Change-Id: I7c0cc36046dbbdb9c0e85acfe5027293d1131275
2013-11-18 12:36:15 -08:00
Igor Murashkin
7d2d160cdc gui: Update header docs for IGraphicBufferConsumer/Producer/BufferQueue
Also fix compiler warnings for libgui

Change-Id: I0ee38d9ad5eaa82d55bf812d291da8c433581cef
2013-11-13 17:34:03 -08:00
Changwan Ryu
c9a8a34e40 Extend OpenMAX IL definitions to support AC3
OpenMAX IL does not have generic support for AC3, but IL 1.1.2 and above
supports component extension APIs, which enable us to add our own constants
and definitions.

Change-Id: Iecee4f8bb3112b0720ceae9192017e12d3fe97e3
2013-11-06 09:26:33 +09: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
Todd Poynor
6f948c3960 batteryservice: remove now unused struct BatteryExtraProperties
Change-Id: Ibbb1eba95a800d2198e7524149ce38beb13dd7c9
2013-10-22 18:30:50 -07:00
Todd Poynor
7014fbd700 batteryservice: remove BatteryProperties fields not sent to BatteryService
Change-Id: I1116ebf0e21117fd37df7bfc41cb8ebaf9361faa
2013-10-22 23:18:36 +00:00
Michael Wright
60f19de1ed Merge "Add MAX_CONTROLLER_LEDS constant" 2013-10-22 00:26:57 +00:00
Michael Wright
0247e2213e Add MAX_CONTROLLER_LEDS constant
Change-Id: I5ec972338c50647049bb5a8279847d54a84d9f70
2013-10-21 11:58:41 -07:00
Michael Wright
6f467daf05 Merge "Parse LED mappings in keylayout files" 2013-10-18 20:02:59 +00:00
Michael Wright
74bdd2e7ce Parse LED mappings in keylayout files
Change-Id: I6bc3760341868015f054d9866e2616a312da94e0
2013-10-18 12:39:31 -07:00
Marco Nelissen
5c0106e134 Native counterpart of new power manager method
Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d
2013-10-16 12:57:32 -07:00
Aravind Akella
4a1e00fb3a am 1f1e5768: am 5d6aa951: Merge "Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection." into klp-dev
* commit '1f1e576840d5b36a091368abb6fe6610384b6449':
  Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.
2013-10-10 19:26:34 -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
Marco Nelissen
0e6e912b54 am e71575be: am 48d3741b: Merge "Allow blaming a single uid for work done" into klp-dev
* commit 'e71575bed44fbbd61b6a369d42e200c0141953be':
  Allow blaming a single uid for work done
2013-10-04 11:09:01 -07:00
Lajos Molnar
86f76208f0 am 04e6ab6e: am b1f94ef3: Merge "media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams" into klp-dev
* commit '04e6ab6e27c39604a7029467161a90af78ecdf07':
  media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams
2013-10-04 11:09:01 -07:00
Mike Lockwood
f99ad113b9 Move libandroidfw from frameworks/base
Change-Id: I8228c9a796e68e920c6a7dfc154c4b70ba66b082
2013-10-03 10:29:39 -07:00
Marco Nelissen
48d3741ba5 Merge "Allow blaming a single uid for work done" into klp-dev 2013-10-03 16:34:51 +00:00
Lajos Molnar
b1f94ef3f9 Merge "media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams" into klp-dev 2013-10-03 16:10:25 +00:00
Marco Nelissen
9a7706bb17 Allow blaming a single uid for work done
This lets audioflinger assign blame for wakelocks to a single uid.
Currently this is only used for recording wakelocks.
b/10985160

Change-Id: Idc9adb22c29030010ac690d4cb95e7e7ea6b91e6
2013-10-03 08:49:07 -07:00
Jamie Gennis
4e8fd6f30d am 886b1521: am a9c47f32: Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev
* commit '886b152111cc13dcfe1b47724f5e496f12ccc420':
  GLConsumer: start using EGL_ANDROID_image_crop
2013-10-02 10:44:44 -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
Todd Poynor
1fbc0266ad batteryservice: Add BatteryExtraProperties
Change-Id: I050a4da14dd723a1d563b25a9e997db769fece3e
2013-09-30 15:37:30 -07:00
Mike Lockwood
63ff1c644f Cleanup Binder interface between sensorservice and BatteryStats
Change-Id: Ia507160a2534059afe93849c8efc8407a046b50e
2013-09-25 09:28:41 -07:00
Eino-Ville Talvala
3473e814a4 am 1160e89d: am d171da97: GLConsumer: Add query for current frame number.
* commit '1160e89d31810f2ba66f8ab502281579115b39b0':
  GLConsumer: Add query for current frame number.
2013-09-20 11:19:41 -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
0f0e845113 am a7e1660b: am c1c05de4: fix camera API 2.0 orientation
* commit 'a7e1660b257326f99261e7c9b2d58c9d2e68d0b0':
  fix camera API 2.0 orientation
2013-09-18 15:36:00 -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
7229e98229 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.
2013-09-17 14:35:29 -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
Mathias Agopian
24695a1cff am 7c4f2365: am 90ed3e8d: fix a few problems with BitTube
* commit '7c4f236532692b847b9b103df6490549656ae993':
  fix a few problems with BitTube
2013-09-11 17:24:11 -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
Chong Zhang
cf1eb71a8d Merge "HDCP: add getCaps to query HDCP module capabilities" 2013-09-10 16:50:10 +00:00
Chong Zhang
b344adf089 HDCP: add getCaps to query HDCP module capabilities
This is used now to query whether HDCP module supports encryption
from a native buffer output from the encoder.

Bug: 10609422

Change-Id: Ib7fa14e7f4de1da90b46eaa174a7a05ec9dacbdc
2013-09-07 23:33:50 -07:00
Mike Lockwood
cbe36fe1ec Add support for sending and receiving ParcelFileDescriptors from native Binder code
Change-Id: I7f308e28ebac0755628e19c9b4d0d7399341b435
2013-09-05 08:43:22 -07:00
Marco Nelissen
31344a6d4d Merge "Remove obsolete comment" 2013-09-05 03:48:25 +00:00
Todd Poynor
c150900793 libbatteryservice: Add average current property
Change-Id: I519c2fb9f7cec21d9f87e73fa96b2f58a7ab27a5
2013-09-04 17:41:56 -07:00
Chong Zhang
edfc478196 am 9f74ea29: am e6772914: Merge "HDCP: add enums for HDCP module capabilities" into klp-dev
* commit '9f74ea29b8c4fa9635548b99d0a1e0d0c6c00bea':
  HDCP: add enums for HDCP module capabilities
2013-09-04 15:14:26 -07:00
Chong Zhang
e67729144a Merge "HDCP: add enums for HDCP module capabilities" into klp-dev 2013-09-04 22:07:46 +00:00
Marco Nelissen
56e01384c7 Remove obsolete comment
Change-Id: I8b040e4b2e968fd0754e15dcf9f899fbfe210b6e
2013-09-04 19:51:16 +00:00
Chong Zhang
a3a918557d HDCP: add enums for HDCP module capabilities
This change adds the enums for HDCP caps. An interface getCaps()
will be added later for querying whether HDCP module supports
encryption from a native buffer output from the encoder.

Bug: 10609422

Change-Id: Ib7fa14e7f4de1da90b46eaa174a7a05ec9dacbdc
2013-09-04 11:38:43 -07:00
Aravind Akella
91e0ff5739 am e29df8b9: am a5552de9: Merge "Sensor batching. Changes to the native code." into klp-dev
* commit 'e29df8b929128621c8ef90091696d414eb235276':
  Sensor batching. Changes to the native code.
2013-09-03 17:45:18 -07:00
Aravind Akella
a5552de96f Merge "Sensor batching. Changes to the native code." into klp-dev 2013-09-04 00:41:41 +00: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
68ca2640a7 am 4de85b49: am 1d4d8f94: improve mat44 implementation
* commit '4de85b49b3c1ae6c27351a0e6fd8d6490fe4f0cc':
  improve mat44 implementation
2013-09-03 16:53:47 -07:00
Mathias Agopian
1d4d8f94e2 improve mat44 implementation
this will make it easier to create matrices of different sizes

Change-Id: I2c1771ba0823c42d737762e2dfc2cd47eb302767
2013-09-03 16:38:49 -07:00
Mathias Agopian
9b7176b428 am d213910a: am 9b5534b0: Merge changes I8283a989,I64add89a into klp-dev
* commit 'd213910ab0acc956ee66bd3a0079a6393e7c695c':
  switch to use mat4
  vector and matrix classes for graphics use
2013-08-30 18:33:08 -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
464febc449 Remove input flinger stubs. (DO NOT MERGE)
Bug: 10446930
Change-Id: I4dd46f539cd2a2e324dfc83b45ba2787f7404a4a
2013-08-22 18:40:07 -07:00
Jeff Tinker
be0b32a132 am 052f9b2f: am 39bfc698: Merge "Add ability to test supported content types to MediaDrm" into klp-dev
* commit '052f9b2fadcb0585aab688e9ff1015534fbbb6a7':
  Add ability to test supported content types to MediaDrm
2013-08-22 16:17:13 -07:00
Jeff Tinker
39bfc69892 Merge "Add ability to test supported content types to MediaDrm" into klp-dev 2013-08-22 23:08:09 +00:00
Todd Poynor
cf80873586 libbatteryservice: add interface to read individual battery properties
Change-Id: I089eb6348053a8a9c8bca59e57ed97b4af14825a
2013-08-22 01:57:19 +00:00
Jeff Tinker
611d3d4816 Add ability to test supported content types to MediaDrm
bug: 10244066
Change-Id: I6666d0dbfdc6e791deb9a82c918255af4fa19816
2013-08-21 16:00:06 -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
a5b7513711 gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired
- Return NOT_ENOUGH_DATA instead of INVALID_OPERATION when too many
  buffers have already been locked.
- INVALID_OPERATION is nominally used when something irrecoverable happens,
  but in this case the client just needs to call unlockBuffer to go back into a
  good state.

Bug: 10333400
Change-Id: I3a034d77de85741429f832a90eedd670afa1dc94
2013-08-14 20:17:17 -07:00
Mathias Agopian
3f84483382 SurfaceFlinger now uses GLES 2.x when available
Bug: 8679321

Change-Id: I2b152d01fb4e2de2ea9fe87f1ddbd6826d7520d7
2013-08-13 16:07:45 -07:00
Mathias Agopian
45155969dc make sure GLConsumer::releaseTexImage() works after detachFromContext()
Change-Id: I27e0bc57e927d47b2b98113ee37b5396bcc72019
2013-08-12 23:45:28 -07:00
Lajos Molnar
dde86f7b18 media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams
This is the param struct used by stagefright to notify codec that
the playback may include resolution changes, so that it can prepare
accordingly to avoid port reconfiguration.

Change-Id: I64e53b7ebf74c4f9d07cc9fe0cd65be55f666afe
Signed-off-by: Lajos Molnar <lajos@google.com>
Related-to-bug: 7093648
2013-08-12 12:56:08 -07:00
Mathias Agopian
9870c9b66c make GLConsumer's debug texture static
this is so that we don't burn a gralloc handle and a bit
of memory per GLConsumer.

Change-Id: I30c3e7ec45d7f1b5426aca8e06c7716870877706
2013-08-08 17:46:48 -07:00
Jesse Hall
6c913be9ca Add ISurfaceComposer::destroyDisplay
Bug: 10191053
Change-Id: Ia89286f95421344a60ffedaaca5825c4e3cd7f9e
2013-08-08 13:12:29 -07:00
Todd Poynor
b98240cc6c batteryservice: add battery current now and charge counter data
Change-Id: I4b3ea25342d4a03a8e38bfee2ef3b1ce54f82582
2013-08-07 18:30:13 +00:00
Mathias Agopian
3ca76f416b remove support for glReadPixels screenshot path
this was only needed on some chipset we're not
supporting in KLP.

Change-Id: I2e8fc07f135030bd61d2e241a8e426f1a4316425
2013-08-06 16:07:33 -07:00
Mathias Agopian
db89edc94b 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
2013-08-06 20:05:36 +00:00
Mathias Agopian
a4e19521ac 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
2013-08-01 17:20:08 -07:00
Mathias Agopian
87f9b87796 remove unused code form GraphicBuffer
Change-Id: I0dd67f1f93f654331e8f17b55730931dbc695ca7
2013-07-31 20:10:10 -07:00
Alex Ray
b304edb0b1 remove libutils
libutils is being moved from frameworks/native/ to system/core/ in order
to facilitate native C++ platform (non-frameworks) code.

Change-Id: I44089fb960591a40b8a9c30faabb10459d107d71
2013-07-31 13:48:57 -07:00
Mathias Agopian
e142428a9c Make Flattenable not virtual
Fallout from the Flattenable change, update all its uses.

Additionnaly, fix/tighten size checks when (un)flatten()ing
things.

Removed the assumption by some flattenables (e.g.: Fence)
that the size passed to them would be exact (it can
and will be larger in some cases)

The code in Parcel is a bit complicated so that we don't
have to expose the full implementation (and also to
keep the code smallish).

Change-Id: I0bf1c8aca2a3128491b4f45510bc46667e566dde
2013-07-30 21:19:13 -07:00
Mathias Agopian
1d76781b7a Make Flattenable not virtual (libutils)
Making an object Flattenable doesn't force it to
become virtual anymore. For instance, Fence and GraphicBuffer
are now non-virtual classes.

Also change Flatennable protocol a bit so that it updates
its parameters (pointers, sizes) to make it easier
to implement a flattenable in terms of other flattenables.

Change-Id: Ie81dc7637180b3c2cfcbaf644f8987ca804eb891
2013-07-30 21:19:02 -07:00
Wink Saville
f97b6e218a am 9f476fd0: Merge "Add a symbol to represent MNC=0"
* commit '9f476fd08079701d1ad0f7c591667b6e673ed38e':
  Add a symbol to represent MNC=0
2013-07-30 12:28:02 -07:00
Mathias Agopian
ad678e18b6 single buffer mode for BufferQueue
Bug: 9891035
Change-Id: Id1ab5f911a6dc4c1d8235e65775b3d3635231ad4
2013-07-26 18:45:02 -07:00
Mathias Agopian
c2414bb098 get rid of HAL pixelformats 5551 and 4444
Change-Id: I39409103144c1ba09078c4ddc323a58987fb09ea
2013-07-26 15:43:33 -07:00
Johan Redestig
8df483c1fd Add a symbol to represent MNC=0
Bug: 7170488
Change-Id: Icfd39fd0c739216e89446252ea0e7ceba6f002c6
2013-07-26 18:39:09 +00:00
Mathias Agopian
5773d3f5b2 get rid of PixelFormatInfo and simplify things
Change-Id: I025a362cc12d5b9b794fac14be500e25aab65396
2013-07-25 19:24:31 -07:00
Mathias Agopian
1fe854f678 get rid of PIXEL_FORMAT_A_8
Change-Id: I4e409a69c01b95b48f20112084dd927e2d043407
2013-07-25 17:25:05 -07:00
Todd Poynor
87bf0d97be add libbatteryservice
IBatteryPropertiesListener is used by clients such as BatteryService to
receive notifications of changed battery/power status (from healthd).

IBatteryPropertiesRegistrar manages registrations of
IBatteryPropertiesListener clients.

Add BatteryService native header with defines from BatteryManager, and
class BatteryProperties to pass battery/power status around.

Change-Id: I44e2736e503b586794097b7b9d31d07fefd9b15a
2013-07-25 01:57:32 +00:00
Alex Ray
194bc4ff7b libutils: give BasicHashtableImpl a virtual destructor
Change-Id: I4ec590b060d732af5fe525670becbe778684247b
2013-07-24 00:21:57 -07:00
Alex Ray
ea3d82cfef utils: move thread enums to system/core
Change-Id: Ia97963cc9acf8661d01355786f5e7e7bf54581c2
2013-07-23 17:23:36 -07:00
Colin Cross
4ee6cbebfe Merge "libbinder: include sys/uio.h instead of cutils/uio.h" 2013-07-23 23:35:48 +00:00
Colin Cross
f5f8fa0bbd libbinder: include sys/uio.h instead of cutils/uio.h
libbinder is only built for the target, where bionic will provide
uio, so it does not need to include the libcutils wrapper around
uio for windows.

Change-Id: Ifc2dd353bf7ed51bf08ec0ae91c43b12830f94ba
2013-07-23 14:52:34 -07:00
Michael Wright
0415d63b1a Add controller numbers for gamepads / joysticks
Change-Id: I5294aabbadb836a6a4c7ce76a670abcf50c1f885
2013-07-22 16:37:28 -07:00
Mathias Agopian
bdce817047 Merge changes Ic45929f3,Ic63f4f96,I1e703d36,I691f9507
* changes:
  make sure to reset the framenumber when a buffer is marked FREE
  Make ANW.setSwapInterval(0) work again
  BuffferQueue disconnect is now always asynchrnous
  BufferQueue improvements and APIs changes
2013-07-20 01:02:47 +00:00
Mathias Agopian
7cdd786fa8 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
2013-07-19 17:38:01 -07:00
Michael Wright
e5bb2a45e0 Merge "Add input device property for buttons under touchpads" 2013-07-19 22:45:38 +00:00
Mathias Agopian
a3fbda3cef BuffferQueue disconnect is now always asynchrnous
we tag queued buffers with the "bufferqueue cannot block" flag
and use that bit to discard a buffer in the queue by new ones
comming in. this allows us to remove the buffer queue drain in
disconnect while maintaining the right behaviour if it gets
connected again (since each buffer remembers how it was enqueued).

Change-Id: I1e703d363a687b70b19ba49cef32213116e8bd3f
2013-07-18 22:28:18 -07:00
Mathias Agopian
595264f1af 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
2013-07-18 22:28:18 -07:00
Dianne Hackborn
1962f65137 Merge "Follow framework change to track started ops by proc." 2013-07-18 18:13:14 +00:00
Dianne Hackborn
913b63d235 Follow framework change to track started ops by proc.
Change-Id: Ibbce3bf6556f45751c74bab045b46377e56bff9b
2013-07-17 17:26:15 -07:00
Lajos Molnar
3ec92e1ad7 Merge "Clarify some android-specific OMX extensions for native buffers." 2013-07-17 22:30:28 +00:00
Lajos Molnar
5f39f6043d Clarify some android-specific OMX extensions for native buffers.
Clarify the use of enableAndroidNativeBuffers and
storeMetaDataInBuffers extensions.

Change-Id: Ia1ca4a262525de74f133619f92ef6ba8271a6f72
Signed-off-by: Lajos Molnar <lajos@google.com>
2013-07-17 15:12:27 -07:00
Jean-Baptiste Queru
b6a0ca7276 Tweaks for forward compatibility
Change-Id: Id6a96521b3fd5bd2a034fe89cfa4d3a179a66328
2013-07-16 09:38:03 -07:00
Mathias Agopian
7f069d79e7 Merge "always pass the BufferQueue explicitely to consumers" 2013-07-16 02:17:58 +00:00
Jeff Brown
7556c37b1c Merge "Completely remove skia dependency from libinput." 2013-07-16 01:49:55 +00:00
Jeff Brown
313eff7bb7 Completely remove skia dependency from libinput.
Including the tests...

Change-Id: I6ec8f1a5ae7e7514831d7e3b430b3b37b0841b92
2013-07-15 18:49:00 -07:00
michaelwr
174c26045c Merge "Add a keycode to switch audio tracks (2/2)" 2013-07-16 01:38:36 +00:00
Jeff Brown
5a2f68e5a5 Fix PDK build.
Quick hack to remove Skia dependency from libinput.

Change-Id: Ibaf2e312236f5e3f7251fa903ce381456a77467c
2013-07-15 17:31:13 -07:00
Jeff Brown
40c9e0a398 Add skeleton of input flinger.
Change-Id: I7f25080e446d4d3d9de9b18fe432a09bc751e0d9
2013-07-15 16:03:14 -07:00
Jeff Brown
ada11c5e67 Make getCallingUid/Pid const.
Change-Id: I1853b21eaa45d85274189dfd72f73fec48d0d6b7
2013-07-15 15:08:39 -07:00
Mathias Agopian
8f938a5338 always pass the BufferQueue explicitely to consumers
Change-Id: I883b0a7b19d8e722f9ab714ba6f49e658b02ca86
2013-07-12 22:06:26 -07:00
Jaekyun Seok
8d06dcf9c6 Add a keycode to switch audio tracks (2/2)
A key to switch audio tracks is general on media devices like blu-ray.

Bug: 9728155
Change-Id: I13ebbc64321f3cf10370f9a605f3d94ea0d16d6d
2013-07-12 17:23:45 +09:00
Michael Wright
931fd6dee7 Add input device property for buttons under touchpads
Bug: 8990644
Change-Id: I6df5fb9e11199173d62523928082db428af55394
2013-07-11 15:24:09 -07:00
Andy McFadden
c33f9a76b5 Merge "Pay attention to buffer timestamps" 2013-07-11 14:40:45 +00:00
Andy McFadden
1585c4d9fb 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
2013-07-10 15:38:40 -07:00
Mathias Agopian
ba02cd2f6c improve sensorservice's dumpsys
it now displays the reported trigger mode properly, as well as
the number and type of the last received data

Change-Id: I2ff64b32ab71f1332bc2e09671c8c02bb9550490
2013-07-08 15:44:41 -07:00
Mathias Agopian
cf90bad477 Merge "simplify some unnecessary complex code" 2013-07-08 22:34:55 +00:00
Mathias Agopian
7438fd1a01 simplify some unnecessary complex code
getSensorType() ran in O(n) instead of O(1). fix that.

Change-Id: Idcf29e46fc34db32604a0d8e5a9156486783b74f
2013-07-08 12:50:39 -07:00
Glenn Kasten
06b6aed2f1 Merge "mv libcpustats from frameworks/native to frameworks/av" 2013-07-08 15:40:51 +00:00
Todd Poynor
8d96cab8bf binder: add polling / single-threaded operation
This is currently safe to do only for processes that disallow any binder
threads to be created: setThreadPoolMaxThreadCount(0).

Change-Id: I8a27f3cf26f4d51edb7f222af487ac256cbcab65
2013-07-04 00:19:09 +00:00
Jean-Baptiste Queru
f4f2bd21d5 Tweak for forward compatibility
Change-Id: I6be78b607789c469f4ffad849a493d78e2539450
2013-07-02 11:33:43 -07:00
Jeff Brown
5912f95d26 Move input library code from frameworks/base.
Change-Id: I4983db61b53e28479fc90d9211fafff68f7f49a6
2013-07-01 20:11:26 -07:00
Lajos Molnar
bfc41519ce Merge "Add video extension OMX_VIDEO_CodingVP9 to support VP9 decoder." 2013-06-25 22:07:39 +00:00
Andreas Huber
00e595f10f Fix includes in HardwareAPI.h to be absolute and not relative
(but using system header syntax)

Change-Id: I504c5c5330ddd1e3b3d2fb4760b0235a4fda84d8
2013-06-25 10:08:42 -07:00
hkuang
5195e0808b Add video extension OMX_VIDEO_CodingVP9 to support VP9 decoder.
Change OMX_Video_CodingVPX to OMX_VIDEO_CodingVP8 in order
to be consistant with official OMX_VideoExt.h and avoid the
confusion with new extension OMX_VIDEO_CodingVP9.

This change needs to be merged with changes in frameworks/av to
avoid build break due to header change.

Change-Id: Iaa2dbafa76dc24ad3cf52a9bf3dee312e3c64bfa
2013-06-24 13:45:15 -07:00