Fix partition eval flag setting

Under x->must_find_valid_partition, partition eval flags are
set appropriately based on min_partition_size.

BUG=aomedia:2602

STATS_CHANGED probably for 4K contents

Change-Id: I6a092a17a58d968d77f8f8c129e4d11ebfe2121d
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 8c93bf4..3e1522e 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -2816,14 +2816,17 @@
 
 BEGIN_PARTITION_SEARCH:
   if (x->must_find_valid_partition) {
-    do_square_split = bsize_at_least_8x8;
-    partition_none_allowed = has_rows && has_cols;
+    do_square_split = bsize_at_least_8x8 && (blksize > min_partition_size);
+    partition_none_allowed =
+        has_rows && has_cols && (blksize >= min_partition_size);
     partition_horz_allowed =
         has_cols && bsize_at_least_8x8 && cpi->oxcf.enable_rect_partitions &&
+        (blksize > min_partition_size) &&
         get_plane_block_size(get_partition_subsize(bsize, PARTITION_HORZ), xss,
                              yss) != BLOCK_INVALID;
     partition_vert_allowed =
         has_rows && bsize_at_least_8x8 && cpi->oxcf.enable_rect_partitions &&
+        (blksize > min_partition_size) &&
         get_plane_block_size(get_partition_subsize(bsize, PARTITION_VERT), xss,
                              yss) != BLOCK_INVALID;
     terminate_partition_search = 0;
@@ -4627,12 +4630,11 @@
       float features[FEATURE_SIZE_MAX_MIN_PART_PRED] = { 0.0f };
 
       av1_get_max_min_partition_features(cpi, x, mi_row, mi_col, features);
-      max_sq_size =
-          AOMMIN(av1_predict_max_partition(cpi, x, features), max_sq_size);
+      max_sq_size = AOMMAX(
+          AOMMIN(av1_predict_max_partition(cpi, x, features), max_sq_size),
+          min_sq_size);
     }
 
-    min_sq_size = AOMMIN(min_sq_size, max_sq_size);
-
     const int num_passes = cpi->oxcf.sb_multipass_unit_test ? 2 : 1;
 
     if (num_passes == 1) {