diff --git a/libhwcomposer/hwc.cpp b/libhwcomposer/hwc.cpp
index 15b9da4..cd06f34 100644
--- a/libhwcomposer/hwc.cpp
+++ b/libhwcomposer/hwc.cpp
@@ -38,7 +38,6 @@
 #include "hwc_copybit.h"
 #include "hwc_ad.h"
 #include "profiler.h"
-#include "hwc_vpuclient.h"
 #include "hwc_virtual.h"
 
 using namespace qhwc;
@@ -202,12 +201,7 @@
         reset_layer_prop(ctx, dpy, list->numHwLayers - 1);
         setListStats(ctx, list, dpy);
 
-        if (ctx->mVPUClient == NULL)
-            fbComp = (ctx->mMDPComp[dpy]->prepare(ctx, list) < 0);
-#ifdef VPU_TARGET
-        else
-            fbComp = (ctx->mVPUClient->prepare(ctx, dpy, list) < 0);
-#endif
+        fbComp = (ctx->mMDPComp[dpy]->prepare(ctx, list) < 0);
 
         if (fbComp) {
             const int fbZ = 0;
@@ -513,12 +507,7 @@
         if(ctx->mHwcDebug[dpy])
             ctx->mHwcDebug[dpy]->dumpLayers(list);
 
-        if (ctx->mVPUClient != NULL) {
-#ifdef VPU_TARGET
-            ctx->mVPUClient->predraw(ctx, dpy, list);
-#endif
-        }
-        else if (!ctx->mMDPComp[dpy]->draw(ctx, list)) {
+        if (!ctx->mMDPComp[dpy]->draw(ctx, list)) {
             ALOGE("%s: MDPComp draw failed", __FUNCTION__);
             ret = -1;
         }
@@ -543,10 +532,6 @@
             ret = -1;
         }
 
-#ifdef VPU_TARGET
-        if (ctx->mVPUClient != NULL)
-            ctx->mVPUClient->draw(ctx, dpy, list);
-#endif
     }
 
     closeAcquireFds(list);
