summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYin-Chia Yeh <yinchiayeh@google.com>2019-02-13 15:13:10 -0800
committerYin-Chia Yeh <yinchiayeh@google.com>2019-02-13 15:13:10 -0800
commitbf1010312e0e81d10ab3c11227c7847972880b15 (patch)
tree954a1ba12b8bbcb44681229ea58b85725b43bd9d
parentace57bad57b8a1013ef99377ad2aeb992fc752a2 (diff)
downloadlibhardware-bf1010312e0e81d10ab3c11227c7847972880b15.tar.gz
Camera: remove stream_configuration_counter
The race condition is now handled by default HAL wrapper so we don't need to send this information to HAL implementation. Test: Pixel 3 + Camera CTS + GCA Bug: 120986771 Change-Id: I48e611ba45d45ebf34359e828bcb23cb6eec4af2
-rw-r--r--include/hardware/camera3.h22
1 files changed, 1 insertions, 21 deletions
diff --git a/include/hardware/camera3.h b/include/hardware/camera3.h
index 90d70df2..dd57f303 100644
--- a/include/hardware/camera3.h
+++ b/include/hardware/camera3.h
@@ -192,9 +192,7 @@
* request and return output buffers from camera service.
*
* - Add signal_stream_flush() to camera3_device_ops_t for camera service to notify HAL an
- * upcoming configure_streams() call requires HAL to return buffers of certain streams. Also add
- * stream_configuration_counter to camera3_stream_configuration_t to address the potential
- * race condition between signal_stream_flush() call and configure_streams() call.
+ * upcoming configure_streams() call requires HAL to return buffers of certain streams.
*
* - Add CAMERA3_JPEG_APP_SEGMENTS_BLOB_ID to support BLOB with only JPEG apps
* segments and thumbnail (without main image bitstream). Camera framework
@@ -1812,16 +1810,6 @@ typedef struct camera3_stream_configuration {
* accordingly.
*/
const camera_metadata_t *session_parameters;
-
- /**
- * >= CAMERA_DEVICE_API_VERSION_3_6:
- *
- * An incrementing counter used for HAL to keep track of the stream
- * configuration and the paired oneway signal_stream_flush call. When the
- * counter in signal_stream_flush call is less than the counter here, that
- * signal_stream_flush call is stale.
- */
- int32_t stream_configuration_counter;
} camera3_stream_configuration_t;
/**
@@ -3478,16 +3466,8 @@ typedef struct camera3_device_ops {
* Note that this call serves as an optional hint and camera service may
* skip calling this if all buffers are already returned.
*
- * stream_configuration_counter: Note that this method may be called from
- * a different thread than configure_streams() and due to concurrency
- * issues, it is possible the signalStreamFlush call arrives later than
- * the corresponding configure_streams() call, so the HAL must check
- * stream_configuration_counter for such race condition. If the counter is
- * less than the counter in the last configure_streams() call HAL last
- * received, the call is stale and HAL should ignore this call.
*/
void (*signal_stream_flush)(const struct camera3_device*,
- uint32_t stream_configuration_counter,
uint32_t num_streams,
const camera3_stream_t* const* streams);