exynos: use Strings8/16 c_str()

.string() doesn't work in QPR2.
Don't replace variable name ctrl.string.
grep -rli "\.string" * | xargs -i@ sed -i 's/\.string/\.c_str/g' @

Change-Id: I4c4921534c54948d68ebee93f0b3f387814b4ee5
diff --git a/gralloc3/src/mali_gralloc_debug.cpp b/gralloc3/src/mali_gralloc_debug.cpp
index 099ff2f..39a2b66 100644
--- a/gralloc3/src/mali_gralloc_debug.cpp
+++ b/gralloc3/src/mali_gralloc_debug.cpp
@@ -137,7 +137,7 @@
 		{
 			dumpSize = dumpStrings.size();
 			*outSize = (dumpSize < *outSize) ? dumpSize : *outSize;
-			memcpy(outBuffer, dumpStrings.string(), *outSize);
+			memcpy(outBuffer, dumpStrings.c_str(), *outSize);
 		}
 	}
 }
diff --git a/gralloc4/src/core/mali_gralloc_debug.cpp b/gralloc4/src/core/mali_gralloc_debug.cpp
index 01b5bd1..0442977 100644
--- a/gralloc4/src/core/mali_gralloc_debug.cpp
+++ b/gralloc4/src/core/mali_gralloc_debug.cpp
@@ -130,7 +130,7 @@
 		{
 			dumpSize = (uint32_t) dumpStrings.size();
 			*outSize = (dumpSize < *outSize) ? dumpSize : *outSize;
-			memcpy(outBuffer, dumpStrings.string(), *outSize);
+			memcpy(outBuffer, dumpStrings.c_str(), *outSize);
 		}
 	}
 }
diff --git a/libcamera/34xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp b/libcamera/34xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
index 357bb19..a859429 100644
--- a/libcamera/34xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/34xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
@@ -332,7 +332,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -369,9 +369,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -389,7 +389,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -403,7 +403,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -423,7 +423,7 @@
     }
     /* 0x0 is no thumbnail mode */
     tempStr.append(",0x0");
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -492,7 +492,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -557,7 +557,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -624,7 +624,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -668,7 +668,7 @@
             tempStr.append(CameraParameters::EFFECT_AQUA);
         }
 
-        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
         p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
     }
 
@@ -708,7 +708,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -738,7 +738,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
     p.set(CameraParameters::KEY_ANTIBANDING, CameraParameters::ANTIBANDING_AUTO);
 
@@ -772,13 +772,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -812,15 +812,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -885,7 +885,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
diff --git a/libcamera/34xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp b/libcamera/34xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
index f61e277..023dbdb 100644
--- a/libcamera/34xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/34xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
@@ -480,7 +480,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -517,9 +517,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -537,7 +537,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -551,7 +551,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -571,7 +571,7 @@
     }
     /* 0x0 is no thumbnail mode */
     tempStr.append(",0x0");
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -648,7 +648,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -714,7 +714,7 @@
             tempStr.append(CameraParameters::FLASH_MODE_TORCH);
         }
 
-        p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+        p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
         p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
     }
 
@@ -788,7 +788,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -832,7 +832,7 @@
             tempStr.append(CameraParameters::EFFECT_AQUA);
         }
 
-        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
         p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
     }
 
@@ -872,7 +872,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -914,7 +914,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -953,13 +953,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -993,15 +993,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1066,7 +1066,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -1089,7 +1089,7 @@
 #ifdef SAMSUNG_TN_FEATURE
     /* For Samsung SDK */
     p.set(CameraParameters::KEY_SUPPORTED_METERING_MODE,
-        tempStr.string());
+        tempStr.c_str());
 #endif
 
     p.set("brightness", 0);
@@ -1187,7 +1187,7 @@
 #if defined(BURST_CAPTURE) && defined(VARIABLE_BURST_FPS)
     tempStr.setTo("");
     tempStr = String8::format("(%d,%d)", BURSTSHOT_MIN_FPS, BURSTSHOT_MAX_FPS);
-    p.set("burstshot-fps-values", tempStr.string());
+    p.set("burstshot-fps-values", tempStr.c_str());
 #else
     p.set("burstshot-fps-values", "(0,0)");
 #endif
@@ -4377,13 +4377,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/34xx/hal3/ExynosCamera3Parameters.cpp b/libcamera/34xx/hal3/ExynosCamera3Parameters.cpp
index 0a373d3..81dde16 100644
--- a/libcamera/34xx/hal3/ExynosCamera3Parameters.cpp
+++ b/libcamera/34xx/hal3/ExynosCamera3Parameters.cpp
@@ -5597,13 +5597,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/74xx/ExynosCameraParameters.cpp b/libcamera/74xx/ExynosCameraParameters.cpp
index 72a0fc7..e195e6e 100644
--- a/libcamera/74xx/ExynosCameraParameters.cpp
+++ b/libcamera/74xx/ExynosCameraParameters.cpp
@@ -650,7 +650,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -687,9 +687,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -707,7 +707,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -721,7 +721,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -741,7 +741,7 @@
     }
     /* 0x0 is no thumbnail mode */
     tempStr.append(",0x0");
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -810,7 +810,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -875,7 +875,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -948,7 +948,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -992,7 +992,7 @@
             tempStr.append(CameraParameters::EFFECT_AQUA);
         }
 
