diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h
index ebc4204f98fd..5534a2edb567 100644
--- a/include/libcamera/controls.h
+++ b/include/libcamera/controls.h
@@ -68,12 +68,11 @@ protected:
 		: id_(id), name_(name), type_(type)
 	{
 	}
-#ifndef __DOXYGEN__
-	ControlId &operator=(const ControlId &) = default;
-	ControlId(const ControlId &) = default;
-#endif
 
 private:
+	ControlId &operator=(const ControlId &) = delete;
+	ControlId(const ControlId &) = delete;
+
 	unsigned int id_;
 	std::string name_;
 	ControlType type_;
