diff --git a/camera/camera2/OutputConfiguration.cpp b/camera/camera2/OutputConfiguration.cpp
index 4300f9a..5b8da34 100644
--- a/camera/camera2/OutputConfiguration.cpp
+++ b/camera/camera2/OutputConfiguration.cpp
@@ -77,7 +77,7 @@
     return mSensorPixelModesUsed;
 }
 
-int OutputConfiguration::getDynamicRangeProfile() const {
+int64_t OutputConfiguration::getDynamicRangeProfile() const {
     return mDynamicRangeProfile;
 }
 
@@ -186,8 +186,8 @@
         ALOGE("%s: Failed to read sensor pixel mode(s) from parcel", __FUNCTION__);
         return err;
     }
-    int dynamicProfile;
-    if ((err = parcel->readInt32(&dynamicProfile)) != OK) {
+    int64_t dynamicProfile;
+    if ((err = parcel->readInt64(&dynamicProfile)) != OK) {
         ALOGE("%s: Failed to read surface dynamic range profile flag from parcel", __FUNCTION__);
         return err;
     }
@@ -314,7 +314,7 @@
     err = parcel->writeParcelableVector(mSensorPixelModesUsed);
     if (err != OK) return err;
 
-    err = parcel->writeInt32(mDynamicRangeProfile ? 1 : 0);
+    err = parcel->writeInt64(mDynamicRangeProfile);
     if (err != OK) return err;
 
     err = parcel->writeInt32(mStreamUseCase);
