diff --git a/libhwcomposer/hwc_utils.cpp b/libhwcomposer/hwc_utils.cpp
index e6c235e..61f3f1c 100644
--- a/libhwcomposer/hwc_utils.cpp
+++ b/libhwcomposer/hwc_utils.cpp
@@ -1454,7 +1454,8 @@
             ((transform & HWC_TRANSFORM_ROT_90) || downscale)) {
         *rot = ctx->mRotMgr->getNext();
         if(*rot == NULL) return -1;
-        BwcPM::setBwc(ctx, crop, dst, transform, mdpFlags);
+        if(!dpy)
+            BwcPM::setBwc(ctx, crop, dst, transform, mdpFlags);
         //Configure rotator for pre-rotation
         if(configRotator(*rot, whf, crop, mdpFlags, orient, downscale) < 0) {
             ALOGE("%s: configRotator failed!", __FUNCTION__);
@@ -1724,10 +1725,6 @@
     if((crop.right - crop.left) > qdutils::MAX_DISPLAY_DIM) {
         return;
     }
-    //External connected
-    if(ctx->mExtDisplay->isConnected()|| ctx->mVirtualDisplay->isConnected()) {
-        return;
-    }
     //Decimation necessary, cannot use BWC. H/W requirement.
     if(qdutils::MDPVersion::getInstance().supportsDecimation()) {
         int src_w = crop.right - crop.left;
