diff --git a/camera/hal/intel/ipu6/src/core/CameraBuffer.cpp b/camera/hal/intel/ipu6/src/core/CameraBuffer.cpp
index 5961722..45842d2 100644
--- a/camera/hal/intel/ipu6/src/core/CameraBuffer.cpp
+++ b/camera/hal/intel/ipu6/src/core/CameraBuffer.cpp
@@ -157,7 +157,7 @@
 
     LOG1("%s: ubuffer->s.MemType: %d, addr: %p, fd: %d", __func__, ubuffer->s.memType,
          ubuffer->addr, ubuffer->dmafd);
-    //update the v4l2 buffer memory with user infro
+    //update the v4l2 buffer memory with user info
     switch (ubuffer->s.memType) {
         case V4L2_MEMORY_USERPTR:
             setAddr(ubuffer->addr, 0);
@@ -174,8 +174,16 @@
     }
 
     if (mU->s.streamType == CAMERA_STREAM_INPUT || ubuffer->sequence >= 0) {
+        // update timestamp if raw buffer is selected by user and timestamp is set
+        if (ubuffer->timestamp > 0) {
+            struct timeval timestamp = { 0 };
+            timestamp.tv_sec = ubuffer->timestamp / 1000000000LL;
+            timestamp.tv_usec = (ubuffer->timestamp - timestamp.tv_sec * 1000000000LL) / 1000LL;
+            mV.SetTimestamp(timestamp);
+        }
         mV.SetSequence(ubuffer->sequence);
-        LOG2("%s, input buffer sequence %lld", __func__, ubuffer->sequence);
+        LOG2("%s, input buffer sequence %lld, timestamp %ld", __func__, ubuffer->sequence,
+             ubuffer->timestamp);
     }
 }
 
diff --git a/camera/hal/intel/ipu6/src/core/psysprocessor/GPUExecutor.cpp b/camera/hal/intel/ipu6/src/core/psysprocessor/GPUExecutor.cpp
index ce5a461..92244ae 100644
--- a/camera/hal/intel/ipu6/src/core/psysprocessor/GPUExecutor.cpp
+++ b/camera/hal/intel/ipu6/src/core/psysprocessor/GPUExecutor.cpp
@@ -265,8 +265,12 @@
     CheckError(!totalGain, UNKNOWN_ERROR, "Invalid input");
     AiqResult* aiqResults =
         const_cast<AiqResult*>(AiqResultStorage::getInstance(mCameraId)->getAiqResult(seq));
-    CheckError(!aiqResults, UNKNOWN_ERROR, "Cannot find available aiq result.");
-
+    if (aiqResults == nullptr) {
+        LOGW("%s: no result for sequence %ld! use the latest instead", __func__, seq);
+        aiqResults =
+            const_cast<AiqResult*>(AiqResultStorage::getInstance(mCameraId)->getAiqResult());
+        CheckError((aiqResults == nullptr), INVALID_OPERATION, "Cannot find available aiq result.");
+    }
     *totalGain = (aiqResults->mAeResults.exposures[0].exposure->analog_gain *
                   aiqResults->mAeResults.exposures[0].exposure->digital_gain);
     return OK;
