summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-10-20Wait for buffers to drainandroid-cts-4.4_r4android-4.4_r1.2.0.1android-4.4_r1.2android-4.4_r1.1.0.1android-4.4_r1.1android-4.4_r1.0.1android-4.4_r1android-4.4_r0.9kitkat-releasekitkat-cts-releaseAndy McFadden
When a BufferQueue producer disconnects and reconnects, we retain the previously-queued buffers but empty the slots. This allows the number of queued buffers to grow without limit. The low-memory killer does not approve. Bug 11069934 Change-Id: Ia2eaa954c7a3904b54209a3701dba01689e204d8
2013-10-15merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-15merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-15SurfaceFlinger: give SF its own vsync phaseJamie Gennis
This change allows SurfaceFlinger to run at a different vsync phase offset from that used by external listeners. Bug: 11175503 Change-Id: I561c53a5659fa6dc1e3e4ae30340f3c1a6adceb4
2013-10-15SurfaceFlinger: Add EventControlThreadJamie Gennis
This change adds a new thread for calling HWComposer's eventControl asynchronously. The DispSync-based vsync approach ends up enabling and disabling HWComposer's vsync callbacks at arbitrary times, and some HWComposer implementations do not have these calls optimized. Bug: 11175503 Change-Id: I719be82bd200b391c61d40863b991c7b59acdfd6
2013-10-15Merge "Disable hardware vsync when blanking the screen" into klp-devJesse Hall
2013-10-15Merge "SensorService Flush API bug fix." into klp-devAravind Akella
2013-10-15merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-14SensorService Flush API bug fix.Aravind Akella
SensorService is dead locking itself when flush is called on older devices which don't support batching. mConnectionLock is acquired twice. Change-Id: I5c25585bfb2b396df4b05826a9cba1da7997a3ee
2013-10-14Disable hardware vsync when blanking the screenJesse Hall
Bug: 11220224 Change-Id: I99d0a42e1a6bb0aaf89706f6d100e9ef2a5deaa4
2013-10-14Filter out vsync events from HWC with duplicate timestampsJesse Hall
Bug: 11220224 Change-Id: I4efe0b66ea8969bf0ec3c4fcb325d354c8a0c315
2013-10-13merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-13Merge "Adding PackageManager feature strings for stepcounter and ↵Aravind Akella
stepdetector." into klp-dev
2013-10-13Adding PackageManager feature strings for stepcounter and stepdetector.Aravind Akella
Change-Id: I75ec21900fdc3ea80b61ec12c851a0c5ce9c44e8
2013-10-13Merge "DispSync: don't compensate for wakeup latency" into klp-devJesse Hall
2013-10-13merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-11Merge "Use black for blackout layer" into klp-devAndy McFadden
2013-10-11Change API from flush(handle) to flush(). Call flush on all active sensors ↵Aravind Akella
in the given SensorEventConnection. Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36
2013-10-11Use black for blackout layerAndy McFadden
SurfaceFlinger was rendering dark purple for secure content, which showed up when we took a screen shot for the orientation change animation. Use black instead. Bug 11157921 Change-Id: I3895e8168891d49dc5b84eed599bcd0a303bb70a
2013-10-10Eliminate latency when resampling is disabledMichael Wright
Since the latency was introduced to avoid egregious errors during resampling, remove it when we aren't resampling. Change-Id: Ia8e9a9afb1e16212fec81a8c9c661c598e1b0ebf
2013-10-11Merge "Eliminate latency when resampling is disabled" into klp-devDave Burke
2013-10-11Merge "Change API from flush(handle) to flush(). Call flush on all active ↵Aravind Akella
sensors in the given SensorEventConnection." into klp-dev
2013-10-10Eliminate latency when resampling is disabledMichael Wright
Since the latency was introduced to avoid egregious errors during resampling, remove it when we aren't resampling. Change-Id: Ia8e9a9afb1e16212fec81a8c9c661c598e1b0ebf
2013-10-10Merge "Wake up disp sync thread when setting display period" into klp-devJesse Hall
2013-10-10Wake up disp sync thread when setting display periodJesse Hall
Bug: 10624956 Change-Id: I272c15f319521bfbd1bb70451366c7dd84d60bf9
2013-10-10Fix blank / partial screenshotsAndy McFadden
The screen capture code wasn't waiting for the render to finish, so sometimes you'd see an empty or partial image. Bug 11131777 Change-Id: Ic64087322ce3bb15bb5f4fb1eb07579880fe6197
2013-10-09DispSync: don't compensate for wakeup latencyJamie Gennis
This change removes the wakeup latency compensation from the software-generated vsync events. Choreographer can't handle timestamps in the future, so don't aim for early wake-ups with the expectation that the actual wake-up will be late. Bug: 11153576
2013-10-09Change API from flush(handle) to flush(). Call flush on all active sensors ↵Aravind Akella
in the given SensorEventConnection. Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36
2013-10-09Fix blank / partial screenshotsAndy McFadden
The screen capture code wasn't waiting for the render to finish, so sometimes you'd see an empty or partial image. Bug 11131777 Change-Id: Ic64087322ce3bb15bb5f4fb1eb07579880fe6197
2013-10-09merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-08merge in KQS81MEd Heyl
2013-10-07SurfaceFlinger: SW-based vsync eventsJamie Gennis
This change adds the DispSync class, which models the hardware vsync event times to allow vsync event callbacks to be done at an arbitrary phase offset from the hardware vsync. This can be used to reduce the minimum latency from Choreographer wake-up to on-screen image presentation. Bug: 10624956 Change-Id: I8c7a54ceacaa4d709726ed97b0dcae4093a7bdcf
2013-10-06merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-03Add feature android.hardware.consumerir xml fileAlex Ray
Bug: 10676690 Change-Id: I2cc62b9c97a71588c43ff96ca38d470976bde9b0
2013-10-03Merge "Allow blaming a single uid for work done" into klp-devMarco Nelissen
2013-10-03Merge "media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams" ↵Lajos Molnar
into klp-dev
2013-10-03Allow blaming a single uid for work doneMarco Nelissen
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-03merge in klp-release history after reset to klp-devThe Android Automerger
2013-10-02Set the outbuf acquire fence after we actually have it.Jesse Hall
In GLES-only mode, we don't have the outbuf acquire fence until after GLES composition is done for the frame. We were setting the fence in HWC's state immediately after dequeueing the buffer from the consumer, before GLES had started. This fence got passed through HWC and on to the consumer, so the consumer was reading the buffer before GLES was done writing to it. Now we update HWC's state just before set(), when we know we have the right fence. Bug: 11000763 Change-Id: Iea9db4c69634c352dc2d600f0bdb6bef2a432636
2013-10-02only clear FB when asked for the opaque layerMathias Agopian
a layer need to be considered NOT opaque if it has a plane-alpha. Bug: 10846930 Change-Id: Ibd8981b63ede4560c7096bacc4cff46a7eb2a8bb
2013-10-02Treat composition frames with no layers as using GLES compositionJesse Hall
When there are no window layers for a display, SurfaceFlinger clears the undefined region using GLES. Some of the places that check for GLES composition weren't considering this special case, in particular: - We were skipping the eglSwapBuffers() on these frames. - We were putting VirtualDisplaySurface in HWC-only composition mode. This change centralizes the logic for this special case. Bug: 10957068 Change-Id: I2deaf2ed101e8ea76708862a6bb67751b6078794
2013-10-02BufferQueue: fix a test crashJamie Gennis
Bug: 10935880 Change-Id: If76e9fb055103bad0db7e6c16487532671573149
2013-10-02Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-devJamie Gennis
2013-10-02Merge "only clear FB when asked for the opaque layer" into klp-devDave Burke
2013-10-02GLConsumer: start using EGL_ANDROID_image_cropJamie Gennis
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-02Merge "Treat composition frames with no layers as using GLES composition" ↵Jesse Hall
into klp-dev
2013-10-01Set the outbuf acquire fence after we actually have it.Jesse Hall
In GLES-only mode, we don't have the outbuf acquire fence until after GLES composition is done for the frame. We were setting the fence in HWC's state immediately after dequeueing the buffer from the consumer, before GLES had started. This fence got passed through HWC and on to the consumer, so the consumer was reading the buffer before GLES was done writing to it. Now we update HWC's state just before set(), when we know we have the right fence. Bug: 11000763 Change-Id: Iea9db4c69634c352dc2d600f0bdb6bef2a432636
2013-10-01only clear FB when asked for the opaque layerMathias Agopian
a layer need to be considered NOT opaque if it has a plane-alpha. Bug: 10846930 Change-Id: Ibd8981b63ede4560c7096bacc4cff46a7eb2a8bb
2013-09-30Treat composition frames with no layers as using GLES compositionJesse Hall
When there are no window layers for a display, SurfaceFlinger clears the undefined region using GLES. Some of the places that check for GLES composition weren't considering this special case, in particular: - We were skipping the eglSwapBuffers() on these frames. - We were putting VirtualDisplaySurface in HWC-only composition mode. This change centralizes the logic for this special case. Bug: 10957068 Change-Id: I2deaf2ed101e8ea76708862a6bb67751b6078794
2013-09-30Fix two EGLConfig selection bugsJesse Hall
This fixes two bugs introduced by Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d (a) There is no invalid EGLConfig value, in particular zero is valid. Checking return values of eglGetConfigs and eglChooseConfig is the only way to determine success. (b) The "simple" EGLConfig query used as the emulator fallback should not include EGL_RECORDABLE; the emulator doesn't have it. Bug: 10935622 Change-Id: Ib798a24e7cf06a679811c46eaa45d39174a715ec