Commit Graph

1566 Commits

Author SHA1 Message Date
Aravind Akella
be451b57b9 Merge "Fix the arguments to memcpy." into mnc-dev 2015-05-09 00:17:40 +00:00
Aravind Akella
08f04bf36c Fix the arguments to memcpy.
Change-Id: Ieaee26f46f43a9d412537047566178985370198b
2015-05-08 15:59:23 -07:00
Dan Stoza
98a13a1475 Merge "SF: Apply pending transactions to new sidebands" into mnc-dev 2015-05-08 16:32:27 +00:00
Ajay Dudani
4e3e30c2d5 surfaceflinger: Fix range check for getFormat
Fix potential buffer overflow error in getFormat with indices
greater than MAX_HWC_DISPLAYS.

Change-Id: I5e5b69d8d043e900f5e33ca9a62e94ae5f857b68
2015-05-07 13:23:32 -07:00
Dan Stoza
12e0a27aa3 SF: Apply pending transactions to new sidebands
When a Layer's sideband stream is set, apply any pending transactions.
Otherwise they would never be applied since sideband streams don't
trigger updates by pushing new buffers.

Bug: 20125898
Change-Id: I0c7a91cdf84e6205801f4ab64eee0b09e4c0b3e0
(cherry picked from commit 3b04e1383eca6cb1d43ebe23a421c427007690c7)
2015-05-05 16:05:32 -07:00
Sasha Levitskiy
b0474e78df SensorServiceTest: Fix build, warnings.
Change-Id: I3ed5247d3eb6c43d185049cf9011c2ee01b5662e
Signed-off-by: Sasha Levitskiy <sanek@google.com>
2015-05-02 21:03:44 -07:00
Svetoslav
c28fe8f5c5 Merge "Add body sensors app op - framework native" into mnc-dev 2015-05-01 23:10:56 +00:00
Svetoslav
b412f6e203 Add body sensors app op - framework native
Change-Id: I727a2bb1e28ae9158f2df9c74dd0aee977dfd47f
2015-05-01 13:51:45 -07:00
Dan Stoza
ecc504043f SurfaceFlinger: Fix PTS on stale buffers
SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was
getting out of sync for a few reasons. This change fixes these by
doing the following:

- Adds a check to re-synchronize the shadow copy every time we
  successfully acquire a buffer by first dropping stale buffers before
  removing the current buffer.
- Avoids trying to perform updates for buffers which have been rejected
  (for incorrect dimensions) by SurfaceFlinger.
- Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the
  consumer to notify the BufferQueue that it is maintaining a shadow
  copy of the queue and prevents it from dropping so many buffers
  during acquireBuffer that it ends up returning a buffer for which the
  consumer has not yet received an onFrameAvailable call.

Bug: 20096136
Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f
(cherry picked from commit 2e36f2283f)
2015-05-01 12:23:44 -07:00
Dan Stoza
7b2fc93007 Merge "SurfaceFlinger: Limit to 4k Layers" into mnc-dev 2015-04-30 22:12:46 +00:00
Dan Stoza
7d89d06a6f SurfaceFlinger: Limit to 4k Layers
Sets a limit of 4k Layers which SurfaceFlinger will allow to be in
existence at any given time. An attempt to create Layers in excess of
this limit will fail with NO_MEMORY.

Bug: 20674586
Change-Id: I2dfaf59643d826f982b2fa44e8a9ed643176d972
(cherry picked from commit e7f8dde3f3)
2015-04-30 15:10:00 -07:00
Dan Stoza
aa4041f70a SurfaceFlinger: Fix integer overflow in Mesh ctor
Performs range checking on the inputs to Mesh::Mesh() before allocating
the storage array.

Bug: 20674682
Change-Id: I4fc918a8c312d967dd6d9f91a098b2e0a7081027
(cherry picked from commit ab79e33ef3)
2015-04-30 14:57:41 -07:00
Alan Viverette
3acd9f1d8f Remove gamma correction from color correction shader
Gamma correction was incorrectly skewing both color inversion and
Daltonization, which resulted in washed-out colors.