-        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+        p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
         p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
     }
 
@@ -1032,7 +1032,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -1074,7 +1074,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -1113,13 +1113,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.string());
+            ALOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -1153,15 +1153,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1226,7 +1226,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -1249,7 +1249,7 @@
 #ifdef SAMSUNG_TN_FEATURE
     /* For Samsung SDK */
     p.set(CameraParameters::KEY_SUPPORTED_METERING_MODE,
-        tempStr.string());
+        tempStr.c_str());
 #endif
     p.set("brightness", 0);
     p.set("brightness-max", 2);
@@ -9873,13 +9873,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/75xx/ExynosCameraParameters.cpp b/libcamera/75xx/ExynosCameraParameters.cpp
index e3e5313..353f43e 100644
--- a/libcamera/75xx/ExynosCameraParameters.cpp
+++ b/libcamera/75xx/ExynosCameraParameters.cpp
@@ -454,7 +454,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -491,9 +491,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -511,7 +511,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -525,7 +525,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -545,7 +545,7 @@
     }
     /* 0x0 is no thumbnail mode */
     tempStr.append(",0x0");
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -614,7 +614,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -679,7 +679,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -750,7 +750,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -793,7 +793,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 
     /* white balance */
@@ -832,7 +832,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -862,7 +862,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
     p.set(CameraParameters::KEY_ANTIBANDING, CameraParameters::ANTIBANDING_AUTO);
 
@@ -894,13 +894,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            ALOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -934,15 +934,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1007,7 +1007,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("hdr-mode", 0);
     p.set("metering", "center");
diff --git a/libcamera/7885/hal1/Ged/ExynosCamera1ParametersVendor.cpp b/libcamera/7885/hal1/Ged/ExynosCamera1ParametersVendor.cpp
index ee401d0..be311da 100755
--- a/libcamera/7885/hal1/Ged/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/7885/hal1/Ged/ExynosCamera1ParametersVendor.cpp
@@ -483,7 +483,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -520,9 +520,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -540,7 +540,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -554,7 +554,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -572,7 +572,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -641,7 +641,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -706,7 +706,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -773,7 +773,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 #ifndef USE_CAMERA2_API_SUPPORT
@@ -816,7 +816,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 #endif
     /* white balance */
@@ -855,7 +855,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -897,7 +897,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -936,13 +936,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -976,15 +976,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1049,7 +1049,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -3172,13 +3172,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/7885/hal1/Sec/ExynosCamera1ParametersVendor.cpp b/libcamera/7885/hal1/Sec/ExynosCamera1ParametersVendor.cpp
index 93b8941..6bb1e58 100755
--- a/libcamera/7885/hal1/Sec/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/7885/hal1/Sec/ExynosCamera1ParametersVendor.cpp
@@ -957,7 +957,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD(" Default preview size is %dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -994,9 +994,9 @@
     }
 #endif
 
