HWC2: Fix breakage from header change

Updates the shim and adapter to handle the header changes introduced
by "HWC2: Add format to VD create, surface damage" in libhardware.

Bug: 22767098
Change-Id: I8142301c121d9b5602a4455f3fbadefefd685cf0
diff --git a/services/surfaceflinger/DisplayHardware/HWC2.cpp b/services/surfaceflinger/DisplayHardware/HWC2.cpp
index f898ada..ed8cc08 100644
--- a/services/surfaceflinger/DisplayHardware/HWC2.cpp
+++ b/services/surfaceflinger/DisplayHardware/HWC2.cpp
@@ -192,19 +192,21 @@
 }
 
 Error Device::createVirtualDisplay(uint32_t width, uint32_t height,
-        std::shared_ptr<Display>* outDisplay)
+        android_pixel_format_t* format, std::shared_ptr<Display>* outDisplay)
 {
     ALOGI("Creating virtual display");
 
     hwc2_display_t displayId = 0;
+    int32_t intFormat = static_cast<int32_t>(*format);
     int32_t intError = mCreateVirtualDisplay(mHwcDevice, width, height,
-            &displayId);
+            &intFormat, &displayId);
     auto error = static_cast<Error>(intError);
     if (error != Error::None) {
         return error;
     }
 
     ALOGI("Created virtual display");
+    *format = static_cast<android_pixel_format_t>(intFormat);
     *outDisplay = getDisplayById(displayId);
     (*outDisplay)->setVirtual();
     return Error::None;
@@ -780,9 +782,10 @@
 Error Display::setClientTarget(buffer_handle_t target,
         const sp<Fence>& acquireFence, android_dataspace_t dataspace)
 {
+    // TODO: Properly encode client target surface damage
     int32_t fenceFd = acquireFence->dup();
     int32_t intError = mDevice.mSetClientTarget(mDevice.mHwcDevice, mId, target,
-            fenceFd, static_cast<int32_t>(dataspace));
+            fenceFd, static_cast<int32_t>(dataspace), {0, nullptr});
     return static_cast<Error>(intError);
 }