Commit graph

1718 commits

Author SHA1 Message Date
Michael Hoisie
c4661093a2 Merge "Update libEGL to use android::base properties instead of cutils" into rvc-dev am: 9c6dd35a07
Change-Id: If37bb8c662df0834dbdce859b5714e86c7905f39
2020-05-15 16:36:27 +00:00
Michael Hoisie
4e0f56bbb0 Update libEGL to use android::base properties instead of cutils
android::base properties work on host and are generally more concise
than cutils properties.

Also, add libbase to egl_libs_defaults. This does not actually add
another dependency because libbase is already a dependency via
libbacktrace.

Bug: 155436554
Test: atest libEGL_test
Test: build, flash and boot
Change-Id: Ibf66e01ce93524eaa29098ae9c57bc6452133f76
2020-05-01 18:08:58 -04:00
Michael Hoisie
a2eecc8a65 Merge "Remove unused libhardware_headers dependency from libEGL" into rvc-dev am: 11d7674745
Change-Id: Ib4d194b0e39d4ae59e15d07f964fa697bd2709d0
2020-04-30 04:16:28 +00:00
Michael Hoisie
f1d308967e Remove unused libhardware_headers dependency from libEGL
The libhardware_headers dependency is not being used in libEGL.

Bug: 155235859
Test: m -j
Change-Id: I4b24daf7255d9e109deed4f371327d3817c4d0e0
2020-04-29 12:59:58 -04:00
TreeHugger Robot
44ae3b7650 Merge "Allow native driver to be ANGLE" into rvc-dev am: eeff9de91c
Change-Id: I6329da0aeed8081578f8f7ad08babb65a815ffac
2020-04-28 21:25:58 +00:00
TreeHugger Robot
eeff9de91c Merge "Allow native driver to be ANGLE" into rvc-dev 2020-04-28 21:07:34 +00:00
TreeHugger Robot
22fcd0469f Merge "Change to using sysprop for libEGL and EGL_test" into rvc-dev am: ef960f8a6d
Change-Id: Ia5313100cd57362985411790747e377daf5cafc3
2020-04-28 02:30:24 +00:00
TreeHugger Robot
ef960f8a6d Merge "Change to using sysprop for libEGL and EGL_test" into rvc-dev 2020-04-28 02:14:34 +00:00
Sundong Ahn
204fb1f377 Change to using sysprop for libEGL and EGL_test
The configstore service was deprecated. So change to use sysprop
instead of configstore.

Bug: 124531214
Test: m -j && check reading system properties
Change-Id: I220094082a1d4ec4e7649ad0d9b614e0bcc334a6
2020-04-28 09:20:05 +09:00
TreeHugger Robot
86abc1c648 Merge changes I9ea20221,I81b7546c into rvc-dev am: 0f1eb7d451
Change-Id: Ia3bab77ec69cb979638300efe2d8ac4cb6b69945
2020-04-27 18:06:57 +00:00
Courtney Goeltzenleuchter
c1a1a8690b Allow native driver to be ANGLE
There are ANGLE specific behaviors that need to be followed whenever
the driver in use is ANGLE. This change removes those behaviors from
the ANGLE load path and allows them to be applied to the "native"
driver if it is ANGLE.

This change removes the ability to select different ANGLE back-ends.
E.g. debug property: "debug.angle.backend" no longer works.
Only Vulkan will be used. The other back-ends are not used or tested
on Android and would be unusable on a production device where ANGLE
is the one and only OpenGL driver.

Test: atest CtsAngleIntegrationHostTestCases
Bug: b/154237217
Change-Id: Ia792f63d8c7b9411056b9277ff4b37fa566335f5
(cherry picked from commit d1646cfd85)
2020-04-27 15:45:36 +00:00
Yiwei Zhang
09d2771d37 Clean up egl_connection_t::shouldUseAngle
If android::GraphicsEnv::getInstance().shouldUseAngle() returns false,
then the ANGLE driver loading can bail out early. The choice should be
made before the app starts loading the driver. If there's a change in
the driver choice during driver loading, then it shouldn't affect the
current loading process, but the next app fresh launch, otherwise crash
will happen for the 3-part driver loading.

Test: build
Bug: b/154237217
Change-Id: I9ea202214bdbc4b70d068137c62d2b1f8ac8ebb5
(cherry picked from commit b22f086189)
2020-04-27 15:45:15 +00:00
Yiwei Zhang
6af5bcb158 Remove unused egl_connection_t::angleDecided
Test: build
Bug: b/154237217
Change-Id: I81b7546cedd2925286b06d7805a1c85b5ab2e459
(cherry picked from commit 260d962505)
2020-04-27 15:39:35 +00:00
Orion Hodson
e329ede0fe Merge "Add dependency on jni_headers to opengl tests" am: e65d87a96b am: 437b0af693
Change-Id: If8cfdded40ea4d60814631bd2ecff117cfa51323
2020-04-14 18:57:10 +00:00
Orion Hodson
437b0af693 Merge "Add dependency on jni_headers to opengl tests" am: e65d87a96b
Change-Id: Ideb164d958843688bbde7f752acb28f9d735d0f2
2020-04-14 18:37:23 +00:00
Orion Hodson
7c73c0e00a Add dependency on jni_headers to opengl tests
Preparation for removing implicit include paths for jni.h from soong.

Bug: 152482542
Test: m checkbuild
Change-Id: I7a6c702f93d37d079861dac1d1adad12a6cc4ccf
2020-04-14 11:07:46 +01:00
Tom Cherry
e2626925d5 Merge "Include what you use: <unistd.h>" am: c0aff669f8 am: 46ffa93a77
Change-Id: I17d06509d8fa150b1313b01bf23e6cd892ebc987
2020-04-14 02:09:48 +00:00
Tom Cherry
46ffa93a77 Merge "Include what you use: <unistd.h>" am: c0aff669f8
Change-Id: I16d9175cc467112187272f0a79c7dcb8c1d98036
2020-04-14 01:48:58 +00:00
Tom Cherry
28ac3b9285 Include what you use: <unistd.h>
This was transitively included, but no longer is, so it must be
explicitly included.

Exempt-From-Owner-Approval: Janitorial
Test: build
Change-Id: I9c57174e4dcf5dfddb44498d8faa556531894b1e
2020-04-13 15:19:23 -07:00
Treehugger Robot
0a44a8388f Merge "Include what you use: <fcntl.h>" am: af9652b1fb am: 7358ff4002
Change-Id: Ib52b5748f76cb7c0c9109abb2f51d79ee4a072e2
2020-04-13 19:56:30 +00:00
Treehugger Robot
7358ff4002 Merge "Include what you use: <fcntl.h>" am: af9652b1fb
Change-Id: I8c5f665652c75be16a0b4dd8aa8f86adcff282ce
2020-04-13 19:37:04 +00:00
Tom Cherry
3387cab883 Include what you use: <fcntl.h>
This was transitively included, but no longer is, so it must be
explicitly included.

Exempt-From-Owner-Approval: Janitorial
Test: build
Change-Id: I369e3bdc049f811acbcea095d90960a16d5ff4e0
2020-04-13 11:09:12 -07:00
Treehugger Robot
4ee59a28b2 Merge "Unbreak gen command and sync with current tree" am: 72cb9bff92 am: 7afebea6ca
Change-Id: Ie80c4eb366f50ac595312b72756f876d14329542
2020-04-01 19:44:37 +00:00
Treehugger Robot
7afebea6ca Merge "Unbreak gen command and sync with current tree" am: 72cb9bff92
Change-Id: I3db14f8f020fd7ee7f8bbad890a3e100a87102ad
2020-04-01 19:20:44 +00:00
Orion Hodson
62d2c9c82c Unbreak gen command and sync with current tree
Fix location of UnsupportedAppUsage.java.

Update templates to match current sources.

Add set-up sanity checks to gen script.

Bug: 151443957
Test: ./gen and observe no source changes
Change-Id: I095ef85ba9b2ef6617c451221a35f3545c3933a3
2020-04-01 08:07:13 +00:00
Peiyong Lin
8980f0689c Add CtsGpuToolsHostTestCases into presubmit.
Previously we never run CtsGpuToolsHostTestCases in presubmit, to make
sure we don't break the loaders functionality, add those CTS tests into
presubmit.

