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
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
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)
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)
Preparation for removing implicit include paths for jni.h from soong.
Bug: 152482542
Test: m checkbuild
Change-Id: I7a6c702f93d37d079861dac1d1adad12a6cc4ccf
This was transitively included, but no longer is, so it must be
explicitly included.
Exempt-From-Owner-Approval: Janitorial
Test: build
Change-Id: I9c57174e4dcf5dfddb44498d8faa556531894b1e
This was transitively included, but no longer is, so it must be
explicitly included.
Exempt-From-Owner-Approval: Janitorial
Test: build
Change-Id: I369e3bdc049f811acbcea095d90960a16d5ff4e0
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
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
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
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
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)
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
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
Test: Ensure Pixel4XL boot and driver loaded.
This does not have any functional change.
Bug: b/147019446
Change-Id: I8bbdb223e9f6d882e4d1b8cfd7a630f147e5c2d7
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
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