Bug: 20346301
Change-Id: I34d879f902c3be115b2d23f09c3ed3902799759e
2015-04-28 17:15:57 -07:00
Aravind Akella
cc60dc2128 Merge "Enable data injection mode in SensorService." 2015-04-25 01:40:35 +00:00
Dan Stoza
6febf6c150 am 5d10894c: am ef47c080: am 958f5011: Merge "libgui: Allow an IGBProducer to disable allocation"
* commit '5d10894c9d547449cf231f02b736da9dfdebec11':
  libgui: Allow an IGBProducer to disable allocation
2015-04-24 16:33:38 +00:00
Dan Stoza
5d10894c9d am ef47c080: am 958f5011: Merge "libgui: Allow an IGBProducer to disable allocation"
* commit 'ef47c080fd0e7fb8bf1fc4b0ecadae277a22f2cf':
  libgui: Allow an IGBProducer to disable allocation
2015-04-24 16:12:30 +00:00
Aravind Akella
a9e6cc3870 Enable data injection mode in SensorService.
Change-Id: I0cd32a017235c31c54816e4a357ce3b988350ed6
2015-04-23 17:42:37 -07:00
Dan Stoza
9de7293b0a libgui: Allow an IGBProducer to disable allocation
Adds a new method IGBP::allowAllocation, which controls whether
dequeueBuffer is permitted to allocate a new buffer. If allocation is
disallowed, dequeueBuffer will block or return an error as it
normally would (as controlled by *ControlledByApp).

If there are free buffers, but they are not of the correct dimensions,
format, or usage, they may be freed if a more suitable buffer is not
found first.

Bug: 19801715
Change-Id: I0d604958b78b2fd775c2547690301423f9a52165
2015-04-23 15:28:12 -07:00
Dan Stoza
c7a3cd6228 am 423b40f7: am 368270fd: am de5c15b8: Merge "SF: Always perform sideband transactions"
* commit '423b40f7bd004a8ab5bca887e3855cd20c6bcc28':
  SF: Always perform sideband transactions
2015-04-23 02:17:42 +00:00
Dan Stoza
423b40f7bd am 368270fd: am de5c15b8: Merge "SF: Always perform sideband transactions"
* commit '368270fd6d4681d2de5502ffc6194ade9a13e65a':
  SF: Always perform sideband transactions
2015-04-23 00:17:59 +00:00
Dan Stoza
9e9b044554 SF: Always perform sideband transactions
On normal Layers, we defer applying resize transactions until a buffer
of the correct size arrives. This breaks with sideband streams, because
buffers are not seen by SurfaceFlinger. This change applies
transactions immediately for Layers which have a sideband stream
attached to avoid that problem.

Bug: 20428254
Change-Id: I379d8aaef460d467cdf8432764b4a504928fb65a
(cherry picked from commit c300b8b506536e1bf94ffd8a3b75d46e776923e0)
2015-04-22 16:53:15 -07:00
Michael Wright
e893dddb3f Merge "Default to TOOL_TYPE_STYLUS for external stylus events." 2015-04-21 21:46:32 +00:00
Michael Wright
5e17a5de88 Increase stylus data timeout.
Temporarily increase the stylus timeout while we figure out where the
delay in BT information is coming from.

Change-Id: I27ab5a4db4ad14358c6e6803961612420371fce9
2015-04-21 22:45:13 +01:00
Michael Wright
45ccacf937 Default to TOOL_TYPE_STYLUS for external stylus events.
Change-Id: Ife6a7c4802e8b1ec1ff8445e639f8a6d90a00592
2015-04-21 22:41:15 +01:00
Michael Wright
e2434fecb9 Revert "Increase stylus data timeout."
This reverts commit 8b0673ce0c.
2015-04-21 22:37:02 +01:00
Michael Wright
8b0673ce0c Increase stylus data timeout.
Sometimes stylus data will be delayed by 30 - 40ms. By increasing the
timeout we pretty much always pick up stylus data and the touch
latency feels surprisingly small.