Bug: b/151266652
Test: atest android.gputools.cts.CtsRootlessGpuDebugHostTest
Change-Id: If7c99211585c6be039c18788c0035a1eff330925
2020-03-25 20:32:46 -07:00
Automerger Merge Worker
cb7a6a1804 Merge "Remove mips." am: ba4d743a16 am: 6d5e141cc0
Change-Id: I404c33cb1b91d5f47d9272b806999a955e79825a
2020-03-12 18:10:08 +00:00
Treehugger Robot
ba4d743a16 Merge "Remove mips." 2020-03-12 17:20:17 +00:00
Elliott Hughes
2a45d7a6d6 Remove mips.
Test: treehugger
Change-Id: Ifac6515bb84c8da2faf53ef310caec7adff3f234
Merged-In: Ifac6515bb84c8da2faf53ef310caec7adff3f234
2020-03-12 00:21:31 +00:00
Automerger Merge Worker
05f52485c3 Merge "Enable context virtualization only for GL" am: 48880d51d0 am: 6630407efa
Change-Id: Id384b685e8ac218cdeb1d33d36f62f648ea1d5a3
2020-03-09 20:22:39 +00:00
Courtney Goeltzenleuchter
9defb444a8 Enable context virtualization only for GL
Only the GL back-end requires context virtualization. So only
require it for that case and not for Vulkan back-end.

Test: dEQP with ANGLE and ANGLE build with args.gn with
angle_enable_gl=false
Bug: 150892231

(cherry picked from commit 559b4339c7)

Change-Id: I443841c2543d0c6446d0f11122bf18dc9acbf428
2020-03-09 13:17:43 -04:00
Courtney Goeltzenleuchter
559b4339c7 Enable context virtualization only for GL
Only the GL back-end requires context virtualization. So only
require it for that case and not for Vulkan back-end.

Test: dEQP with ANGLE and ANGLE build with args.gn with
angle_enable_gl=false
Bug: 150892231

Change-Id: I443841c2543d0c6446d0f11122bf18dc9acbf428
2020-03-06 18:27:18 +00:00
Automerger Merge Worker
a046c9652a GraphicsEnv: refactor to unify the debuggable logic am: fe62271bc3
Change-Id: I2bb295fbf56168beefa5dd26ea21cb85a90a6752
2020-01-31 18:37:57 +00:00
Yiwei Zhang
fe62271bc3 GraphicsEnv: refactor to unify the debuggable logic
By default, PR_SET_DUMPABLE is 0 for zygote spawned apps, except in the
following circumstances:
1. ro.debuggable=1 (global debuggable enabled, i.e., userdebug or eng builds).
2. android:debuggable="true" in the manifest for an individual application.
3. An app which explicitly calls prctl(PR_SET_DUMPABLE, 1).
4. GraphicsEnv calls prctl(PR_SET_DUMPABLE, 1) in the presence of
   <meta-data android:name="com.android.graphics.injectLayers.enable"
              android:value="true"/>
   in the application manifest.

So checking both ro.debuggable=1 and PR_GET_DUMPABLE is redundant.

Bug: b/144186877, b/148566223
Test: CtsAngleIntegrationHostTestCases
Test: CtsRootlessGpuDebugHostTest
Change-Id: I934f64315b67db77ee2c2a9dff50fb23bc0a546a
Merged-In: I934f64315b67db77ee2c2a9dff50fb23bc0a546a
(cherry picked from commit 6a674c9e10)
2020-01-29 21:30:19 -08:00
Dominik Laskowski
3cb3d4e390 SF: Redesign API to query display information
The DisplayInfo list returned by ISurfaceComposer for display configs
contains display information/state redundant across configs.

Extract config information to DisplayConfig, and repurpose DisplayInfo
for immutable information about a physical display. In a future CL, SF
will populate DisplayInfo with additional data (e.g. connection type,
EDID fields) on initial connection. DisplayConfigs retain the ability
to reload on subsequent connections. Introduce ui::DisplayState for
transactional state applicable to both physical and virtual displays.

Bug: 144601064
Test: dumpsys display
Change-Id: I72003e8ef71483ef483d0de85d28b859a6c9f5fc
2020-01-29 13:59:26 -08:00
Yiwei Zhang
eac35ebc89 GpuStats: complete the coverage of ES1 usage tracking
Previously, we only track when the app explicitly creates an es1
context. This change fixes the coverage because the implicit default
context creation goes to es1.

