hwc: Swap source dimensions for rotated layer

In downscale utility functions, swap source dimensions
for rotated layer.

Change-Id: If28c892d4720f9b102af8367947b9d5b3537dc78
diff --git a/libhwcomposer/hwc_utils.cpp b/libhwcomposer/hwc_utils.cpp
index 79235ff..5de3081 100644
--- a/libhwcomposer/hwc_utils.cpp
+++ b/libhwcomposer/hwc_utils.cpp
@@ -967,6 +967,9 @@
     src_w = sourceCrop.right - sourceCrop.left;
     src_h = sourceCrop.bottom - sourceCrop.top;
 
+    if(layer->transform & HWC_TRANSFORM_ROT_90)
+        swap(src_w, src_h);
+
     if(((src_w > dst_w) || (src_h > dst_h)))
         return true;
 
@@ -982,6 +985,10 @@
     dst_h = displayFrame.bottom - displayFrame.top;
     src_w = sourceCrop.right - sourceCrop.left;
     src_h = sourceCrop.bottom - sourceCrop.top;
+
+    if(layer->transform & HWC_TRANSFORM_ROT_90)
+        swap(src_w, src_h);
+
     if(dst_w && dst_h) {
         float w_scale = ((float)src_w / (float)dst_w);
         float h_scale = ((float)src_h / (float)dst_h);