-    CLOGD(" KEY_SUPPORTED_VIDEO_SIZES %s", tempStr.string());
+    CLOGD(" KEY_SUPPORTED_VIDEO_SIZES %s", tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD(" Max video size is %dx%d", m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD(" Default video size is %dx%d", m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -1015,7 +1015,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -1029,7 +1029,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD(" Default picture size is %dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -1051,7 +1051,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &dngPictureW, &dngPictureH, MODE_DNG_PICTURE, m_cameraId) != NO_ERROR) {
         CLOGI("INFO(%s): DNG Picture List is empty.", __FUNCTION__);
     } else {
-        p.set("dng-picture-size-values", tempStr.string());
+        p.set("dng-picture-size-values", tempStr.c_str());
         CLOGD("DEBUG(%s): Default dng picture size is %dx%d", __FUNCTION__, dngPictureW, dngPictureH);
     }
 #endif
@@ -1070,7 +1070,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -1145,7 +1145,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -1210,7 +1210,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* shot-mode */
@@ -1286,7 +1286,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -1329,7 +1329,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 
     /* white balance */
@@ -1368,7 +1368,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -1410,7 +1410,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -1447,13 +1447,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("[setDefaultParameter]maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("[setDefaultParameter]maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -1487,15 +1487,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("[setDefaultParameter]supportedFpsList=%s", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("[setDefaultParameter]supportedFpsList=%s", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1561,7 +1561,7 @@
     }
 #endif
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -1584,7 +1584,7 @@
     }
 
     /* For Samsung SDK */
-    p.set("metering-values", tempStr.string());
+    p.set("metering-values", tempStr.c_str());
 #endif
 
     p.set("brightness", 0);
@@ -1689,7 +1689,7 @@
 #if defined(BURST_CAPTURE) && defined(VARIABLE_BURST_FPS)
     tempStr.setTo("");
     tempStr = String8::format("(%d,%d)", BURSTSHOT_MIN_FPS, BURSTSHOT_MAX_FPS);
-    p.set("burstshot-fps-values", tempStr.string());
+    p.set("burstshot-fps-values", tempStr.c_str());
 #else
     p.set("burstshot-fps-values", "(0,0)");
 #endif
@@ -1743,7 +1743,7 @@
 #ifdef USE_GPU_EFFECT_FPS_RANGE
     tempStr.setTo("");
     tempStr = String8::format("(%d,%d)", GPU_EFFECT_FPS_MIN, GPU_EFFECT_FPS_MAX);
-    p.set("effect-available-fps-values", tempStr.string());
+    p.set("effect-available-fps-values", tempStr.c_str());
 #else
     p.set("effect-available-fps-values", "(0,0)");
 #endif
@@ -5865,13 +5865,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("[setDefaultParameters]zoomRatioList=%s", tempStr.string());
+            CLOGV("[setDefaultParameters]zoomRatioList=%s", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/8895/hal1/Ged/ExynosCamera1ParametersVendor.cpp b/libcamera/8895/hal1/Ged/ExynosCamera1ParametersVendor.cpp
index ee401d0..be311da 100644
--- a/libcamera/8895/hal1/Ged/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/8895/hal1/Ged/ExynosCamera1ParametersVendor.cpp
@@ -483,7 +483,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -520,9 +520,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -540,7 +540,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -554,7 +554,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -572,7 +572,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -641,7 +641,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -706,7 +706,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -773,7 +773,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 #ifndef USE_CAMERA2_API_SUPPORT
@@ -816,7 +816,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 #endif
     /* white balance */
@@ -855,7 +855,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -897,7 +897,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -936,13 +936,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -976,15 +976,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1049,7 +1049,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -3172,13 +3172,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/8895/hal1/Sec/ExynosCamera1ParametersVendor.cpp b/libcamera/8895/hal1/Sec/ExynosCamera1ParametersVendor.cpp
index 90ce8b8..0801998 100644
--- a/libcamera/8895/hal1/Sec/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/8895/hal1/Sec/ExynosCamera1ParametersVendor.cpp
@@ -889,7 +889,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD(" Default preview size is %dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -926,9 +926,9 @@
     }
 #endif
 
-    CLOGD(" KEY_SUPPORTED_VIDEO_SIZES %s", tempStr.string());
+    CLOGD(" KEY_SUPPORTED_VIDEO_SIZES %s", tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD(" Max video size is %dx%d", m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD(" Default video size is %dx%d", m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -946,7 +946,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -960,7 +960,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD(" Default picture size is %dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -982,7 +982,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -1051,7 +1051,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -1116,7 +1116,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* shot-mode */
@@ -1192,7 +1192,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -1235,7 +1235,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 
     /* white balance */
@@ -1274,7 +1274,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -1316,7 +1316,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -1353,13 +1353,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("[setDefaultParameter]maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("[setDefaultParameter]maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -1393,15 +1393,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("[setDefaultParameter]supportedFpsList=%s", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("[setDefaultParameter]supportedFpsList=%s", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1466,7 +1466,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -1490,7 +1490,7 @@
 #ifdef SAMSUNG_TN_FEATURE
     /* For Samsung SDK */
     p.set(CameraParameters::KEY_SUPPORTED_METERING_MODE,
-        tempStr.string());
+        tempStr.c_str());
 #endif
 
     p.set("brightness", 0);
@@ -1592,7 +1592,7 @@
 #if defined(BURST_CAPTURE) && defined(VARIABLE_BURST_FPS)
     tempStr.setTo("");
     tempStr = String8::format("(%d,%d)", BURSTSHOT_MIN_FPS, BURSTSHOT_MAX_FPS);
-    p.set("burstshot-fps-values", tempStr.string());
+    p.set("burstshot-fps-values", tempStr.c_str());
 #else
     p.set("burstshot-fps-values", "(0,0)");
 #endif
@@ -5149,13 +5149,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("[setDefaultParameters]zoomRatioList=%s", tempStr.string());
+            CLOGV("[setDefaultParameters]zoomRatioList=%s", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/88xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp b/libcamera/88xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
index 3a833e5..6af2d64 100644
--- a/libcamera/88xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/88xx/hal1/Ged/ExynosCamera1ParametersVendor.cpp
@@ -496,7 +496,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -533,9 +533,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -553,7 +553,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -567,7 +567,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -585,7 +585,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -654,7 +654,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -719,7 +719,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* scene mode */
@@ -786,7 +786,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 #ifndef USE_CAMERA2_API_SUPPORT
@@ -829,7 +829,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 #endif
     /* white balance */
@@ -868,7 +868,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -910,7 +910,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -949,13 +949,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -989,15 +989,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1062,7 +1062,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -3219,13 +3219,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/88xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp b/libcamera/88xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
index 86cb5bb..1f2eabf 100644
--- a/libcamera/88xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
+++ b/libcamera/88xx/hal1/Sec/ExynosCamera1ParametersVendor.cpp
@@ -844,7 +844,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default preview size is %dx%d", __FUNCTION__, m_cameraInfo.previewW, m_cameraInfo.previewH);
     p.setPreviewSize(m_cameraInfo.previewW, m_cameraInfo.previewH);
 
@@ -881,9 +881,9 @@
     }
 #endif
 
-    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.string());
+    CLOGD("DEBUG(%s): KEY_SUPPORTED_VIDEO_SIZES %s", __FUNCTION__, tempStr.c_str());
 
-    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES, tempStr.c_str());
 
     CLOGD("DEBUG(%s): Max video size is %dx%d", __FUNCTION__, m_cameraInfo.maxVideoW, m_cameraInfo.maxVideoH);
     CLOGD("DEBUG(%s): Default video size is %dx%d", __FUNCTION__, m_cameraInfo.videoW, m_cameraInfo.videoH);
@@ -901,7 +901,7 @@
     /* Preferred preview size for Video */
     tempStr.setTo("");
     tempStr = String8::format("%dx%d", m_cameraInfo.previewW, m_cameraInfo.previewH);
-    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.string());
+    p.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, tempStr.c_str());
 
     /* Picture Size */
     getMaxPictureSize(&m_cameraInfo.pictureW, &m_cameraInfo.pictureH);
@@ -915,7 +915,7 @@
         tempStr = String8::format("%dx%d", m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES, tempStr.c_str());
     CLOGD("DEBUG(%s): Default picture size is %dx%d", __FUNCTION__, m_cameraInfo.pictureW, m_cameraInfo.pictureH);
     p.setPictureSize(m_cameraInfo.pictureW, m_cameraInfo.pictureH);
 
@@ -933,7 +933,7 @@
     if (getResolutionList(tempStr, m_staticInfo, &m_cameraInfo.thumbnailW, &m_cameraInfo.thumbnailH, MODE_THUMBNAIL, m_cameraId) != NO_ERROR) {
         tempStr = String8::format("%dx%d", m_cameraInfo.thumbnailW, m_cameraInfo.thumbnailH);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES, tempStr.c_str());
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH,  m_cameraInfo.thumbnailW);
     p.set(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT, m_cameraInfo.thumbnailH);
 
@@ -1002,7 +1002,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-          tempStr.string());
+          tempStr.c_str());
 
     if (focusMode & FOCUS_MODE_AUTO)
         p.set(CameraParameters::KEY_FOCUS_MODE,
@@ -1067,7 +1067,7 @@
         tempStr.append(CameraParameters::FLASH_MODE_TORCH);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, tempStr.c_str());
     p.set(CameraParameters::KEY_FLASH_MODE, CameraParameters::FLASH_MODE_OFF);
 
     /* shot-mode */
@@ -1143,7 +1143,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_SCENE_MODE,
           CameraParameters::SCENE_MODE_AUTO);
 
@@ -1186,7 +1186,7 @@
         tempStr.append(CameraParameters::EFFECT_AQUA);
     }
 
-    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_EFFECTS, tempStr.c_str());
     p.set(CameraParameters::KEY_EFFECT, CameraParameters::EFFECT_NONE);
 
     /* white balance */
@@ -1225,7 +1225,7 @@
     }
 
     p.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-          tempStr.string());