Bug: 146661131
Test: build, flash and boot
Change-Id: I5d60812e86bd194d41c91b1e50e3a5e3c37e072d
2020-01-17 17:46:39 -08:00
jorgegil@google.com
09c9da508a Add stubs to libEGL cc_library
(cherry-picked from commit e814151684)

Bug: 144781653
Bug: 147833914
Test: Builds
Change-Id: I73a8e9bac02cc4c6874c140ff55b328334f5d309
Merged-In: I73a8e9bac02cc4c6874c140ff55b328334f5d309
2020-01-17 12:01:06 +00:00
Charlie Lao
840bd53ef6 opengl: Revert "opengl: defer GLESV1 library loading until context creation time"
Test: Ensure pixel 4XL boot
Bug: b/147842683

This reverts commit 95c7aeae97.

Change-Id: I3423dbc639e9edc26d0c863fa1f5445610d4de22
2020-01-16 17:39:17 -08:00
Charlie Lao
c51d5f5bd9 OpenGL: Moving comment to the right place
Test: Ensure Pixel4XL boot and driver loaded.
      This does not have any functional change.
Bug: b/147019446

Change-Id: I8bbdb223e9f6d882e4d1b8cfd7a630f147e5c2d7
2020-01-14 11:12:56 -08:00
TreeHugger Robot
9b6559c707 Merge "ui: Deduplicate rotation types" 2020-01-14 02:22:28 +00:00
TreeHugger Robot
3ea3c1197f Merge "opengl: defer GLESV1 library loading until context creation time" 2020-01-13 17:03:48 +00:00
Charlie Lao
95c7aeae97 opengl: defer GLESV1 library loading until context creation time
Test: boot and run GLESV1 test app
Bug: b/147019446
Change-Id: Ia3925a96c745d9bbb966b0e3bda9f0a1332e2a14
2020-01-10 14:52:48 -08:00
Peiyong Lin
db3ed6e697 Don't fall back to system driver when driver apk fails.
Previously when driver apk fails to load, the loader falls back to load system
driver. However, this provides no indication of driver apk failure and hence
users that intend to use driver apk may end up working against the system
driver.

BUG: b/147459984
Test: Verified by forcing to use a dummy apk
Change-Id: I3befc0d6c1f143dc53eab3762b7ff19c702e8cda
2020-01-10 10:15:47 -08:00
Dominik Laskowski
718f9601c6 ui: Deduplicate rotation types
Introduce ui::Rotation, replacing ISurfaceComposer::Rotation as well as
DISPLAY_ORIENTATION_* and DisplayState::eOrientation* constants.

libinput has widespread use of int32_t for orientation, so move
DISPLAY_ORIENTATION_* to input/DisplayViewport.h for now.

Bug: 144601064
Test: go/wm-smoke
Test: screencap
Change-Id: Ic4b8494e37c9d79c00d5b4be5eb88585f09efebf
2020-01-07 12:24:35 -08:00
TreeHugger Robot
1ca25ba9dc Merge "GpuStats: track whether the app creates ES1 context" 2020-01-03 23:51:00 +00:00
Yiwei Zhang
011538f1ed GpuStats: track whether the app creates ES1 context
Bug: 146661131
Test: adb shell dumpsys gpu
Change-Id: I54e6953368ea8e2ced7477ee64796580dc14c39e
2019-12-20 14:45:35 -08:00
Automerger Merge Worker
cfd0a09df2 Merge "Use new UnsupportedAppUsage annotation." am: 27e06cc275 am: 240d8e0ce7 am: 5b65df5d49
Change-Id: Ib795f10f5f663a67cabdaa5f2d0f3a24249f648f
2019-12-12 15:52:40 +00:00
Artur Satayev
6783dfb308 Use new UnsupportedAppUsage annotation.
Bug: 145132366
Test: m && diff unsupportedappusage_index.csv
Change-Id: I17478d80070fff10eb083cfe633093383d5aedad
2019-12-11 14:37:35 +00:00
jorgegil@google.com
e814151684 Add stubs to libEGL cc_library
Bug: 144781653
Test: Builds
Change-Id: I73a8e9bac02cc4c6874c140ff55b328334f5d309
2019-11-21 13:51:29 -08:00
TreeHugger Robot
0b82f1aa4c Merge "Opengl: fix a type for GraphicsEnvironment" 2019-11-15 02:14:16 +00:00