QCamera: HAL3: Use free running index mode for internal streams

For internally managed streams which dont have framenumber to idx
association use free running Q mode

Ack-by: Mansoor Aftab

BUG=28911334

Change-Id: I878173009f1a21d451f0f2b9a18fb1f3ff0a43ba
diff --git a/QCamera2/HAL3/QCamera3HWI.cpp b/QCamera2/HAL3/QCamera3HWI.cpp
index f5d20de..f1d0650 100644
--- a/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/QCamera2/HAL3/QCamera3HWI.cpp
@@ -3896,8 +3896,9 @@
     }
     if (blob_request && mRawDumpChannel) {
         LOGD("Trigger Raw based on blob request if Raw dump is enabled");
-        streamsArray.stream_request[streamsArray.num_streams++].streamID =
+        streamsArray.stream_request[streamsArray.num_streams].streamID =
             mRawDumpChannel->getStreamID(mRawDumpChannel->getStreamTypeMask());
+        streamsArray.stream_request[streamsArray.num_streams++].buf_index = CAM_FREERUN_IDX;
     }
 
     if(request->input_buffer == NULL) {
@@ -4107,7 +4108,7 @@
                 for (j = 0; j < streamsArray.num_streams; j++) {
                     if (streamsArray.stream_request[j].streamID == streamId) {
                       if (mOpMode == CAMERA3_STREAM_CONFIGURATION_CONSTRAINED_HIGH_SPEED_MODE)
-                          streamsArray.stream_request[j].buf_index = 0xFFFFFFFF;
+                          streamsArray.stream_request[j].buf_index = CAM_FREERUN_IDX;
                       else
                           streamsArray.stream_request[j].buf_index = indexUsed;
                         break;
@@ -4138,7 +4139,7 @@
             for (j = 0; j < streamsArray.num_streams; j++) {
                 if (streamsArray.stream_request[j].streamID == streamId) {
                     if (mOpMode == CAMERA3_STREAM_CONFIGURATION_CONSTRAINED_HIGH_SPEED_MODE)
-                        streamsArray.stream_request[j].buf_index = 0xFFFFFFFF;
+                        streamsArray.stream_request[j].buf_index = CAM_FREERUN_IDX;
                     else
                         streamsArray.stream_request[j].buf_index = indexUsed;
                     break;
@@ -4165,7 +4166,7 @@
             for (j = 0; j < streamsArray.num_streams; j++) {
                 if (streamsArray.stream_request[j].streamID == streamId) {
                     if (mOpMode == CAMERA3_STREAM_CONFIGURATION_CONSTRAINED_HIGH_SPEED_MODE)
-                        streamsArray.stream_request[j].buf_index = 0xFFFFFFFF;
+                        streamsArray.stream_request[j].buf_index = CAM_FREERUN_IDX;
                     else
                         streamsArray.stream_request[j].buf_index = indexUsed;
                     break;
diff --git a/QCamera2/stack/common/cam_types.h b/QCamera2/stack/common/cam_types.h
index b41938c..ed71c24 100644
--- a/QCamera2/stack/common/cam_types.h
+++ b/QCamera2/stack/common/cam_types.h
@@ -145,6 +145,9 @@
 /* Defines the number of columns in the color correction matrix (CCM) */
 #define AWB_NUM_CCM_COLS (3)
 
+/* Index to switch H/W to consume to free-run Q*/
+#define CAM_FREERUN_IDX 0xFFFFFFFF
+
 typedef uint64_t cam_feature_mask_t;
 
 typedef enum {