diff --git a/include/libcamera/internal/software_isp/software_isp.h b/include/libcamera/internal/software_isp/software_isp.h
index 585e0d6d9..86cb8f8de 100644
--- a/include/libcamera/internal/software_isp/software_isp.h
+++ b/include/libcamera/internal/software_isp/software_isp.h
@@ -9,7 +9,6 @@
 
 #include <deque>
 #include <functional>
-#include <initializer_list>
 #include <map>
 #include <memory>
 #include <stdint.h>
diff --git a/include/libcamera/internal/software_isp/swstats_cpu.h b/include/libcamera/internal/software_isp/swstats_cpu.h
index 802370bdb..1f8873818 100644
--- a/include/libcamera/internal/software_isp/swstats_cpu.h
+++ b/include/libcamera/internal/software_isp/swstats_cpu.h
@@ -16,10 +16,10 @@
 
 #include <libcamera/base/signal.h>
 
+#include <libcamera/framebuffer.h>
 #include <libcamera/geometry.h>
 
 #include "libcamera/internal/bayer_format.h"
-#include "libcamera/internal/framebuffer.h"
 #include "libcamera/internal/shared_mem_object.h"
 #include "libcamera/internal/software_isp/swisp_stats.h"
 
diff --git a/src/libcamera/software_isp/debayer_cpu.cpp b/src/libcamera/software_isp/debayer_cpu.cpp
index d9f5b3268..1f9b24da0 100644
--- a/src/libcamera/software_isp/debayer_cpu.cpp
+++ b/src/libcamera/software_isp/debayer_cpu.cpp
@@ -23,6 +23,7 @@
 #include <libcamera/formats.h>
 
 #include "libcamera/internal/bayer_format.h"
+#include "libcamera/internal/camera_manager.h"
 #include "libcamera/internal/framebuffer.h"
 #include "libcamera/internal/global_configuration.h"
 #include "libcamera/internal/mapped_framebuffer.h"
diff --git a/src/libcamera/software_isp/debayer_cpu.h b/src/libcamera/software_isp/debayer_cpu.h
index 8c58775d5..68da95083 100644
--- a/src/libcamera/software_isp/debayer_cpu.h
+++ b/src/libcamera/software_isp/debayer_cpu.h
@@ -18,8 +18,9 @@
 #include <libcamera/base/mutex.h>
 #include <libcamera/base/object.h>
 
+#include <libcamera/camera_manager.h>
+
 #include "libcamera/internal/bayer_format.h"
-#include "libcamera/internal/camera_manager.h"
 #include "libcamera/internal/software_isp/debayer_params.h"
 #include "libcamera/internal/software_isp/swstats_cpu.h"
 
diff --git a/src/libcamera/software_isp/debayer_egl.cpp b/src/libcamera/software_isp/debayer_egl.cpp
index 8f0c229fd..eae4c57f4 100644
--- a/src/libcamera/software_isp/debayer_egl.cpp
+++ b/src/libcamera/software_isp/debayer_egl.cpp
@@ -9,14 +9,19 @@
 
 #include "debayer_egl.h"
 
-#include <cmath>
+#include <algorithm>
+#include <memory>
 #include <stdlib.h>
-#include <time.h>
+#include <string>
+#include <tuple>
+#include <vector>
 
 #include <libcamera/base/utils.h>
 
 #include <libcamera/formats.h>
 
+#include "libcamera/internal/framebuffer.h"
+
 #include "../glsl_shaders.h"
 
 namespace libcamera {
diff --git a/src/libcamera/software_isp/debayer_egl.h b/src/libcamera/software_isp/debayer_egl.h
index fcd281f4c..141fb288f 100644
--- a/src/libcamera/software_isp/debayer_egl.h
+++ b/src/libcamera/software_isp/debayer_egl.h
@@ -11,15 +11,14 @@
 
 #include <memory>
 #include <stdint.h>
+#include <tuple>
 #include <vector>
 
 #define GL_GLEXT_PROTOTYPES
 #define EGL_EGLEXT_PROTOTYPES
 #include <libcamera/base/object.h>
 
-#include "libcamera/internal/bayer_format.h"
 #include "libcamera/internal/egl.h"
-#include "libcamera/internal/framebuffer.h"
 #include "libcamera/internal/mapped_framebuffer.h"
 #include "libcamera/internal/software_isp/benchmark.h"
 #include "libcamera/internal/software_isp/swstats_cpu.h"
diff --git a/src/libcamera/software_isp/software_isp.cpp b/src/libcamera/software_isp/software_isp.cpp
index d227bd8e3..781cf02f8 100644
--- a/src/libcamera/software_isp/software_isp.cpp
+++ b/src/libcamera/software_isp/software_isp.cpp
@@ -7,8 +7,10 @@
 
 #include "libcamera/internal/software_isp/software_isp.h"
 
-#include <cmath>
+#include <memory>
+#include <optional>
 #include <stdint.h>
+#include <string>
 #include <sys/mman.h>
 #include <sys/types.h>
 #include <unistd.h>
