v4l2dec: CB0 set dw for h265 [1/1]

PD#SWPL-197002

Problem:
set dw for h265

Solution:
set dw for h265

Verify:
bp201

Change-Id: I45dc0cea86cfee96fb20c137a8c4450c2243fd15
Signed-off-by: hanghang.luo <hanghang.luo@amlogic.com>
diff --git a/src/gstamlv4l2object.c b/src/gstamlv4l2object.c
index 75aff50..0d1da57 100644
--- a/src/gstamlv4l2object.c
+++ b/src/gstamlv4l2object.c
@@ -3654,7 +3654,7 @@
     return FALSE;
 }
 
-static int gst_aml_config_dw_for_hevc_core (gboolean low_mem, gboolean interlace, gboolean pip)
+static int gst_aml_config_dw_for_hevc_core (gboolean low_mem, gboolean interlace, gboolean pip, guint32 pixFormat)
 {
   const char *env_4k;
   const char *env_de_counter;
@@ -3663,15 +3663,23 @@
 
   if (interlace)
   {
-      double_write = VDEC_DW_NO_AFBC;
-      GST_DEBUG("interlace set DW=%d for hevc core", double_write);
+      if (V4L2_PIX_FMT_HEVC == pixFormat)
+      {
+          double_write = VDEC_DW_AFBC_1_1_DW;
+          //need to cfg according to 8bit or 10bit in the future
+      }
+      else
+      {
+          double_write = VDEC_DW_NO_AFBC;
+      }
+      GST_DEBUG ("interlace set DW=%d for hevc core", double_write);
       return double_write;
   }
 
   if (low_mem)
   {
       double_write = VDEC_DW_AFBC_ONLY;
-      GST_DEBUG("low mem set DW=%d for hevc core", double_write);
+      GST_DEBUG ("low mem set DW=%d for hevc core", double_write);
       return double_write;
   }
 
@@ -3682,7 +3690,7 @@
   if (!check_env_valid(env_4k) && !check_env_valid(env_de_counter) && !check_env_valid (env_ai_pq) && !pip)
       double_write = VDEC_DW_AFBC_x2_1_4_DW;
 
-  GST_DEBUG("default set DW=%d for hevc core", double_write);
+  GST_DEBUG ("default set DW=%d for hevc core", double_write);
   return double_write;
 }
 
@@ -3702,14 +3710,14 @@
           if (v4l2object->low_memory_mode && !interlace)
               double_write = VDEC_DW_AFBC_ONLY;
           break;
-      // for hevc core, refer to gst_aml_config_dw__for_hevc_core
+      // for hevc core, refer to gst_aml_config_dw_for_hevc_core
       case V4L2_PIX_FMT_H264:
       case V4L2_PIX_FMT_HEVC:
       case V4L2_PIX_FMT_VP9:
       case V4L2_PIX_FMT_AV1:
       case V4L2_PIX_FMT_AVS2:
       case V4L2_PIX_FMT_AVS3:
-          double_write = gst_aml_config_dw_for_hevc_core (v4l2object->low_memory_mode, interlace, v4l2object->pip);
+          double_write = gst_aml_config_dw_for_hevc_core (v4l2object->low_memory_mode, interlace, v4l2object->pip, pixFormat);
           break;
       default:
           GST_WARNING("unknown video format %d", pixFormat);