diff --git a/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp b/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
index 4238a0c..af935a2 100644
--- a/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
+++ b/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
@@ -2116,10 +2116,10 @@
   /*******************************/
   else if(m_state == OMX_StateInvalid)
   {
-    /* State Transition from Inavlid to any state */
-    if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                  || OMX_StateIdle || OMX_StateExecuting
-                  || OMX_StatePause || OMX_StateInvalid))
+    /* State Transition from Invalid to any state */
+    if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+       eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+       eState == OMX_StatePause || eState == OMX_StateInvalid)
     {
       DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded\n");
       post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec_copper.cpp b/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec_copper.cpp
index 689aacf..a6f39cd 100644
--- a/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec_copper.cpp
+++ b/msm8974/mm-video-legacy/vidc/vdec/src/omx_vdec_copper.cpp
@@ -2036,10 +2036,10 @@
   /*******************************/
   else if(m_state == OMX_StateInvalid)
   {
-    /* State Transition from Inavlid to any state */
-    if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                  || OMX_StateIdle || OMX_StateExecuting
-                  || OMX_StatePause || OMX_StateInvalid))
+    /* State Transition from Invalid to any state */
+    if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+       eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+       eState == OMX_StatePause || eState == OMX_StateInvalid)
     {
       DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded\n");
       post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8974/mm-video-legacy/vidc/venc/src/omx_video_base.cpp b/msm8974/mm-video-legacy/vidc/venc/src/omx_video_base.cpp
index 2b62fa1..75f8948 100644
--- a/msm8974/mm-video-legacy/vidc/venc/src/omx_video_base.cpp
+++ b/msm8974/mm-video-legacy/vidc/venc/src/omx_video_base.cpp
@@ -1165,10 +1165,10 @@
   /*******************************/
   else if(m_state == OMX_StateInvalid)
   {
-    /* State Transition from Inavlid to any state */
-    if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                  || OMX_StateIdle || OMX_StateExecuting
-                  || OMX_StatePause || OMX_StateInvalid))
+    /* State Transition from Invalid to any state */
+    if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+       eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+       eState == OMX_StatePause || eState == OMX_StateInvalid)
     {
       DEBUG_PRINT_ERROR("ERROR: OMXCORE-SM: Invalid -->Loaded\n");
       post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec.cpp b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec.cpp
index 2b2c156..2ed41bb 100755
--- a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec.cpp
+++ b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec.cpp
@@ -2034,10 +2034,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
index b82d066..dae6b4b 100644
--- a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
+++ b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
@@ -2005,10 +2005,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
index fa27f7b..d9755f7 100644
--- a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
+++ b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
@@ -2521,10 +2521,10 @@
     /*******************************/
     else if(m_state == OMX_StateInvalid)
     {
-        /* State Transition from Inavlid to any state */
-        if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-            || OMX_StateIdle || OMX_StateExecuting
-            || OMX_StatePause || OMX_StateInvalid))
+        /* State Transition from Invalid to any state */
+        if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+           eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+           eState == OMX_StatePause || eState == OMX_StateInvalid)
         {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
index 811f9d7..a6bf271 100644
--- a/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
+++ b/msm8974/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
@@ -2472,10 +2472,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8974/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp b/msm8974/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
index 94046a1..c0a8e52 100644
--- a/msm8974/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
+++ b/msm8974/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
@@ -1050,10 +1050,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR: OMXCORE-SM: Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
index 9fc4014..9fd367a 100644
--- a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
+++ b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc.cpp
@@ -1984,10 +1984,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
index 4f73bed..428153a 100644
--- a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
+++ b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_hevc_swvdec.cpp
@@ -2552,10 +2552,10 @@
     /*******************************/
     else if(m_state == OMX_StateInvalid)
     {
-        /* State Transition from Inavlid to any state */
-        if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-            || OMX_StateIdle || OMX_StateExecuting
-            || OMX_StatePause || OMX_StateInvalid))
+        /* State Transition from Invalid to any state */
+        if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+           eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+           eState == OMX_StatePause || eState == OMX_StateInvalid)
         {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
index 8fda658..77fb18c 100644
--- a/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
+++ b/msm8996/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
@@ -2933,10 +2933,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8996/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp b/msm8996/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
index 02e9ab0..62fd5d8 100644
--- a/msm8996/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
+++ b/msm8996/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
@@ -1126,10 +1126,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR: OMXCORE-SM: Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8996/videopp/src/omx_vdpp.cpp b/msm8996/videopp/src/omx_vdpp.cpp
index 390c37e..22732f2 100644
--- a/msm8996/videopp/src/omx_vdpp.cpp
+++ b/msm8996/videopp/src/omx_vdpp.cpp
@@ -2196,10 +2196,10 @@
   /*******************************/
   else if(m_state == OMX_StateInvalid)
   {
-    /* State Transition from Inavlid to any state */
-    if(eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                  || OMX_StateIdle || OMX_StateExecuting
-                  || OMX_StatePause || OMX_StateInvalid))
+    /* State Transition from Invalid to any state */
+    if(eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+       eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+       eState == OMX_StatePause || eState == OMX_StateInvalid)
     {
       DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded\n");
       post_event(OMX_EventError,OMX_ErrorInvalidState,\
diff --git a/msm8998/libc2dcolorconvert/Android.mk b/msm8998/libc2dcolorconvert/Android.mk
index 8c767ba..4898968 100644
--- a/msm8998/libc2dcolorconvert/Android.mk
+++ b/msm8998/libc2dcolorconvert/Android.mk
@@ -7,6 +7,9 @@
 
 LOCAL_CFLAGS := -Wall -Werror
 
+# Allow implicit fallthrough in C2DColorConverter.cpp:554 until it is fixed.
+LOCAL_CFLAGS += -Wno-error=implicit-fallthrough
+
 LOCAL_C_INCLUDES := \
     $(TARGET_OUT_HEADERS)/adreno
 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/qcom/display
diff --git a/msm8998/mm-video-v4l2/vidc/vdec/Android.mk b/msm8998/mm-video-v4l2/vidc/vdec/Android.mk
index 250350e..4c44fc8 100644
--- a/msm8998/mm-video-v4l2/vidc/vdec/Android.mk
+++ b/msm8998/mm-video-v4l2/vidc/vdec/Android.mk
@@ -133,6 +133,9 @@
 
 LOCAL_CFLAGS            += -Wno-error
 
+# Allow implicit fallthrough in omx_vdec_v4l2.cpp:5409 until it is fixed.
+LOCAL_CFLAGS += -Wno-error=implicit-fallthrough
+
 include $(BUILD_SHARED_LIBRARY)
 
 
diff --git a/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp b/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
index 419d9f5..a24c4c7 100644
--- a/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
+++ b/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
@@ -3156,10 +3156,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR::send_command_proxy(): Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
diff --git a/msm8998/mm-video-v4l2/vidc/venc/Android.mk b/msm8998/mm-video-v4l2/vidc/venc/Android.mk
index a66593b..4080333 100644
--- a/msm8998/mm-video-v4l2/vidc/venc/Android.mk
+++ b/msm8998/mm-video-v4l2/vidc/venc/Android.mk
@@ -132,6 +132,9 @@
 LOCAL_SRC_FILES   += src/omx_video_encoder.cpp
 LOCAL_SRC_FILES   += src/video_encoder_device_v4l2.cpp
 
+# Allow implicit fallthrough in omx_video_encoder.cpp:2322 until it is fixed.
+LOCAL_CFLAGS += -Wno-error=implicit-fallthrough
+
 include $(BUILD_SHARED_LIBRARY)
 
 ifeq ($(call is-board-platform-in-list, $(TARGETS_THAT_NEED_SW_VENC_MPEG4)),true)
diff --git a/msm8998/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp b/msm8998/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
index ae640a7..d1c8d97 100644
--- a/msm8998/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
+++ b/msm8998/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
@@ -1137,10 +1137,10 @@
     /* Current State is Invalid */
     /*******************************/
     else if (m_state == OMX_StateInvalid) {
-        /* State Transition from Inavlid to any state */
-        if (eState == (OMX_StateLoaded || OMX_StateWaitForResources
-                    || OMX_StateIdle || OMX_StateExecuting
-                    || OMX_StatePause || OMX_StateInvalid)) {
+        /* State Transition from Invalid to any state */
+        if (eState == OMX_StateLoaded || eState == OMX_StateWaitForResources ||
+            eState == OMX_StateIdle || eState == OMX_StateExecuting ||
+            eState == OMX_StatePause || eState == OMX_StateInvalid) {
             DEBUG_PRINT_ERROR("ERROR: OMXCORE-SM: Invalid -->Loaded");
             post_event(OMX_EventError,OMX_ErrorInvalidState,\
                     OMX_COMPONENT_GENERATE_EVENT);