+          tempStr.c_str());
     p.set(CameraParameters::KEY_WHITE_BALANCE, CameraParameters::WHITE_BALANCE_AUTO);
 
     /* Auto Whitebalance Lock supported */
@@ -1267,7 +1267,7 @@
 #endif
 
     p.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-          tempStr.string());
+          tempStr.c_str());
 
 #ifdef USE_CSC_FEATURE
     p.set(CameraParameters::KEY_ANTIBANDING, m_antiBanding);
@@ -1306,13 +1306,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                p.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 p.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             p.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.string());
+            CLOGI("INFO(%s):maxZoom=%d, max_zoom_ratio= %d, zoomRatioList=%s", "setDefaultParameter", maxZoom, max_zoom_ratio, tempStr.c_str());
         } else {
             p.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             p.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
@@ -1346,15 +1346,15 @@
         snprintf(strBuf, 256, ",%d", i);
         tempStr.append(strBuf);
     }
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.string());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FRAME_RATES,  tempStr.c_str());
 
     minFpsRange = minFpsRange * 1000;
     maxFpsRange = maxFpsRange * 1000;
 
     tempStr.setTo("");
     getSupportedFpsList(tempStr, minFpsRange, maxFpsRange, m_cameraId, m_staticInfo);
-    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.string());
-    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.string());
+    CLOGI("INFO(%s):supportedFpsList=%s", "setDefaultParameter", tempStr.c_str());
+    p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, tempStr.c_str());
     /* p.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, "(15000,30000),(30000,30000)"); */
 
     /* limit 30 fps on default setting. */
