diff --git a/src/ipa/ipu3/ipa_context.h b/src/ipa/ipu3/ipa_context.h
index bdba3d07d13a..9766330f2f39 100644
--- a/src/ipa/ipu3/ipa_context.h
+++ b/src/ipa/ipu3/ipa_context.h
@@ -10,6 +10,7 @@
 
 #include <linux/intel-ipu3.h>
 
+#include <libcamera/base/class.h>
 #include <libcamera/base/utils.h>
 
 #include <libcamera/geometry.h>
@@ -87,6 +88,9 @@ struct IPAContext {
 	IPAActiveState activeState;
 
 	FCQueue<IPAFrameContext, kMaxFrameContexts> frameContexts;
+
+private:
+	LIBCAMERA_DISABLE_COPY(IPAContext)
 };
 
 } /* namespace ipa::ipu3 */
diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h
index 4481bd2acde6..9a84b7adda45 100644
--- a/src/ipa/rkisp1/ipa_context.h
+++ b/src/ipa/rkisp1/ipa_context.h
@@ -10,6 +10,7 @@
 
 #include <linux/rkisp1-config.h>
 
+#include <libcamera/base/class.h>
 #include <libcamera/base/utils.h>
 
 #include <libcamera/geometry.h>
@@ -101,6 +102,9 @@ struct IPAContext {
 	IPAActiveState activeState;
 
 	FCQueue<IPAFrameContext, kMaxFrameContexts> frameContexts;
+
+private:
+	LIBCAMERA_DISABLE_COPY(IPAContext)
 };
 
 } /* namespace ipa::rkisp1 */
