diff options
author | Shuzhen Wang <shuzhenw@codeaurora.org> | 2015-01-27 22:36:25 -0800 |
---|---|---|
committer | Zhijun He <zhijunhe@google.com> | 2015-01-28 13:01:08 -0800 |
commit | c707b1d73e29aa8df2a6d2f666eca57e816b0f6e (patch) | |
tree | 0fe60fa9f12e68df739b3b0c850005c678aa8a9f /camera/mm-camera-interface/mm_camera_interface2.c | |
parent | 5c6d74bb8fc04cdf47ebbc07c0b645d0c1c37646 (diff) | |
download | mako-c707b1d73e29aa8df2a6d2f666eca57e816b0f6e.tar.gz |
Camera: Add support to not queue all buffers up frontandroid-cts-5.1_r9android-cts-5.1_r8android-cts-5.1_r7android-cts-5.1_r6android-cts-5.1_r5android-cts-5.1_r4android-cts-5.1_r3android-cts-5.1_r28android-cts-5.1_r27android-cts-5.1_r26android-cts-5.1_r25android-cts-5.1_r24android-cts-5.1_r23android-cts-5.1_r22android-cts-5.1_r21android-cts-5.1_r20android-cts-5.1_r2android-cts-5.1_r19android-cts-5.1_r18android-cts-5.1_r17android-cts-5.1_r16android-cts-5.1_r15android-cts-5.1_r14android-cts-5.1_r13android-cts-5.1_r10android-cts-5.1_r1android-5.1.1_r9android-5.1.1_r8android-5.1.1_r7android-5.1.1_r6android-5.1.1_r5android-5.1.1_r4android-5.1.1_r38android-5.1.1_r37android-5.1.1_r36android-5.1.1_r35android-5.1.1_r34android-5.1.1_r33android-5.1.1_r30android-5.1.1_r3android-5.1.1_r29android-5.1.1_r28android-5.1.1_r26android-5.1.1_r25android-5.1.1_r24android-5.1.1_r23android-5.1.1_r22android-5.1.1_r20android-5.1.1_r2android-5.1.1_r19android-5.1.1_r18android-5.1.1_r17android-5.1.1_r16android-5.1.1_r15android-5.1.1_r14android-5.1.1_r13android-5.1.1_r12android-5.1.1_r10android-5.1.1_r1android-5.1.0_r5android-5.1.0_r4android-5.1.0_r3android-5.1.0_r1lollipop-mr1-wfc-releaselollipop-mr1-releaselollipop-mr1-fi-releaselollipop-mr1-devlollipop-mr1-cts-release
Camera HAL needs to call cancel_buffer on min_undequeued_buffers
preview buffers up front. That means not all preview buffers should
be queued into camera driver. This change adds the support.
Bug: 18630337
Change-Id: I794b0dcafa03ebfaddf4c68b66b09c74bbb206d0
Diffstat (limited to 'camera/mm-camera-interface/mm_camera_interface2.c')
-rwxr-xr-x | camera/mm-camera-interface/mm_camera_interface2.c | 32 |
1 files changed, 1 insertions, 31 deletions
diff --git a/camera/mm-camera-interface/mm_camera_interface2.c b/camera/mm-camera-interface/mm_camera_interface2.c index f6ccca9..0d46afb 100755 --- a/camera/mm-camera-interface/mm_camera_interface2.c +++ b/camera/mm-camera-interface/mm_camera_interface2.c @@ -1,5 +1,5 @@ /* -Copyright (c) 2011-2012, The Linux Foundation. All rights reserved. +Copyright (c) 2011-2012,2015, The Linux Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are @@ -181,24 +181,6 @@ static int32_t mm_camera_cfg_request_buf(mm_camera_t * camera, return rc; } -static int32_t mm_camera_cfg_enqueue_buf(mm_camera_t * camera, - mm_camera_reg_buf_t *buf) -{ - int32_t rc = -MM_CAMERA_E_GENERAL; - uint32_t tmp; - mm_camera_obj_t * my_obj = NULL; - - pthread_mutex_lock(&g_mutex); - my_obj = g_cam_ctrl.cam_obj[camera->camera_info.camera_id]; - pthread_mutex_unlock(&g_mutex); - if(my_obj) { - pthread_mutex_lock(&my_obj->mutex); - rc = mm_camera_enqueue_buf(my_obj, buf); - pthread_mutex_unlock(&my_obj->mutex); - } - return rc; -} - static int32_t mm_camera_cfg_prepare_buf(mm_camera_t * camera, mm_camera_reg_buf_t *buf) { @@ -240,7 +222,6 @@ static mm_camera_config_t mm_camera_cfg = { .set_parm = mm_camera_cfg_set_parm, .get_parm = mm_camera_cfg_get_parm, .request_buf = mm_camera_cfg_request_buf, - .enqueue_buf = mm_camera_cfg_enqueue_buf, .prepare_buf = mm_camera_cfg_prepare_buf, .unprepare_buf = mm_camera_cfg_unprepare_buf }; @@ -799,17 +780,6 @@ int32_t cam_config_request_buf(int cam_id, mm_camera_reg_buf_t *buf) return rc; } -int32_t cam_config_enqueue_buf(int cam_id, mm_camera_reg_buf_t *buf) -{ - - int32_t rc = -1; - mm_camera_t * mm_cam = get_camera_by_id(cam_id); - if (mm_cam) { - rc = mm_cam->cfg->enqueue_buf(mm_cam, buf); - } - return rc; -} - int32_t cam_config_prepare_buf(int cam_id, mm_camera_reg_buf_t *buf) { |