@@ -1419,7 +1419,7 @@
     }
 
     p.set("iso-values",
-          tempStr.string());
+          tempStr.c_str());
 
     p.set("wdr", 0);
     p.set("hdr-mode", 0);
@@ -1443,7 +1443,7 @@
 #ifdef SAMSUNG_TN_FEATURE
     /* For Samsung SDK */
     p.set(CameraParameters::KEY_SUPPORTED_METERING_MODE,
-        tempStr.string());
+        tempStr.c_str());
 #endif
 
     p.set("brightness", 0);
@@ -1541,7 +1541,7 @@
 #if defined(BURST_CAPTURE) && defined(VARIABLE_BURST_FPS)
     tempStr.setTo("");
     tempStr = String8::format("(%d,%d)", BURSTSHOT_MIN_FPS, BURSTSHOT_MAX_FPS);
-    p.set("burstshot-fps-values", tempStr.string());
+    p.set("burstshot-fps-values", tempStr.c_str());
 #else
     p.set("burstshot-fps-values", "(0,0)");
 #endif
@@ -5010,13 +5010,13 @@
             int max_zoom_ratio = (int)getMaxZoomRatio();
             tempStr.setTo("");
             if (getZoomRatioList(tempStr, maxZoom, max_zoom_ratio, m_staticInfo->zoomRatioList) == NO_ERROR)
-                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.string());
+                m_params.set(CameraParameters::KEY_ZOOM_RATIOS, tempStr.c_str());
             else
                 m_params.set(CameraParameters::KEY_ZOOM_RATIOS, "100");
 
             m_params.set("constant-growth-rate-zoom-supported", "true");
 
