diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index 2f909cef7c75ba0f..4ec74c5aa8286ffb 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -351,13 +351,23 @@ protected:
 		if (!info)
 			LOG(RkISP1, Fatal) << "Frame not known";
 
-		if (info->paramFilled)
-			pipe_->param_->queueBuffer(info->paramBuffer);
-		else
+		/*
+		 * \todo: If parameters are not filled a better method to handle
+		 * the situation then queing a buffer with unkown content should
+		 * be used.
+		 *
+		 * It seems obsessive to keep an internal zeroed scratch
+		 * parameters buffer around as this should not happen uless the
+		 * devices is under too much load. Perhaps failing the request
+		 * and returning it to the applicaiton with an error code is better
+		 * then to queue it to hardware?
+		 */
+		if (!info->paramFilled)
 			LOG(RkISP1, Error)
 				<< "Parameters not ready on time for frame "
-				<< frame() << ", ignore parameters.";
+				<< frame();
 
+		pipe_->param_->queueBuffer(info->paramBuffer);
 		pipe_->stat_->queueBuffer(info->statBuffer);
 		pipe_->video_->queueBuffer(info->videoBuffer);
 	}
