4446 Commits

Author SHA1 Message Date
Alex Sakhartchouk
73797e97a8 Changing rsg to rs where functions don't rely on graphics.
Change-Id: I92a93d7a520b4a5416be88c7c05c2f8d3cc89243
2012-03-21 10:21:08 -07:00
Alex Sakhartchouk
79c23f0f88 Breaking up rs headers by logical components.
Change-Id: I2d23eec0277b1136852b8a7acb61aecf6f699a7d
2012-03-21 09:58:15 -07:00
Chet Haase
bdd896c264 Enable DisplayList properties
This CL simply enables DisplayList property functionality. The code for
this feature is already there, but it's been disabled by default pending further
testing and analysis. This change sets these build-type flags to true
so that all hw-accelerated apps will now use DisplayList properties by default.

In particular, this feature enables a fast-path for changes that affect the
handful of View properties involved in animations (alpha, translationX, etc.).
Setting these properties now gets propagated to the native DisplayList associated
with the View, avoiding costly recreation of the SDK-level DisplayList and
also enabling faster invalidation of the view hierarchy.

Change-Id: Ic99c8f28fa9183f2e54e9e4860b333eb9c540f7c
2012-03-19 13:40:49 -07:00
Jason Sams
55ba267c09 Merge "Add prop to force cap compute threading." 2012-03-16 10:13:06 -07:00
Chet Haase
4bf8b20995 Merge "Optimizing DisplayList properties" 2012-03-16 09:21:14 -07:00
Chet Haase
9d1992deae Optimizing DisplayList properties
DisplayList properties are still disabled default (flags in View.java
and DisplayListRenderer.h). When they are enabled, and when a View has
a DisplayList, invalidations due to property changes are now optimized
to avoid causing DisplayList recreation. This eliminates the drawing step
of invalidation (due to changes in these properties), only requiring
issuing the previously-created DisplayList to the GL renderer. Invalidation
is slightly faster (less overhead as we walk up the hierarchy), getDisplayList()
is potentially much faster (going down to ~0ms), depending on the complexity
of the View being redrawn and the size of the invalidated hierarchy.

Change-Id: I57587d5b810c3595bdd72a6c52349c2a3d1bdf25
2012-03-16 09:14:52 -07:00
Wu-cheng Li
8d3c318b2d Merge "Add a new camera open API that allows taking the ownership." 2012-03-15 21:23:24 -07:00
Jason Sams
2791429451 Add prop to force cap compute threading.
bug=6124869

Change-Id: Ibf2cc388f3906cea2741382ff5e522e3b416393c
2012-03-15 19:18:03 -07:00
Romain Guy
acdd4b9c4b Set the default text length to -1, not 1
Change-Id: Iccf6f8366c0b659ba7c90df99ae05ebc5d81fcbb
2012-03-15 14:36:52 -07:00
Wu-cheng Li
a1c41e13b5 Add a new camera open API that allows taking the ownership.
The purpose is to let face unlock always get the camera
successfully. What happened was the camera applications may
have opened the camera in onResume under the lock screen.
This API lets face unlock take the camera from the camera
application. A new permission will be added, so other
applicatoins won't be able to take the camera from the face
unlock.

bug:5584464

Change-Id: Ib3d9dcbc2161815b68db42327dc01148453704c6
2012-03-15 14:50:48 +08:00
Glenn Kasten
81fe4fbd6b Merge "AudioFlinger playback thread CPU measurement in Hz" 2012-03-14 16:28:38 -07:00
Glenn Kasten
f57e2bceb9 AudioFlinger playback thread CPU measurement in Hz
Log statistics on CPU usage in Hz in addition to wall clock time

Use CPU statistics for all playback threads, not just MIXER
(but they are disabled by default by a compile-time debug macro).

ThreadCpuUsage library:
 - Move statistics out of the library and leave that up to the caller
 - Add API to determine a CPU's frequency

Change-Id: Ia1011123146e641fcf210ef26e78ae2b4d3b64ad
2012-03-14 16:03:01 -07:00
Jason Sams
d1c8c1292c Fix minor C++ api issues.
Change-Id: I30e12938be5da52b2d952db57a51b4deb5e27239
2012-03-14 15:36:02 -07:00
Romain Guy
67c7377ef1 Merge "Correctly compute the number of bytes written by each op. Bug #6157792" 2012-03-13 18:02:55 -07:00
Romain Guy
390f882f89 Correctly compute the number of bytes written by each op.
Bug #6157792