-            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.string());
+            CLOGV("INFO(%s):zoomRatioList=%s", "setDefaultParameter", tempStr.c_str());
         } else {
             m_params.set(CameraParameters::KEY_ZOOM_SUPPORTED, "false");
             m_params.set(CameraParameters::KEY_SMOOTH_ZOOM_SUPPORTED, "false");
diff --git a/libcamera/common/ExynosCameraInterface.cpp b/libcamera/common/ExynosCameraInterface.cpp
index 3db93a8..4231f2c 100644
--- a/libcamera/common/ExynosCameraInterface.cpp
+++ b/libcamera/common/ExynosCameraInterface.cpp
@@ -464,7 +464,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v2/ExynosCamera3Interface.cpp b/libcamera/common_v2/ExynosCamera3Interface.cpp
index 4c4db79..ada2753 100644
--- a/libcamera/common_v2/ExynosCamera3Interface.cpp
+++ b/libcamera/common_v2/ExynosCamera3Interface.cpp
@@ -1147,7 +1147,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v2/ExynosCameraInterface.cpp b/libcamera/common_v2/ExynosCameraInterface.cpp
index d4a3b50..c2b614c 100644
--- a/libcamera/common_v2/ExynosCameraInterface.cpp
+++ b/libcamera/common_v2/ExynosCameraInterface.cpp
@@ -563,7 +563,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3/ExynosCamera3Interface.cpp b/libcamera/common_v3/ExynosCamera3Interface.cpp
index d4b2b84..9b36bec 100644
--- a/libcamera/common_v3/ExynosCamera3Interface.cpp
+++ b/libcamera/common_v3/ExynosCamera3Interface.cpp
@@ -1145,7 +1145,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3/ExynosCameraDualInterface.cpp b/libcamera/common_v3/ExynosCameraDualInterface.cpp
index 9841a5d..9c988b9 100644
--- a/libcamera/common_v3/ExynosCameraDualInterface.cpp
+++ b/libcamera/common_v3/ExynosCameraDualInterface.cpp
@@ -454,7 +454,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3/ExynosCameraInterface.cpp b/libcamera/common_v3/ExynosCameraInterface.cpp
index 448687a..a02de46 100644
--- a/libcamera/common_v3/ExynosCameraInterface.cpp
+++ b/libcamera/common_v3/ExynosCameraInterface.cpp
@@ -563,7 +563,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3_7885/ExynosCamera3DualInterface.cpp b/libcamera/common_v3_7885/ExynosCamera3DualInterface.cpp
index b19558b..87b617c 100755
--- a/libcamera/common_v3_7885/ExynosCamera3DualInterface.cpp
+++ b/libcamera/common_v3_7885/ExynosCamera3DualInterface.cpp
@@ -1204,7 +1204,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3_7885/ExynosCamera3Interface.cpp b/libcamera/common_v3_7885/ExynosCamera3Interface.cpp
index 9a14d2e..a7521a6 100755
--- a/libcamera/common_v3_7885/ExynosCamera3Interface.cpp
+++ b/libcamera/common_v3_7885/ExynosCamera3Interface.cpp
@@ -1151,7 +1151,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3_7885/ExynosCameraDualInterface.cpp b/libcamera/common_v3_7885/ExynosCameraDualInterface.cpp
index 608914e..ed44dd3 100755
--- a/libcamera/common_v3_7885/ExynosCameraDualInterface.cpp
+++ b/libcamera/common_v3_7885/ExynosCameraDualInterface.cpp
@@ -461,7 +461,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera/common_v3_7885/ExynosCameraInterface.cpp b/libcamera/common_v3_7885/ExynosCameraInterface.cpp
index c1068b5..205ef60 100755
--- a/libcamera/common_v3_7885/ExynosCameraInterface.cpp
+++ b/libcamera/common_v3_7885/ExynosCameraInterface.cpp
@@ -565,7 +565,7 @@
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
 #endif
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(
diff --git a/libcamera3/common/Sec/ExynosCameraMetadataConverterVendor.cpp b/libcamera3/common/Sec/ExynosCameraMetadataConverterVendor.cpp
index 175c488..d747bdb 100644
--- a/libcamera3/common/Sec/ExynosCameraMetadataConverterVendor.cpp
+++ b/libcamera3/common/Sec/ExynosCameraMetadataConverterVendor.cpp
@@ -1973,7 +1973,7 @@
     uniqueIdStr = String8::format("%s", m_parameters->getImageUniqueId());
 
     settings->update(SAMSUNG_ANDROID_JPEG_IMAGE_UNIQUE_ID, uniqueIdStr);
-    CLOGV("imageUniqueId is %s", uniqueIdStr.string());
+    CLOGV("imageUniqueId is %s", uniqueIdStr.c_str());
 
     return;
 }
diff --git a/libcamera3/common_v2/Sec/ExynosCameraMetadataConverterVendor.cpp b/libcamera3/common_v2/Sec/ExynosCameraMetadataConverterVendor.cpp
index e2946e5..677aff1 100644
--- a/libcamera3/common_v2/Sec/ExynosCameraMetadataConverterVendor.cpp
+++ b/libcamera3/common_v2/Sec/ExynosCameraMetadataConverterVendor.cpp
@@ -2574,7 +2574,7 @@
     uniqueIdStr = String8::format("%s", parameters->getImageUniqueId());
 
     settings->update(SAMSUNG_ANDROID_JPEG_IMAGE_UNIQUE_ID, uniqueIdStr);
-    CLOGV("imageUniqueId is %s", uniqueIdStr.string());
+    CLOGV("imageUniqueId is %s", uniqueIdStr.c_str());
 #endif
 
     return;
diff --git a/libcamera_external/ISecCameraHardware.cpp b/libcamera_external/ISecCameraHardware.cpp
index dbd5994..9f204db 100644
--- a/libcamera_external/ISecCameraHardware.cpp
+++ b/libcamera_external/ISecCameraHardware.cpp
@@ -817,7 +817,7 @@
 
     if (mCameraId == CAMERA_FACING_BACK) {
         mParameters.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES,
-                SecCameraParameters::createSizesStr(backPreviewSizes, ARRAY_SIZE(backPreviewSizes)).string());
+                SecCameraParameters::createSizesStr(backPreviewSizes, ARRAY_SIZE(backPreviewSizes)).c_str());
 
         mParameters.set(CameraParameters::KEY_PREVIEW_FPS_RANGE, B_KEY_PREVIEW_FPS_RANGE_VALUE);
         mParameters.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, B_KEY_SUPPORTED_PREVIEW_FPS_RANGE_VALUE);
@@ -828,7 +828,7 @@
         mParameters.set(CameraParameters::KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO, B_KEY_PREFERRED_PREVIEW_SIZE_FOR_VIDEO_VALUE);
     } else {
         mParameters.set(CameraParameters::KEY_SUPPORTED_PREVIEW_SIZES,
-                SecCameraParameters::createSizesStr(frontPreviewSizes, ARRAY_SIZE(frontPreviewSizes)).string());
+                SecCameraParameters::createSizesStr(frontPreviewSizes, ARRAY_SIZE(frontPreviewSizes)).c_str());
 
         mParameters.set(CameraParameters::KEY_PREVIEW_FPS_RANGE, F_KEY_PREVIEW_FPS_RANGE_VALUE);
         mParameters.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FPS_RANGE, F_KEY_SUPPORTED_PREVIEW_FPS_RANGE_VALUE);
