diff --git a/source/Lib/CommonLib/TypeDef.h b/source/Lib/CommonLib/TypeDef.h
index fb51e135bd22e715904eb1935e464d38ffae2021..d9c1d8b03a1f2c8ccd08e05b918fef9ca79d0f79 100644
--- a/source/Lib/CommonLib/TypeDef.h
+++ b/source/Lib/CommonLib/TypeDef.h
@@ -138,6 +138,7 @@
 
 #define JVET_N0196_SIX_TAP_FILTERS                        1 // 6-tap filters for affine motion compensation
 
+#define JVET_N0213_TMVP_REMOVAL                           1 // Remove TMVP candidates from merge and amvp mode with samples <= 32
 
 #define JCTVC_Y0038_PARAMS                                1
 
diff --git a/source/Lib/CommonLib/UnitTools.cpp b/source/Lib/CommonLib/UnitTools.cpp
index 6fafc250eee32a555e81ecc6f9f08395d1b07b52..93e3a8322954ded9471c17130d64be2361ba6026 100644
--- a/source/Lib/CommonLib/UnitTools.cpp
+++ b/source/Lib/CommonLib/UnitTools.cpp
@@ -1624,7 +1624,11 @@ void PU::getInterMergeCandidates( const PredictionUnit &pu, MergeCtx& mrgCtx,
     return;
   }
 
+#if JVET_N0213_TMVP_REMOVAL
+  if (slice.getEnableTMVPFlag() && (pu.lumaSize().width + pu.lumaSize().height > 12))
+#else
   if (slice.getEnableTMVPFlag())
+#endif
   {
     //>> MTK colocated-RightBottom
     // offset the pos to be sure to "point" to the same position the uiAbsPartIdx would've pointed to
@@ -2700,7 +2704,11 @@ void PU::fillMvpCand(PredictionUnit &pu, const RefPicList &eRefPicList, const in
     }
   }
 
+#if JVET_N0213_TMVP_REMOVAL
+  if (cs.slice->getEnableTMVPFlag() && pInfo->numCand < AMVP_MAX_NUM_CANDS && (pu.lumaSize().width + pu.lumaSize().height > 12))
+#else
   if( cs.slice->getEnableTMVPFlag() && pInfo->numCand < AMVP_MAX_NUM_CANDS )
+#endif
   {
     // Get Temporal Motion Predictor
     const int refIdx_Col = refIdx;