Previously, DisplayListRenderer would compute the number of bytes
written after a drawing op by looking at the difference between
the start pointer of the command stream and the end pointer of
the command stream. The SkWriter class used to record the commands
stream allocates blocks of storage which would cause a crash when
a command spanned two blocks.

Change-Id: I4d79d3feeb6d72d9d4e6ab05ecebd72d004be56c
2012-03-13 18:00:10 -07:00
Jason Sams
29000644ae Merge "Fix test makefile" 2012-03-13 16:54:11 -07:00
Jason Sams
759eb4e8f0 Fix test makefile
bug=5972398

Change-Id: I9298e08220863eecf5c87047a05d7aa146a4c060
2012-03-13 16:22:46 -07:00
Jeff Brown
9dc348d756 Merge "Fix spurious ANRs in native activities." 2012-03-13 15:15:48 -07:00
Jeff Brown
2b6c32ca41 Fix spurious ANRs in native activities.
Some native activities experienced ANRs when the input consumer
deferred an input event due to client-side batching.  If the
input channel was fully emptied then the client had no way of
knowing that it should wake up to handle the deferred input event.

This patch also fixes some lock issues in the native activity
input queue implementation.  In at least one error case, it
was possible for a function to exit without releasing the lock.

Bug: 6051176
Change-Id: I4d9d843237e69b9834f8d8b360031b677fcab8c3
2012-03-13 15:00:09 -07:00
Chet Haase
491189f6bb Fix garbage deref with DisplayList property structures
This is the real fix to issue 6158892. We currently delete
transform/camera structures at DisplayList destructor time, if these
structures are not NULL. We set the fields to NULL in an init() method
called (eventually) by the constructor. But it is possible for the object
to be destroyed before that init code is called, resulting in the deref
bug reported. The fi is to set these structures to NULL directly in the
constructor.

Issue 6158892i: Device runtime restarts frequently

Change-Id: Ibfa0f9314767eed6fd51f4ec7edc0d0edd5fdd0f
2012-03-13 11:42:34 -07:00
Romain Guy
3c9d9c18b4 Merge "Follow the include style used elsewhere in the library" 2012-03-13 11:19:26 -07:00
Romain Guy
d5a85fb63d Follow the include style used elsewhere in the library
Change-Id: I14aebdaeb04b6f4c611153ece4ac1f6ad9bfc15f
2012-03-13 11:18:20 -07:00
Chet Haase
866ed817d0 Fix garbage deref in DisplayList structures
Issue #6158892: Device runtime restarts frequently

Change-Id: I4e6afaaf9ac66d6846caf0ed82ea67163d8b15c2
2012-03-13 11:13:36 -07:00
Chet Haase
a1cff5043d Handle view properties at the native level
Basic functionality of handling View properties (transforms,
left/right/top/bottom, and alpha) at the native DisplayList level.
This logic is disabled for now (via compile-time flags in View.java and
DisplayListRenderer.h) as we continue work on it (there is no advantage
to the new approach until we optimize invalidation and rendering paths
to use the new code path).

Change-Id: I370c8d21fbd291be415f55515ab8dced6f6d51a3
2012-03-12 15:41:48 -07:00
Stephen Hines
3c4b03d484 Merge "Fix argument passing with dimLOD." 2012-03-12 14:45:32 -07:00
Stephen Hines
d091526841 Fix argument passing with dimLOD.
BUG=6152130

Change-Id: I5c857b692af8ec45e4cbef8140c44d72aec6600e
2012-03-12 14:42:05 -07:00
Romain Guy
6e0621794d Merge "Turn down the number of glGetError() calls." 2012-03-12 12:58:21 -07:00
Romain Guy
3fe4eb9c60 Turn down the number of glGetError() calls.
glGetError() was invoked every time a display list was updated. This
was unnecessary since display list updates do not execute OpenGL code.