@@ -841,7 +841,7 @@
 
     mParameters.setPreviewFormat(previewPixelFormats[0].desc);
     mParameters.set(CameraParameters::KEY_SUPPORTED_PREVIEW_FORMATS,
-        SecCameraParameters::createValuesStr(previewPixelFormats, ARRAY_SIZE(previewPixelFormats)).string());
+        SecCameraParameters::createValuesStr(previewPixelFormats, ARRAY_SIZE(previewPixelFormats)).c_str());
 
     /* Picture */
     mParameters.setPictureSize(mPictureSize.width, mPictureSize.height);
@@ -850,21 +850,21 @@
 
     if (mCameraId == CAMERA_FACING_BACK) {
         mParameters.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES,
-                SecCameraParameters::createSizesStr(backPictureSizes, ARRAY_SIZE(backPictureSizes)).string());
+                SecCameraParameters::createSizesStr(backPictureSizes, ARRAY_SIZE(backPictureSizes)).c_str());
 
         mParameters.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES,
-                SecCameraParameters::createSizesStr(backThumbSizes, ARRAY_SIZE(backThumbSizes)).string());
+                SecCameraParameters::createSizesStr(backThumbSizes, ARRAY_SIZE(backThumbSizes)).c_str());
     } else {
         mParameters.set(CameraParameters::KEY_SUPPORTED_PICTURE_SIZES,
-                SecCameraParameters::createSizesStr(frontPictureSizes, ARRAY_SIZE(frontPictureSizes)).string());
+                SecCameraParameters::createSizesStr(frontPictureSizes, ARRAY_SIZE(frontPictureSizes)).c_str());
 
         mParameters.set(CameraParameters::KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES,
-                SecCameraParameters::createSizesStr(frontThumbSizes, ARRAY_SIZE(frontThumbSizes)).string());
+                SecCameraParameters::createSizesStr(frontThumbSizes, ARRAY_SIZE(frontThumbSizes)).c_str());
     }
 
     mParameters.setPictureFormat(picturePixelFormats[0].desc);
     mParameters.set(CameraParameters::KEY_SUPPORTED_PICTURE_FORMATS,
-        SecCameraParameters::createValuesStr(picturePixelFormats, ARRAY_SIZE(picturePixelFormats)).string());
+        SecCameraParameters::createValuesStr(picturePixelFormats, ARRAY_SIZE(picturePixelFormats)).c_str());
 
 	mParameters.set(CameraParameters::KEY_JPEG_QUALITY, 1);
 	mParameters.set(CameraParameters::KEY_JPEG_THUMBNAIL_QUALITY, 100);
@@ -875,11 +875,11 @@
     mParameters.setVideoSize(mVideoSize.width, mVideoSize.height);
     if (mCameraId == CAMERA_FACING_BACK) {
         mParameters.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES,
-            SecCameraParameters::createSizesStr(backRecordingSizes, ARRAY_SIZE(backRecordingSizes)).string());
+            SecCameraParameters::createSizesStr(backRecordingSizes, ARRAY_SIZE(backRecordingSizes)).c_str());
         mParameters.set(CameraParameters::KEY_VIDEO_STABILIZATION_SUPPORTED, B_KEY_VIDEO_STABILIZATION_SUPPORTED_VALUE);
     } else {
         mParameters.set(CameraParameters::KEY_SUPPORTED_VIDEO_SIZES,
-                SecCameraParameters::createSizesStr(frontRecordingSizes, ARRAY_SIZE(frontRecordingSizes)).string());
+                SecCameraParameters::createSizesStr(frontRecordingSizes, ARRAY_SIZE(frontRecordingSizes)).c_str());
         mParameters.set(CameraParameters::KEY_VIDEO_STABILIZATION_SUPPORTED, F_KEY_VIDEO_STABILIZATION_SUPPORTED_VALUE);
     }
 
@@ -888,27 +888,27 @@
     /* UI settings */
     mParameters.set(CameraParameters::KEY_WHITE_BALANCE, whiteBalances[0].desc);
     mParameters.set(CameraParameters::KEY_SUPPORTED_WHITE_BALANCE,
-        SecCameraParameters::createValuesStr(whiteBalances, ARRAY_SIZE(whiteBalances)).string());
+        SecCameraParameters::createValuesStr(whiteBalances, ARRAY_SIZE(whiteBalances)).c_str());
 
     mParameters.set(CameraParameters::KEY_EFFECT, effects[0].desc);
     mParameters.set(CameraParameters::KEY_SUPPORTED_EFFECTS,
-       SecCameraParameters::createValuesStr(effects, ARRAY_SIZE(effects)).string());
+       SecCameraParameters::createValuesStr(effects, ARRAY_SIZE(effects)).c_str());
 
     if (mCameraId == CAMERA_FACING_BACK) {
         mParameters.set(CameraParameters::KEY_SCENE_MODE, sceneModes[0].desc);
         mParameters.set(CameraParameters::KEY_SUPPORTED_SCENE_MODES,
-                SecCameraParameters::createValuesStr(sceneModes, ARRAY_SIZE(sceneModes)).string());
+                SecCameraParameters::createValuesStr(sceneModes, ARRAY_SIZE(sceneModes)).c_str());
 
         if (IsFlashSupported()) {
             mParameters.set(CameraParameters::KEY_FLASH_MODE, flashModes[0].desc);
             mParameters.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES,
-                    SecCameraParameters::createValuesStr(flashModes, ARRAY_SIZE(flashModes)).string());
+                    SecCameraParameters::createValuesStr(flashModes, ARRAY_SIZE(flashModes)).c_str());
         }
 
         mParameters.set(CameraParameters::KEY_FOCUS_MODE, backFocusModes[0].desc);
         mParameters.set(CameraParameters::KEY_FOCUS_DISTANCES, B_KEY_NORMAL_FOCUS_DISTANCES_VALUE);
         mParameters.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-                SecCameraParameters::createValuesStr(backFocusModes, ARRAY_SIZE(backFocusModes)).string());
