[libcamera-devel,v2,1/2] libcamera: ipu3: Make it easier to read when a request may be completed

Message ID 20200630130518.99866-1-niklas.soderlund@ragnatech.se
State Accepted
Commit c3648da6e9569ce43bd4bfdf4195681e47a7919c
Headers show
Series
  • [libcamera-devel,v2,1/2] libcamera: ipu3: Make it easier to read when a request may be completed
Related show

Commit Message

Niklas Söderlund June 30, 2020, 1:05 p.m. UTC
It's confusing to read the code and understand that a request is only
completed before being processed by the ImgU if it only contains a
single RAW buffer. Add a boolean variable with a explanatory name to
make this clearer, no functional change.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
* Changes since v1
- Rename flag from requestComplete to isComplete
---
 src/libcamera/pipeline/ipu3/ipu3.cpp | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

Patch

diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 1bdad209de6e47fb..958d8362b55783de 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -874,10 +874,12 @@  void IPU3CameraData::cio2BufferReady(FrameBuffer *buffer)
 	 * If the request contains a buffer for the RAW stream only, complete it
 	 * now as there's no need for ImgU processing.
 	 */
-	if (request->findBuffer(&rawStream_) &&
-	    pipe_->completeBuffer(camera_, request, buffer)) {
-		pipe_->completeRequest(camera_, request);
-		return;
+	if (request->findBuffer(&rawStream_)) {
+		bool isComplete = pipe_->completeBuffer(camera_, request, buffer);
+		if (isComplete) {
+			pipe_->completeRequest(camera_, request);
+			return;
+		}
 	}
 
 	imgu_->input_->queueBuffer(buffer);