diff --git a/libhwcomposer/Android.mk b/libhwcomposer/Android.mk
index 348fbd3..5be5d00 100644
--- a/libhwcomposer/Android.mk
+++ b/libhwcomposer/Android.mk
@@ -9,9 +9,11 @@
                                  $(TOP)/external/skia/include/core \
                                  $(TOP)/external/skia/include/images
 
+ifeq ($(strip $(TARGET_USES_QCOM_DISPLAY_PP)),true)
 LOCAL_C_INCLUDES              += $(TARGET_OUT_HEADERS)/qdcm/inc \
                                  $(TARGET_OUT_HEADERS)/common/inc \
                                  $(TARGET_OUT_HEADERS)/pp/inc
+endif
 
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libEGL liboverlay \
                                  libhdmi libqdutils libhardware_legacy \
@@ -48,9 +50,13 @@
 TARGET_MIGRATE_QDCM := $(call is-board-platform-in-list,$(TARGET_MIGRATE_QDCM_LIST))
 
 ifeq ($(TARGET_MIGRATE_QDCM), true)
+ifeq ($(strip $(TARGET_USES_QCOM_DISPLAY_PP)),true)
 LOCAL_SRC_FILES += hwc_qdcm.cpp
 else
 LOCAL_SRC_FILES += hwc_qdcm_legacy.cpp
 endif
+else
+LOCAL_SRC_FILES += hwc_qdcm_legacy.cpp
+endif
 
 include $(BUILD_SHARED_LIBRARY)
diff --git a/libhwcomposer/hwc_qdcm.h b/libhwcomposer/hwc_qdcm.h
index 14d3d3e..6453159 100644
--- a/libhwcomposer/hwc_qdcm.h
+++ b/libhwcomposer/hwc_qdcm.h
@@ -37,7 +37,6 @@
 #include <dlfcn.h>
 #include <binder/Parcel.h>
 #include <cutils/properties.h>
-#include <mode_manager.h>
 
 #define QDCM_DEBUG 0
 
diff --git a/libhwcomposer/hwc_qdcm_legacy.cpp b/libhwcomposer/hwc_qdcm_legacy.cpp
index fa3efc2..9c2c7b0 100644
--- a/libhwcomposer/hwc_qdcm_legacy.cpp
+++ b/libhwcomposer/hwc_qdcm_legacy.cpp
@@ -31,7 +31,7 @@
 #include <hwc_utils.h>
 #include <IQService.h>
 #include <mdp_version.h>
-#include "mode_manager.h"
+#include <dlfcn.h>
 
 using namespace android;
 using namespace qService;
@@ -49,10 +49,24 @@
 
 void qdcmApplyDefaultAfterBootAnimationDone(hwc_context_t *ctx)
 {
-    loadQdcmLibrary(ctx);
-    if (ctx->mQdcmInfo.mQdcmMode)
-        ctx->mQdcmInfo.mQdcmMode->applyDefaultMode(0);
-    unloadQdcmLibrary(ctx);
+    int ret = 0;
+    int (*applyMode)(int) = NULL;
+    void *modeHandle = NULL;
+
+    modeHandle = dlopen("libmm-qdcm.so", RTLD_NOW);
+    if (modeHandle) {
+        *(void **)&applyMode = dlsym(modeHandle, "applyDefaults");
+        if (applyMode) {
+            ret = applyMode(HWC_DISPLAY_PRIMARY);
+            if (ret)
+                ALOGE("%s: Not able to apply default mode", __FUNCTION__);
+        } else {
+            ALOGE("%s: No symbol applyDefaults found", __FUNCTION__);
+        }
+        dlclose(modeHandle);
+    } else {
+        ALOGE("%s: Not able to load libmm-qdcm.so", __FUNCTION__);
+    }
 }
 
 //do nothing in case qdcm legacy implementation.
