diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp
index 345b4a170d47..3a6a1a6bca77 100644
--- a/src/libcamera/camera_sensor.cpp
+++ b/src/libcamera/camera_sensor.cpp
@@ -172,7 +172,7 @@ int CameraSensor::init()
 	if (ret)
 		return ret;
 
-	return applyTestPatternMode(controls::draft::TestPatternModeEnum::TestPatternModeOff);
+	return 0;
 }
 
 int CameraSensor::validateSensorDriver()
@@ -372,6 +372,9 @@ void CameraSensor::initTestPatternModes()
 
 		testPatternModes_.push_back(it->second);
 	}
+
+	/* Initialise the sensor with test patterns disabled. */
+	applyTestPatternMode(controls::draft::TestPatternModeEnum::TestPatternModeOff);
 }
 
 int CameraSensor::initProperties()
