QCamera2: HAL3: Combine sensor, and ISP gains into EXIF

JPEG ISO EXIF should combine sensor sensitivity, ISP pre-stats sensitivity
and post-stats sensitivity.

Bug: 29268533
Change-Id: I40d0baf014e820d96454c3fbc9a958e86c0b27d4
diff --git a/QCamera2/stack/mm-jpeg-interface/src/mm_jpeg_exif.c b/QCamera2/stack/mm-jpeg-interface/src/mm_jpeg_exif.c
index e56fc24..3fa7464 100644
--- a/QCamera2/stack/mm-jpeg-interface/src/mm_jpeg_exif.c
+++ b/QCamera2/stack/mm-jpeg-interface/src/mm_jpeg_exif.c
@@ -566,10 +566,25 @@
       }
     } else {
       /* HAL V3 */
+      p_3a_params.iso_value = 100;
+
       IF_META_AVAILABLE(int32_t, iso, CAM_INTF_META_SENSOR_SENSITIVITY, p_meta) {
-        p_3a_params.iso_value= *iso;
+        p_3a_params.iso_value= p_3a_params.iso_value * (*iso) / 100;
       } else {
-        LOGE("Cannot extract Iso value");
+        LOGE("Cannot extract SENSOR_SENSITIVITY value");
+      }
+
+      IF_META_AVAILABLE(int32_t, isp_iso, CAM_INTF_META_ISP_SENSITIVITY, p_meta) {
+        p_3a_params.iso_value= p_3a_params.iso_value * (*isp_iso) / 100;
+      } else {
+        LOGE("Cannot extract ISP_SENSITIVITY value");
+      }
+
+      IF_META_AVAILABLE(float, post_stats_iso, CAM_INTF_META_ISP_POST_STATS_SENSITIVITY, p_meta) {
+        p_3a_params.iso_value= p_3a_params.iso_value * (*post_stats_iso);
+      } else {
+        /* CAM_INTF_META_ISP_POST_STATS_SENSITIVITY is optional */
+        LOGD("Cannot extract ISP_POST_STATS_SENSITIVITY value");
       }
 
       IF_META_AVAILABLE(int64_t, sensor_exposure_time,