Change-Id: I39f5b9037ce0444b1e957149d3f1c3a3137804cb
2015-04-21 15:06:43 +01:00
Michael Wright
4af18b90c1 Always update external stylus state.
This prevents us from dropping any states (namely the pressure
transition from non-zero to zero) if we get the touch up before we
get the stylus data.

Change-Id: Ifc198628d35b7079dc5ec23d81f9681d122757a0
2015-04-20 22:03:54 +01:00
Michael Wright
b85401d4ba Mark all InputReaderContext methods as pure virtual
Also, fix the build.

Change-Id: I45d3daa8c0710b2f9421e8ffd011d2d39c05e030
2015-04-17 18:35:15 +01:00
Michael Wright
842500e146 Fuse stylus and touch screen data.
TODO: Ensure we dispatch new pressure and button data when stylus
is stationary.

Change-Id: I10a665a9b81ff4b9acd01bf72f0fc2e0c2abc203
2015-04-17 16:37:16 +00:00
Tim Kilbourn
e5364c8c02 Add method stubs for input device properties.
Change-Id: Icd785cb55ae2b225102fa249240837a91a41aae3
2015-04-16 11:12:49 -07:00
Dan Stoza
d5296b342e am 66dc4ee3: am b47584f4: am 2e398e64: Merge "SF: Permit changing DispSync offsets at runtime"
* commit '66dc4ee3729c4e6fea624805a1e58843ce920477':
  SF: Permit changing DispSync offsets at runtime
2015-04-15 22:16:03 +00:00
Dan Stoza
66dc4ee372 am b47584f4: am 2e398e64: Merge "SF: Permit changing DispSync offsets at runtime"
* commit 'b47584f46bd850723679d9212f66df1951bbdf5d':
  SF: Permit changing DispSync offsets at runtime
2015-04-15 21:54:30 +00:00
Dan Stoza
91dea34652 am 19f06de0: am 40b2a8b4: am e7d20eb0: Merge "SurfaceFlinger: Pass surface damage to HWC"
* commit '19f06de0930e0f741ed113c37faf306fceee39bd':
  SurfaceFlinger: Pass surface damage to HWC
2015-04-15 21:42:44 +00:00
Dan Stoza
19f06de093 am 40b2a8b4: am e7d20eb0: Merge "SurfaceFlinger: Pass surface damage to HWC"
* commit '40b2a8b48c8b760699bde3f29e3dbee76015cc98':
  SurfaceFlinger: Pass surface damage to HWC
2015-04-15 20:57:33 +00:00
Dan Stoza
db4ac3ce63 SF: Permit changing DispSync offsets at runtime
This modifies EventThread such that its phase offsets for both
Choreographer and SurfaceFlinger may be modified at runtime. It also
plumbs this functionality up to the SurfaceFlinger debug interface so
that it is possible to rapidly test different offsets without
restarting the framework.

Change-Id: I426873f8553f931250dfebc9a8a4a78e9f1f4309
2015-04-15 13:56:28 -07:00
Dan Stoza
ee44edd0ac SurfaceFlinger: Pass surface damage to HWC
Passes the surface damage from the incoming SurfaceFlingerConsumer
BufferQueue down to the hardware composer HAL interface, if the
HWC version number is 1.5 or greater.

Bug: 11239309
Change-Id: Ic4305210593874a8d6deba3319055b2b8c57e926
2015-04-15 13:20:01 -07:00
Jeff Brown
3bfe51d790 Bypass surface flinger permission check for calls from system.
Early during the boot, before activity manager is ready to handle
permission checks, the system needs to be able to change the display
state.  Added a hardcoded exemption for AID_SYSTEM (which already
has permission to talk to surface flinger anyhow).

Bug: 19029490
Change-Id: I6222edcab8e394e5fb6adf7a982be446e4505a1e
2015-04-10 20:26:51 -07:00
Tim Kilbourn
063ff53d0b Pass through availability of audio mic for input devices.
Bug: 15374820
Change-Id: Id2ca6da10165e3a887ebfbb18f663a3bf316ac79
2015-04-09 10:02:16 -07:00
Eino-Ville Talvala
1c2001efcf Cherry-pick dataSpace and BufferItem changes
Add dataSpace to buffer queues; remove old format enums.
(cherry picked from commit 82c6bcc970)

