RenderEngine, SF: gate HDR priming behind property

This should make it so that devices which do not see any benefit from
priming those shaders can avoid computing them at boot time.

Bug: b/295257834
Test: manual - delta of -37 shaders generated before/after this patch
Test: atest librenderengine_test
Change-Id: I01962b690d636def86c1ebed40187eaf74ab0246
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 1ea4bcd..9c2ce94 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -869,7 +869,9 @@
             ALOGW("Can't set SCHED_OTHER for primeCache");
         }
 
-        mRenderEnginePrimeCacheFuture = getRenderEngine().primeCache();
+        bool shouldPrimeUltraHDR =
+                base::GetBoolProperty("ro.surface_flinger.prime_shader_cache.ultrahdr"s, false);
+        mRenderEnginePrimeCacheFuture = getRenderEngine().primeCache(shouldPrimeUltraHDR);
 
         if (setSchedFifo(true) != NO_ERROR) {
             ALOGW("Can't set SCHED_OTHER for primeCache");