ifdef overlay graphics

Change-Id: If3173ddbfaccb95cc48636240ee3a918dac1e23f
diff --git a/minui/Android.mk b/minui/Android.mk
index 1faaf6d..09409a4 100644
--- a/minui/Android.mk
+++ b/minui/Android.mk
@@ -6,13 +6,13 @@
     graphics.cpp \
     graphics_drm.cpp \
     graphics_fbdev.cpp \
-    resources.cpp \
-    graphics_overlay.cpp
+    resources.cpp
 
 LOCAL_C_INCLUDES := external/libcxx/include external/libpng
 
 ifeq ($(TW_TARGET_USES_QCOM_BSP), true)
   LOCAL_CFLAGS += -DMSM_BSP
+  LOCAL_SRC_FILES += graphics_overlay.cpp
   ifeq ($(TARGET_PREBUILT_KERNEL),)
     LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
     LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
diff --git a/minui/graphics.cpp b/minui/graphics.cpp
index 93b70da..244db3c 100644
--- a/minui/graphics.cpp
+++ b/minui/graphics.cpp
@@ -477,6 +477,7 @@
     gr_init_font();
     gr_draw = NULL;
 
+#ifdef MSM_BSP
     gr_backend = open_overlay();
     if (gr_backend) {
         gr_draw = gr_backend->init(gr_backend);
@@ -485,9 +486,10 @@
         } else
             printf("Using overlay graphics.\n");
     }
+#endif
 
 #ifndef MSM_BSP
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_adf();
         if (gr_backend) {
             gr_draw = gr_backend->init(gr_backend);
@@ -501,14 +503,14 @@
 	printf("Skipping adf graphics because TW_TARGET_USES_QCOM_BSP := true\n");
 #endif
 
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_drm();
         gr_draw = gr_backend->init(gr_backend);
         if (gr_draw)
             printf("Using drm graphics.\n");
     }
 
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_fbdev();
         gr_draw = gr_backend->init(gr_backend);
         if (gr_draw == NULL) {
diff --git a/minuitwrp/Android.mk b/minuitwrp/Android.mk
index 5124666..054dd45 100644
--- a/minuitwrp/Android.mk
+++ b/minuitwrp/Android.mk
@@ -6,7 +6,6 @@
     graphics.cpp \
     graphics_fbdev.cpp \
     resources.cpp \
-    graphics_overlay.cpp \
     truetype.cpp \
     graphics_utils.cpp \
     events.cpp
@@ -20,6 +19,7 @@
 
 ifeq ($(TW_TARGET_USES_QCOM_BSP), true)
   LOCAL_CFLAGS += -DMSM_BSP
+  LOCAL_SRC_FILES += graphics_overlay.cpp
   ifeq ($(TARGET_PREBUILT_KERNEL),)
     LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
     LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
diff --git a/minuitwrp/graphics.cpp b/minuitwrp/graphics.cpp
index c8ea5cb..3dc88d9 100644
--- a/minuitwrp/graphics.cpp
+++ b/minuitwrp/graphics.cpp
@@ -296,6 +296,7 @@
 {
     gr_draw = NULL;
 
+#ifdef MSM_BSP
     gr_backend = open_overlay();
     if (gr_backend) {
         gr_draw = gr_backend->init(gr_backend);
@@ -304,9 +305,10 @@
         } else
             printf("Using overlay graphics.\n");
     }
+#endif
 
 #ifdef HAS_ADF
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_adf();
         if (gr_backend) {
             gr_draw = gr_backend->init(gr_backend);
@@ -325,7 +327,7 @@
 #endif
 
 #ifdef HAS_DRM
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_drm();
         gr_draw = gr_backend->init(gr_backend);
         if (gr_draw)
@@ -335,7 +337,7 @@
     printf("Skipping drm graphics -- not present in build tree\n");
 #endif
 
-    if (!gr_draw) {
+    if (!gr_backend || !gr_draw) {
         gr_backend = open_fbdev();
         gr_draw = gr_backend->init(gr_backend);
         if (gr_draw == NULL) {