06e6451bd9fcf3eac37d28091f19ba8391fdecc8 |
|
09-Nov-2017 |
Jiwen 'Steve' Cai <jwcai@google.com> |
Remove NativeBuffer from libbufferhub This code is long dead and completely unused. Let's keep buffer hub related code clean. Bug: 70046255 Test: buffer_hub_queue-test, buffer_hub-test, build system Change-Id: I106f1f339757a03af50c318de77199d01765093f
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
99c2d73588dad4a4d12a17d37354237b8c11a16a |
|
08-Jun-2017 |
Corey Tabaka <eieio@google.com> |
Move global buffer ops to VR display service. The original home for these ops was the VR display manager service, which is a protected singleton service that may only have one client. Since more than one service needs to create global buffers, move these ops to the display service. They are already protected by permission checks. Bug: 62424911 Test: dvr_api-test passes Change-Id: Ia2f57fdf8a5258b52a652935d160e90db0f1cf9e
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
8fa4e107ab6cbc24c0e54d44db3341f006fe939a |
|
25-May-2017 |
Jiwen 'Steve' Cai <jwcai@google.com> |
buffer_hub_queue_client: Batch allocate buffers Bug: 36147743 Test: buffer_hub_queue-test, buffer_hub_queue_producer-test, dvr_api-test Change-Id: I40a9babfa8d28d4496e27a7ccecb7ae1b9bc7bd5
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
532e529ec8f87578d024da0c5b71d4b12da21862 |
|
03-Jun-2017 |
Jiwen 'Steve' Cai <jwcai@google.com> |
Setting queue metadata size via dvrSurface API This allows VRCore to use metadata feature on each individual DvrBufferQueue. Bug: 62301995 Test: build, dvr_api-test Change-Id: I8e0eb8ca1a2c197426c4853cae99a4ed63caeffe
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
3c3f4314efbf7578fcd90d36dbe4111d72ce44cc |
|
24-May-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "DvrWriteBufferQueue: support buffer resizing"
|
bcb03d005a4ccca20a0723f087e90e8b503b4848 |
|
23-May-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Move dvr config data from display manager to display service * The limitation of creating only one display manager client is preventing config data access on multiple threads Bug: 38269706 Test: DvrDisplayManagerTest::ConfigurationData Change-Id: Ifc14cf0dd79248aea6367aca70c4e4f8359a25de
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
656f406fcb0c45fd3c729a513bdd3f353cc6ec1f |
|
22-May-2017 |
Jiwen 'Steve' Cai <jwcai@google.com> |
DvrWriteBufferQueue: support buffer resizing Currently, the buffer resising is implemented at the C API's implementation level, i.e. it's a pure client side logic out of the core BufferHubQueue C++/PDX implementation. The logic is similar to BufferHubQueueProducer's buffer resizing logic. Other minor changes: 1/ Use ProducerQueueConfig in DisplaySurface as well, and plumb default width, height, and format to bufferhubd when a BufferHubQueue is created through a Display Surface. 2/ Added detailed dvr_buffer_queue comments. 3/ Since we now have more and more logic in dvr_buffer_queue, refactored Dvr{Read,Write}BufferQueue to be C++-styled class. Bug: 38324405 Test: buffer_hub_queue_producer-test, buffer_hub_queue-test, dvr_api-test Change-Id: I7186fc04e84eafda46eca316a94739bb3b5c07ca
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
6ebada0fc1ae2416b3444fdf9ace806ea368a441 |
|
16-May-2017 |
Okan Arikan <okana@google.com> |
Merge "Int key for the named buffers."
|
36d23803882c64b1006cd3b8a47e00a4193a9b49 |
|
16-May-2017 |
Okan Arikan <okana@google.com> |
Int key for the named buffers. Also, rename them to global buffers from named buffers. Bug: 38320428 Test: Run frameworks/native/libs/vr/libdvr/tests on device Change-Id: I2109aea77e35f2ccd8055208058df4b7287c1d5e
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
b7ca5dee2045d9426e68f863b244012a2b223ea8 |
|
09-May-2017 |
Corey Tabaka <eieio@google.com> |
Clean up BufferHubQueue API and internal bookkeeping. - Simplify buffer hangup accounting. - Add extra checks to gracefully handle the epoll set and slots array being out of sync. - Add tests for detaching buffers. - Switch to using Status<T> for all return/error values. - Fix minor bug in BufferHubQueueProducer from earlier Status<T> return value change. Bug: 36401174 Test: buffer_hub_queue-test passes. Change-Id: If7f86a45cc048dc77daa2ede56585d3f882dd24f
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
cdb605375d66153d21641b800bd05af6ca81a125 |
|
09-May-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Remove graphics.cpp and friends * Delete a bunch of code that isn't used in the O2 path Bug: 36776792 Test: Compiled Change-Id: I4adf6ec5678a53e0850229f9dda60e8687793376
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
108e84f7e6a9117b66dba000dcf16c6d8c862e16 |
|
08-May-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
dvrapi: Pass layer_count down * We were missing layer count, which would prevent multiview from working Bug: 37245304 Test: MultiLayerBufferQueue Change-Id: I88b41f1aa7665df01e89a7386cbc23b15c9a79b0
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
4d3590f3fd0fd65f4e8758d3228de9f55cf135d0 |
|
07-May-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Remove slices from buffers * code no longer required, as it will be handled in vrcore Bug: 38076195 Test: Manually ran testing Change-Id: Id28918a3bf73b99cbb57aad4c21251b7a9623074
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
2251d822dac2a96aad4184a6fdc2690f0a58af7c |
|
21-Apr-2017 |
Corey Tabaka <eieio@google.com> |
Remove the VR compositor from the framework. Remove the VR compositor framework and enable out-of-process VR composition in VrCore. This CL seems large due to the ripple effect of changing the VrFlinger API and protocol types. There are three major modules that require concurrent changes: 1. Protocol definitions and low-level VrFlinger API in libdisplay. * Additional changes needed to keep old interfaces working for a short time while replacing the dependent code (dvrGraphics*). 2. VrFlinger service implementation changes to support VrCore compositor and the removal of the internal compositor. 3. Changes to libdvr platform library API due to changes in #1 and #2. Because of the nature of the interdependence of types and other defs it is difficult to break this CL into smaller chunks. However, review of the three major modules (libdisplay, libdvr, and libvrflinger) may be done separately to ease the mental burden on reviewers. Change Summary: - Remove obsolete screenshot service. VR screenshots will be implemented by VrCore. - Update display protocol definitions for changes in VrFlinger service requirements. The majority of the changes in libdisplay are a consequence of these protocol and service changes. - Update VrFlinger to support two kinds of surfaces: 1. Application - use by VR apps. 2. Direct - used by VrCore (protected by permission check). - Remove VrFlinger internal compositor and GL context. - Remove obsolete debug console. - Update VrFlinger hardware composer interface to handle direct surfaces only, removing the concept of GPU (compositor) layers. - Update display manager to expose access to application surface info to VrCore (protected by permission check). - Update libdvr platform library interfaces for changes to VrFlinger API / protocol. - Clean up libdvr API struct setup using a common include. - Add C++ header-only helpers for DVR platform library opaque types. Bug: 36401174 Test: Build; run VrFlinger display test tool. Change-Id: I15abfde5f72dbb3725a3f58621486afba6b64902
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
3f82d31341f66d0c58e1ec3360ea5f528ffe0ea4 |
|
20-Apr-2017 |
Corey Tabaka <eieio@google.com> |
Remove unnecessary clients and rename files. - Remove clients for obsolete services. - Rename display protocol defs file to match purpose. - Rename display manager client file. "impl" does not match naming conventions used by DVR libraries. - Remove video mesh surface interface. This will be replaced by more general surface support in the unified O compositor. Bug: 36401174 Test: Build; run cube sea. Change-Id: Idb782623319329f6fa1b0aa45005d9fee3b9957d
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
eaa5522feac452703a0836310047d4b15702487d |
|
06-Apr-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Convert the pose buffer into a more generic named buffer * It's likely that we'll have more than one pose buffer * It's cleaner to separate the vsync info into a separate buffer Bug: 37001881 Bug: 37240552 Test: Added and manually ran TestNamedBuffersSetup Change-Id: I76621d3cfa8c21c9d5d1e6e648854067673be9ab
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
1db8a5d7e3b0565b976e77859e28d77f6a451a2b |
|
22-Mar-2017 |
Corey Tabaka <eieio@google.com> |
Update BufferHubQueue in preparation for VrFlinger refactor. - Expose buffer hub queue id to the client. This helpful as an id in queue enumeration in the DisplayManager API. - Address log convention deviations. - Clean up BufferHub service error paths. - Clean up queue importing logic to query the service for queue parameters to avoid accidental abuse. - Make spawning consumer queues more efficient in RPC only cases. - Clean up ConsumerQueue constructor logic; move to pdx::Client base class (through BufferHubQueue) instead of pdx::ClientBase. ConsumerQueue::Create doesn't make sense as a ConsumerQueue can only be created from another queue. Bug: 36401174 Test: build; run buffer_hub_queue-test Change-Id: I0530f64ecb514d0f37bb13f9ce201b6ff51502b6
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
b7c8a4bd8131ce18fb4ab4ee986c3b6b1ed27ad5 |
|
20-Mar-2017 |
Albert Chaulk <achaulk@google.com> |
Implement an API for vrwm to query if the current vr app is active The API returns if the client_order 0 layer is visible or not. This aids in 2D app detection Bug: None Test: Manual with permissionsgen & calculator Change-Id: Id988e61a9f93885e93c28ed83ffaffd84f3bdf15
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
050b2c83304bd16ec3a838da08b6ba6acf6a3af4 |
|
06-Mar-2017 |
Steven Thomas <steventhomas@google.com> |
Revert "Revert "Tie vr flinger to persistent vr mode"" This reverts commit 7480c060cb3466d97ec3125d61bbace153f534c8. Transfer display control to vr flinger when persistent vr mode is entered, rather than when vr mode is entered. This allows cardboard apps, which will invoke vr mode but not persistent vr mode, to work as in N. This activates vr flinger at device boot for Daydream ready devices, which fixes an issue where an app would attempt to create a surface before vr flinger was running, which would hang indefinitely. The VrManager listener for persistent vr mode is put in vr flinger instead of surface flinger. This is cleaner since the vr interaction with the rest of the device is now consolidated in vr flinger. While testing I encountered a problem where vr flinger was given control of the display but vsync was turned off, causing vr flinger's post thread to hang. I changed the vr flinger logic to give control over vsync and other display settings to the post thread, and took the opportunity to further simplify and improve vr flinger's thread interactions. Bug: 35885165 Test: Manually confirmed that when persistent vr mode is not invoked we get the N-based render implementation, and when persistent vr mode is invoked we get vr flinger. Change-Id: I3b5ad599cc0748e38b861c714c4cc3118f854acf
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
10e68eb8aa4db8b6f8cfbf2c3754e2677d7bf848 |
|
15-Mar-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
Add dvr_buffer apis Test: None Bug: None Change-Id: I234d7ef4dabb4453cdbc67d3112adf2ffbbadaf4
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
7480c060cb3466d97ec3125d61bbace153f534c8 |
|
21-Mar-2017 |
Jin Qian <jinqian@google.com> |
Revert "Tie vr flinger to persistent vr mode" This reverts commit f43d13e4e35ae7d3cdafc4b97c819669d42cef78. Change-Id: Ib67db8e51b7ea2dbbe6faccce36962bf5b44a6e2
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
f43d13e4e35ae7d3cdafc4b97c819669d42cef78 |
|
06-Mar-2017 |
Steven Thomas <steventhomas@google.com> |
Tie vr flinger to persistent vr mode Transfer display control to vr flinger when persistent vr mode is entered, rather than when vr mode is entered. This allows cardboard apps, which will invoke vr mode but not persistent vr mode, to work as in N. This activates vr flinger at device boot for Daydream ready devices, which fixes an issue where an app would attempt to create a surface before vr flinger was running, which would hang indefinitely. The VrManager listener for persistent vr mode is put in vr flinger instead of surface flinger. This is cleaner since the vr interaction with the rest of the device is now consolidated in vr flinger. While testing I encountered a problem where vr flinger was given control of the display but vsync was turned off, causing vr flinger's post thread to hang. I changed the vr flinger logic to give control over vsync and other display settings to the post thread, and took the opportunity to further simplify and improve vr flinger's thread interactions. Bug: 35885165 Test: Manually confirmed that when persistent vr mode is not invoked we get the N-based render implementation, and when persistent vr mode is invoked we get vr flinger. Change-Id: Ieeb8dabc19e799e3179e52971f3b63f5a8f54b3b
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
a3613612a1142c3134045f08c30a861ea43288ed |
|
09-Mar-2017 |
Jiwen 'Steve' Cai <jwcai@google.com> |
Refactor VrFlinger to use BufferHubQueue 1/ Remove DisplayRPC::AllocateBuffer, as individual buffer allocation is now handled by BufferHubQueue. 2/ Reimplement native_buffer_queue using bufferhubqueue. 3/ Hook up consumer queue in DisplaySurface. 4/ Remove epoll_event_dispatcher as its no longer being used. Bug: 36033302 Test: Built and ran particles.apk Change-Id: I38ee1c57195888ede935ebc50119bcb7e4ab4e36
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
4fe60582f314e381098f8f3bc2e39c5880e9243a |
|
02-Feb-2017 |
Alex Vakulenko <avakulenko@google.com> |
Remove references to libchrome Removed dependencies on libchrome which was used mostly for logging and switched over to standard Android log macros. Bug: None Test: `m -j32` still succeeds Change-Id: I0a841c19c15c02f9a031af200e82837f9450d88a
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|
e4eec20f6263f4a42ae462456f60ea6c4518bb0a |
|
27-Jan-2017 |
Alex Vakulenko <avakulenko@google.com> |
Add DaydreamVR native libraries and services Upstreaming the main VR system components from master-dreamos-dev into goog/master. Bug: None Test: `m -j32` succeeds. Sailfish boots and basic_vr sample app works Change-Id: I853015872afc443aecee10411ef2d6b79184d051
/frameworks/native/libs/vr/libdisplay/display_client.cpp
|