libgui: Prepare for IGBC::BufferItem removal
(cherry picked from commit cf3834db10)

SurfaceFlinger: Stop using IGBC::BufferItem
(cherry picked from commit 11611f9be5)

Change-Id: Ic2e4770b916d2d1477e5ce98c4b49a0072ea03ff
(cherry picked from commit 6c45010175)
2015-04-07 11:11:43 -07:00
Tim Kilbourn
943f0a45d0 Merge "Stub implementations of HAL usage callbacks." 2015-03-31 20:22:44 +00:00
Tim Kilbourn
62535f0936 Merge "Use EPOLLWAKEUP properly." 2015-03-27 16:24:15 +00:00
Tim Kilbourn
3447df165f Use EPOLLWAKEUP properly.
We were trying to use it only when it wasn't supported.

Bug: 19937342
Change-Id: Id35aef9ad84f101f7ada2eb87fb91e5c5e2b3357
2015-03-26 14:12:42 -07:00
Aravind Akella
4949c50372 Support restricted mode in SensorService.
In restricted mode, only CTS tests can register for sensors or call flush() on them. The requests
from other applications will be ignored.

Change-Id: Ieb923df3e0cfe3390fe2d052af776da79589744b
2015-03-24 15:41:35 -07:00
Jesse Hall
5b20fd0882 am 28c03cca: am c2a5b469: am a527c07b: Merge "Fix mistake using width instead of height."
* commit '28c03cca9835957f6e304b18358243b184fa46f8':
  Fix mistake using width instead of height.
2015-03-24 21:20:24 +00:00
Jesse Hall
28c03cca98 am c2a5b469: am a527c07b: Merge "Fix mistake using width instead of height."
* commit 'c2a5b469a311891d8e3025aea0e4b348044dfaeb':
  Fix mistake using width instead of height.
2015-03-24 21:06:56 +00:00
Jesse Hall
c2a5b469a3 am a527c07b: Merge "Fix mistake using width instead of height."
* commit 'a527c07b8d078f7da1114b7055f65b479a148729':
  Fix mistake using width instead of height.
2015-03-24 20:59:51 +00:00
Christopher Ferris
0e7497957a Fix mistake using width instead of height.
Found by rodrigo.chiossi@intel.com.

Change-Id: I49d590ed39f6b47ba58a77a75d66b2964ea1cb1d
2015-03-23 14:37:26 -07:00
Dan Stoza
11611f9be5 DO NOT MERGE SurfaceFlinger: Stop using IGBC::BufferItem
Switches all uses of IGraphicBufferConsumer::BufferItem (and
BufferQueue::BufferItem) to the BufferItem in libgui. Depends on
frameworks/native I699ed0a6837076867ca756b28d1ffb2238f7a0d9.

Cherry pick of I187b3a7d05196b6289596afac8fb9a9d4aebff76

Change-Id: I5bc79fb96b6cba6021af64b20890967aa3b7fcbf
2015-03-19 13:59:12 -07:00
Eino-Ville Talvala
82c6bcc970 DO NOT MERGE Add dataSpace to buffer queues; remove old format enums.
- Wire up new dataSpace parameter through buffer queue stack
- Update tests to include the parameter
- Switch eglApi to using dataSpace to indicate sRGB gamma/linear
  difference
- Remove RAW_SENSOR in favor of RAW16
- Remove use of sRGB format enums
- Add default dataspace to buffer queue core
- Add query for default dataspace

Cherry pick of I070bd2e7c56506055c419004c29e2e3feac725df

Change-Id: I461952389c18051176c6b75e664f20ad369f5760
2015-03-19 13:56:00 -07:00
Dan Stoza
7ab0d37dbf am 3d5efd55: Merge "libgui: Enable -Weverything and -Werror"
* commit '3d5efd553ea433e81464b0b817b3455716884bb0':
  libgui: Enable -Weverything and -Werror
2015-03-19 17:19:28 +00:00