Correct V4L2 cid for some settings 74/290974/1
authorJeongmo Yang <jm80.yang@samsung.com>
Thu, 6 Apr 2023 02:01:05 +0000 (11:01 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Thu, 6 Apr 2023 02:01:05 +0000 (11:01 +0900)
[Version] 0.0.5
[Issue Type] Update

Change-Id: If7bb21646300d1d16a1b78356bcd6661e0c55ca1
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
packaging/hal-backend-camera-v4l2.spec
src/hal_backend_camera_v4l2.c
src/hal_backend_camera_v4l2_private.h

index 20384e8ba75e2e47c7525af238be80fead5a33e8..35ca39dbe16a0be7cbdf5c610e9d8a4284d08dd9 100644 (file)
@@ -8,7 +8,7 @@
 
 Name:       hal-backend-camera-v4l2
 Summary:    Tizen Camera Hal using generic V4L2 interface
-Version:    0.0.4
+Version:    0.0.5
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index d7c377e50b3af268e8fdd8ccd7c173145db8d5c2..cb2917d3fcbd6d49a2024234301cc490666161f9 100644 (file)
@@ -515,7 +515,6 @@ static void __camera_get_fps_list(int device_fd, guint32 pixel_format, int width
                fps_list->fps[fps_count++] = ival.discrete.denominator;
        }
 
-
        fps_list->count = fps_count;
 }
 
@@ -2506,11 +2505,17 @@ static int __set_command(hal_camera_handle *handle, int64_t command, void *value
                handle->focus_mode = set_value;
                return CAMERA_ERROR_NONE;
        case CAMERA_COMMAND_FOCUS_RANGE:
-               handle->focus_range = set_value;
-               return CAMERA_ERROR_NONE;
+               cid = V4L2_CID_AUTO_FOCUS_RANGE;
+               break;
        case CAMERA_COMMAND_FOCUS_LEVEL:
-               handle->focus_level = set_value;
-               return CAMERA_ERROR_NONE;
+               cid = V4L2_CID_FOCUS_ABSOLUTE;
+               break;
+       case CAMERA_COMMAND_WHITE_BALANCE_TEMPERATURE:
+               cid = V4L2_CID_WHITE_BALANCE_TEMPERATURE;
+               break;
+       case CAMERA_COMMAND_GAIN:
+               cid = V4L2_CID_GAIN;
+               break;
        default:
                LOGE("NOT_SUPPORTED command %"PRIx64, command);
                return CAMERA_ERROR_DEVICE_NOT_SUPPORTED;
@@ -2593,11 +2598,17 @@ int camera_v4l2_get_command(void *camera_handle, int64_t command, void **value)
                **(int **)value = handle->focus_mode;
                goto _GET_COMMAND_DONE;
        case CAMERA_COMMAND_FOCUS_RANGE:
-               **(int **)value = handle->focus_range;
-               goto _GET_COMMAND_DONE;
+               cid = V4L2_CID_AUTO_FOCUS_RANGE;
+               break;
        case CAMERA_COMMAND_FOCUS_LEVEL:
-               **(int **)value = handle->focus_level;
-               goto _GET_COMMAND_DONE;
+               cid = V4L2_CID_FOCUS_ABSOLUTE;
+               break;
+       case CAMERA_COMMAND_WHITE_BALANCE_TEMPERATURE:
+               cid = V4L2_CID_WHITE_BALANCE_TEMPERATURE;
+               break;
+       case CAMERA_COMMAND_GAIN:
+               cid = V4L2_CID_GAIN;
+               break;
        default:
                LOGE("Not supported command[%"PRIx64"]", command);
                g_mutex_unlock(&handle->lock);
index c6f48408557a7ae757e30ab343687afe4090fdef..97493303dc32b945d0965c0d9019917b2d174569 100644 (file)
@@ -104,10 +104,8 @@ typedef struct _camera_hal_handle {
        GMutex msg_cb_lock;
        GCond msg_cb_cond;
 
-       /* focus */
+       /* settings */
        gint32 focus_mode;
-       gint32 focus_range;
-       gint32 focus_level;
 
        /* etc */
        GMutex lock;