hwc: Do not create copybit.
Do not create copybit instance.
Fix copybit init and deinit sequence.
Change-Id: Ia669f4cc89c85294a040400a750aa72a93e579b8
diff --git a/libhwcomposer/hwc_copybit.cpp b/libhwcomposer/hwc_copybit.cpp
index 05b9997..1249e84 100644
--- a/libhwcomposer/hwc_copybit.cpp
+++ b/libhwcomposer/hwc_copybit.cpp
@@ -510,16 +510,17 @@
hw_module_t const *module;
if (hw_get_module(COPYBIT_HARDWARE_MODULE_ID, &module) == 0) {
copybit_open(module, &sEngine);
+ CopyBit::openEglLibAndGethandle();
} else {
ALOGE("FATAL ERROR: copybit open failed.");
}
- CopyBit::openEglLibAndGethandle();
}
+
CopybitEngine::~CopybitEngine()
{
- CopyBit::closeEglLib();
if(sEngine)
{
+ CopyBit::closeEglLib();
copybit_close(sEngine);
sEngine = NULL;
}
diff --git a/libhwcomposer/hwc_utils.cpp b/libhwcomposer/hwc_utils.cpp
index 553068f..f523856 100644
--- a/libhwcomposer/hwc_utils.cpp
+++ b/libhwcomposer/hwc_utils.cpp
@@ -48,7 +48,6 @@
ctx->mMDP.version = qdutils::MDPVersion::getInstance().getMDPVersion();
ctx->mMDP.hasOverlay = qdutils::MDPVersion::getInstance().hasOverlay();
ctx->mMDP.panel = qdutils::MDPVersion::getInstance().getPanelType();
- ctx->mCopybitEngine = CopybitEngine::getInstance();
ctx->mExtDisplay = new ExternalDisplay(ctx);
memset(ctx->dpys,(int)EGL_NO_DISPLAY, MAX_NUM_DISPLAYS);
MDPComp::init(ctx);