diff --git a/include/libcamera/internal/camera_lens.h b/include/libcamera/internal/camera_lens.h
index 66c32a46..f5212ea7 100644
--- a/include/libcamera/internal/camera_lens.h
+++ b/include/libcamera/internal/camera_lens.h
@@ -33,6 +33,7 @@ public:
 
 	const ControlInfoMap &controls() const;
 
+	ControlList getControls(const std::vector<uint32_t> &ids);
 protected:
 	std::string logPrefix() const override;
 
diff --git a/src/libcamera/camera_lens.cpp b/src/libcamera/camera_lens.cpp
index c8fadda5..ddcda232 100644
--- a/src/libcamera/camera_lens.cpp
+++ b/src/libcamera/camera_lens.cpp
@@ -160,4 +160,9 @@ const ControlInfoMap &CameraLens::controls() const
 	return subdev_->controls();
 }
 
+ControlList CameraLens::getControls(const std::vector<uint32_t> &ids)
+{
+	return subdev_->getControls(ids);
+}
+
 } /* namespace libcamera */