Change-Id: Ia0a75a65ccf2a4701fb3a828848cd0c42f256c6c
2012-03-12 12:49:41 -07:00
Alex Sakhartchouk
e1dd94b1a0 Merge "Split off driver code into a separate static library." 2012-03-12 09:52:47 -07:00
Romain Guy
772a73963d Merge "Don't bind data to missing uniforms" 2012-03-09 17:38:11 -08:00
Romain Guy
55fd2c9b2e Don't bind data to missing uniforms
Change-Id: Ib9d1f14eb0bef04e0910baa4eaf3e49cce81c0ce
2012-03-09 17:37:29 -08:00
Alex Sakhartchouk
50159b1f6a Split off driver code into a separate static library.
Change-Id: I055a6d7aecf3663e5e399a0ddee068cc33eca666
2012-03-09 15:04:23 -08:00
Alex Sakhartchouk
6df8876f79 Merge "More header untangling." 2012-03-09 13:31:41 -08:00
Dianne Hackborn
6c8683987d Merge "Fix issue #6054627: resource matching issue of size qualifiers" 2012-03-09 13:26:35 -08:00
Dianne Hackborn
5c6dfeb1fb Fix issue #6054627: resource matching issue of size qualifiers
Resource matching would incorrectly identify two configs with the
same value as better than.

Change-Id: I7297dcf58fd5a43f1a5ff53bb093eeeb2cad090f
2012-03-09 13:17:17 -08:00
Alex Sakhartchouk
bedc023170 More header untangling.
Change-Id: I090943775cbda8d9515cdb484957f6b05d5b1799
2012-03-09 10:47:27 -08:00
Alex Sakhartchouk
a7e6f3a704 Merge "Starting to untangle header spaghetti." 2012-03-09 09:55:30 -08:00
Alex Sakhartchouk
137ccbb8de Starting to untangle header spaghetti.
Change-Id: I31f38d05dc8b55c659e8c7e9c0a87b94b9ac1db5
2012-03-09 09:24:39 -08:00
Alex Sakhartchouk
c31424e6c5 Merge "Moving lod's into hal struct." 2012-03-09 08:43:26 -08:00
Derek Sollenberger
d7978a2821 am 34ccd7af: Merge "Add missing includes for threads.h"
* commit '34ccd7af4216f571c2f88b32fea8bfed8ef0baab':
  Add missing includes for threads.h
2012-03-08 17:43:21 -08:00
Alex Sakhartchouk
3b88729d2b Moving lod's into hal struct.
Change-Id: Iaec34fea7c002d7948d91df6b7a1af7f832f74ea
2012-03-08 14:52:36 -08:00
Mathias Agopian
8c79817dc6 remove files that moved to frameworks/native
Change-Id: I140d291e520097b1148930f736823650e08488f7
2012-03-07 19:36:08 -08:00
Mathias Agopian
08965ec67a fixup hardcoded include paths for new project
Change-Id: Id443ec5c99bb4d7653905f1be1f72a029e0cf087
2012-03-07 19:34:36 -08:00
Jamie Gennis
ac3c33745f Merge "BufferQueue: fixed issues with buffer slots not available" 2012-03-07 15:48:11 -08:00
Mathias Agopian
fc004c1350 Merge "attempt to fix a deadlock in SurfaceTextureClient::disconnect" 2012-03-07 14:18:54 -08:00
Daniel Lam
c930cf3cf3 BufferQueue: fixed issues with buffer slots not available
Bug: 6120953
Change-Id: Ief43f042ee9e1512e86fff8632a1c9dd31bdff35
2012-03-07 14:15:34 -08:00
Glenn Kasten
ff249c0dc8 Merge "Remove references to sched_policy.h in RS" 2012-03-07 07:16:46 -08:00
Mathias Agopian
3e964c55ac attempt to fix a deadlock in SurfaceTextureClient::disconnect
- condition wasn't signaled if an error happened between acquire and release
- also replace signal with broadcasts

Bug: 6109450
Change-Id: Iaf9371b829f772f559daae42e06d4dbd9505d6a0
2012-03-06 18:26:54 -08:00
Glenn Kasten
66199cf939 Merge "Remove obsolete references to sched_policy.h" 2012-03-06 08:17:43 -08:00
Derek Sollenberger
ffa09ece76 Add missing includes for threads.h
The missing header was being transitively included through a
Skia header which is being removed.

Change-Id: I5a65bae076027951fe07d1e7eecd4732124fb0e4
2012-03-06 10:11:27 -05:00