+                SecCameraParameters::createValuesStr(backFocusModes, ARRAY_SIZE(backFocusModes)).c_str());
 
         if (IsAutoFocusSupported()) {
             /* FOCUS AREAS supported.
@@ -924,7 +924,7 @@
         mParameters.set(CameraParameters::KEY_FOCUS_MODE, frontFocusModes[0].desc);
         mParameters.set(CameraParameters::KEY_FOCUS_DISTANCES, F_KEY_FOCUS_DISTANCES_VALUE);
         mParameters.set(CameraParameters::KEY_SUPPORTED_FOCUS_MODES,
-                SecCameraParameters::createValuesStr(frontFocusModes, ARRAY_SIZE(frontFocusModes)).string());
+                SecCameraParameters::createValuesStr(frontFocusModes, ARRAY_SIZE(frontFocusModes)).c_str());
     }
 
     /* Face Detect */
@@ -973,11 +973,11 @@
     // chooseAntiBandingFrequency();
     if (mCameraId == CAMERA_FACING_BACK) {
         mParameters.set(CameraParameters::KEY_SUPPORTED_ANTIBANDING,
-                SecCameraParameters::createValuesStr(antibandings, ARRAY_SIZE(antibandings)).string());
+                SecCameraParameters::createValuesStr(antibandings, ARRAY_SIZE(antibandings)).c_str());
         mParameters.set(CameraParameters::KEY_ANTIBANDING, antibandings[3].desc);
     }
 
-    ALOGV("initDefaultParameters EX: %s", mParameters.flatten().string());
+    ALOGV("initDefaultParameters EX: %s", mParameters.flatten().c_str());
 }
 
 status_t ISecCameraHardware::setPreviewWindow(preview_stream_ops *w)
@@ -4509,7 +4509,7 @@
 
     Mutex::Autolock l(&mLock);
 
-    ALOGV("DEBUG(%s): [Before Param] %s", __FUNCTION__, params.flatten().string());
+    ALOGV("DEBUG(%s): [Before Param] %s", __FUNCTION__, params.flatten().c_str());
 
     status_t rc, final_rc = NO_ERROR;
 
@@ -4765,7 +4765,7 @@
 
     LOG_PERFORMANCE_END(1, "total");
 
-    ALOGV("DEBUG(%s): [After Param] %s", __FUNCTION__, params.flatten().string());
+    ALOGV("DEBUG(%s): [After Param] %s", __FUNCTION__, params.flatten().c_str());
 
     ALOGD("setParameters X: %s", final_rc == NO_ERROR ? "success" : "failed");
     return final_rc;
@@ -5014,11 +5014,11 @@
     mParameters.set(CameraParameters::KEY_RECORDING_HINT, str);
 
     String8 recordHint(str);
-    ALOGV("setRecordingMode: %s", recordHint.string());
+    ALOGV("setRecordingMode: %s", recordHint.c_str());
 
     if (recordHint == "true") {
         mFps = mMaxFrameRate / 1000;
-        ALOGD("DEBUG(%s): fps(%d) %s ", __FUNCTION__, mFps, recordHint.string());
+        ALOGD("DEBUG(%s): fps(%d) %s ", __FUNCTION__, mFps, recordHint.c_str());
 
         mMovieMode = true;
     } else {
diff --git a/libcamera_external/SecCameraInterface.cpp b/libcamera_external/SecCameraInterface.cpp
index 37eaef4..592305d 100644
--- a/libcamera_external/SecCameraInterface.cpp
+++ b/libcamera_external/SecCameraInterface.cpp
@@ -312,7 +312,7 @@
     String8 str;
     CameraParameters parms = obj(dev)->getParameters();
     str = parms.flatten();
-    return strdup(str.string());
+    return strdup(str.c_str());
 }
 
 static void HAL_camera_device_put_parameters(struct camera_device *dev, char *parms)