diff --git a/include/libcamera/base/event_notifier.h b/include/libcamera/base/event_notifier.h
index f7722a32ef55..4d373a5290cc 100644
--- a/include/libcamera/base/event_notifier.h
+++ b/include/libcamera/base/event_notifier.h
@@ -25,7 +25,7 @@ public:
 		Exception,
 	};
 
-	EventNotifier(int fd, Type type, Object *parent = nullptr);
+	EventNotifier(int fd, Type type, Object *parent = nullptr, bool enable = true);
 	virtual ~EventNotifier();
 
 	Type type() const { return type_; }
diff --git a/src/libcamera/base/event_notifier.cpp b/src/libcamera/base/event_notifier.cpp
index fd93c0878c6f..40428cf24a50 100644
--- a/src/libcamera/base/event_notifier.cpp
+++ b/src/libcamera/base/event_notifier.cpp
@@ -26,8 +26,11 @@ namespace libcamera {
  *
  * The EventNotifier models a file descriptor event source that can be
  * monitored. It is created with the file descriptor to be monitored and the
- * type of event, and is enabled by default. It will emit the \ref activated
- * signal whenever an event of the monitored type occurs on the file descriptor.
+ * type of event. It will emit the \ref activated signal whenever an event of
+ * the monitored type occurs on the file descriptor.
+ *
+ * An EventNotifier is enabled by default when created, unless otherwise
+ * specified through the optional 'enable' constructor parameter.
  *
  * Supported type of events are EventNotifier::Read, EventNotifier::Write and
  * EventNotifier::Exception. The type is specified when constructing the
@@ -62,11 +65,12 @@ namespace libcamera {
  * \param[in] fd The file descriptor to monitor
  * \param[in] type The event type to monitor
  * \param[in] parent The parent Object
+ * \param[in] enable Notifier enable flag
  */
-EventNotifier::EventNotifier(int fd, Type type, Object *parent)
+EventNotifier::EventNotifier(int fd, Type type, Object *parent, bool enable)
 	: Object(parent), fd_(fd), type_(type), enabled_(false)
 {
-	setEnabled(true);
+	setEnabled(enable);
 }
 
 EventNotifier::~EventNotifier()
