summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-03-31 01:52:04 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-03-31 05:06:47 +0200
commit973745741a92f43b244adbdf0c8b8c17c764c409 (patch)
tree551597e4701070b654e4d52a06707a684000a3cc
parent5b189d909f9f0f94f2ab1aec5e3344cc385357f0 (diff)
downloaddevice_samsung_i9100-replicant-6.0.tar.gz
device_samsung_i9100-replicant-6.0.tar.bz2
device_samsung_i9100-replicant-6.0.zip
Use LLVMpipe by defaultHEADreplicant-6.0
Using libagl for everything had the side effect of making it impossible to use applications like IceCatMobile, as libagl OpenGL implementation was not complete enough. Using LLVMpipe fixes that. Using LLVMpipe for everything has the side effect of making some system components like SurfaceFlinger way slower. As we have patched the EGL loader to enable to override the default OpenGL implementation for specific binaries, and that we used that to switch the affected system components back to libagl, we can now switch to LLVMpipe. However even if the overrides are already shipped automatically for each devices, we still need to decide on which devices LLVMpipe has to be enabled: since not all devices have the same display controller and pixel format for the planes, it's better to enable it only once it's known to work well on a given device. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r--i9100.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/i9100.mk b/i9100.mk
index 72547a2..9676410 100644
--- a/i9100.mk
+++ b/i9100.mk
@@ -37,6 +37,16 @@ PRODUCT_PACKAGES += libstlport
PRODUCT_PACKAGES += \
sensors.smdk4210
+# - With ro.libagl=1, libagl is always used
+# - With ro.libagl=0, LLVMpipe is used by default but it's possible to override
+# that and use libagl for specific binaries by creating empty configuration
+# files in /system/etc/libGLES_android/ with the binary paths paths.
+# For instance to make SurfaceFlinger use libagl you can run this command:
+# # touch /system/etc/libGLES_android/system/bin/surfaceflinger
+# When launching that binary, the EGL loader will then check if that file
+# exists to decide on which OpenGL implementation to use.
+PRODUCT_PROPERTY_OVERRIDES += ro.libagl=0
+
# Keylayout
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/usr/keylayout/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \