Camera3: Ignore Pic Channel native PP mask for reprocess

-Picture channel's PP mask is used to avoid 2-pass reprocess
 in cases where the native stream(non-zsl fallback) has already
 run through PP pipeline in usecases like 4k or currently YUV ZSL.
-However this mask is irrelavant for framework reprocess input,
 since the source stream could have pp connected or disconnected
 based on mask.
-Even if the source stream's pp mask is non-zero there could be
 some pp operations requested as part of the reprocess request
 necessiating a second PP pass
-The above situation can also happen in case of API1 Bidirectional
 ZSL, but works due to the fact that Native fallback and F/W ZSL streams
 are tied together always with a PP mask of 0
-Such an assumption can become valid even for YUV reprocess once
 online reprocess is enabled for YUV streams.

Change-Id: I3dc82a007605a3d3f520f6e9d8fe22b474ebde42
diff --git a/camera/QCamera2/HAL3/QCamera3PostProc.cpp b/camera/QCamera2/HAL3/QCamera3PostProc.cpp
index 9fada4a..0539d0f 100644
--- a/camera/QCamera2/HAL3/QCamera3PostProc.cpp
+++ b/camera/QCamera2/HAL3/QCamera3PostProc.cpp
@@ -185,7 +185,7 @@
     int32_t rc = NO_ERROR;
     QCamera3HardwareInterface* hal_obj = (QCamera3HardwareInterface*)m_parent->mUserData;
 
-    if (hal_obj->needReprocess(mPostProcMask)) {
+    if (hal_obj->needReprocess(mPostProcMask) || config.src_channel != m_parent) {
         if (m_pReprocChannel != NULL) {
             m_pReprocChannel->stop();
             delete m_pReprocChannel;
@@ -489,7 +489,8 @@
 int32_t QCamera3PostProcessor::processData(qcamera_fwk_input_pp_data_t *frame)
 {
     QCamera3HardwareInterface* hal_obj = (QCamera3HardwareInterface*)m_parent->mUserData;
-    if (hal_obj->needReprocess(mPostProcMask)) {
+    if (hal_obj->needReprocess(mPostProcMask) ||
+            frame->reproc_config.src_channel != m_parent) {
         pthread_mutex_lock(&mReprocJobLock);
         // enqueu to post proc input queue
         m_inputFWKPPQ.enqueue((void *)frame);