Removing getSystemPreferredDisplayMode and adding it as part of
DynamicDisplayInfo

Bug: 209598222
Test: atest CtsBootDisplayModeTestCases
Test: atest libcompositionengine_test
Change-Id: I1ce0a5a3916b14e25212dd1d2fc4f5e82674fcd1
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index ea5025f..b586169 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -1112,6 +1112,8 @@
         return type == hal::ContentType::GAME;
     });
 
+    info->preferredBootDisplayMode = display->getPreferredBootModeId();
+
     return NO_ERROR;
 }
 
@@ -1457,20 +1459,6 @@
     return future.get();
 }
 
-status_t SurfaceFlinger::getPreferredBootDisplayMode(const sp<IBinder>& displayToken,
-                                                     ui::DisplayModeId* id) {
-    auto future = mScheduler->schedule([=]() MAIN_THREAD mutable -> status_t {
-        if (const auto displayId = getPhysicalDisplayIdLocked(displayToken)) {
-            *id = getHwComposer().getPreferredBootDisplayMode(*displayId);
-            return NO_ERROR;
-        } else {
-            ALOGE("%s: Invalid display token %p", __FUNCTION__, displayToken.get());
-            return BAD_VALUE;
-        }
-    });
-    return future.get();
-}
-
 void SurfaceFlinger::setAutoLowLatencyMode(const sp<IBinder>& displayToken, bool on) {
     const char* const whence = __func__;
     static_cast<void>(mScheduler->schedule([=]() MAIN_THREAD {
@@ -5463,7 +5451,6 @@
         case GET_BOOT_DISPLAY_MODE_SUPPORT:
         case SET_BOOT_DISPLAY_MODE:
         case CLEAR_BOOT_DISPLAY_MODE:
-        case GET_PREFERRED_BOOT_DISPLAY_MODE:
         case GET_AUTO_LOW_LATENCY_MODE_SUPPORT:
         case SET_AUTO_LOW_LATENCY_MODE:
         case GET_GAME_CONTENT_TYPE_SUPPORT: