diff --git a/libgralloc/mapper.cpp b/libgralloc/mapper.cpp
index 0ee69c8..2f2ddc1 100644
--- a/libgralloc/mapper.cpp
+++ b/libgralloc/mapper.cpp
@@ -332,23 +332,6 @@
                 break;
 
             }
-#ifdef QCOM_BSP
-        case GRALLOC_MODULE_PERFORM_UPDATE_BUFFER_GEOMETRY:
-            {
-                int width = va_arg(args, int);
-                int height = va_arg(args, int);
-                int format = va_arg(args, int);
-                private_handle_t* hnd =  va_arg(args, private_handle_t*);
-                if (private_handle_t::validate(hnd)) {
-                    return res;
-                }
-                hnd->width = width;
-                hnd->height = height;
-                hnd->format = format;
-                res = 0;
-            }
-            break;
-#endif
         case GRALLOC_MODULE_PERFORM_GET_STRIDE:
             {
                 int width   = va_arg(args, int);
