diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
index f7e16a6c..e1a74d89 100644
--- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
+++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
@@ -848,12 +848,11 @@ int PipelineHandlerRPi::configureIPA(Camera *camera)
 	/* Inform IPA of stream configuration and sensor controls. */
 	unsigned int i = 0;
 	for (auto const &stream : data->isp_) {
-		if (stream.isExternal()) {
-			streamConfig[i] = {
+		if (stream.isExternal())
+			streamConfig[i++] = {
 				.pixelFormat = stream.configuration().pixelFormat,
 				.size = stream.configuration().size
 			};
-		}
 	}
 	entityControls.emplace(0, data->unicam_[Unicam::Image].dev()->controls());
 	entityControls.emplace(1, data->isp_[Isp::Input].dev()->controls());
