diff --git a/package/libcamera/Config.in b/package/libcamera/Config.in
index 56ca5aaf18..960d78b82e 100644
--- a/package/libcamera/Config.in
+++ b/package/libcamera/Config.in
@@ -16,6 +16,11 @@ menuconfig BR2_PACKAGE_LIBCAMERA
 
 if BR2_PACKAGE_LIBCAMERA
 
+config BR2_PACKAGE_LIBCAMERA_V4L2
+	bool "libcamera v4l2 compatibility layer"
+	help
+	  libcamera v4l2 compatibility layer
+
 config BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
 	bool
 
diff --git a/package/libcamera/libcamera.mk b/package/libcamera/libcamera.mk
index c7513d2e68..1633becf04 100644
--- a/package/libcamera/libcamera.mk
+++ b/package/libcamera/libcamera.mk
@@ -15,8 +15,7 @@ LIBCAMERA_DEPENDENCIES = \
 LIBCAMERA_CONF_OPTS = \
 	-Dandroid=false \
 	-Ddocumentation=false \
-	-Dtest=false \
-	-Dv4l2=false
+	-Dtest=false
 LIBCAMERA_INSTALL_STAGING = yes
 LIBCAMERA_LICENSE = \
 	LGPL-2.1+ (library), \
@@ -37,6 +36,12 @@ LIBCAMERA_LICENSE_FILES = \
 	LICENSES/CC0-1.0.txt \
 	LICENSES/CC-BY-SA-4.0.txt
 
+ifeq ($(BR2_PACKAGE_LIBCAMERA_V4L2),y)
+LIBCAMERA_CONF_OPTS = -Dv4l2=true
+else
+LIBCAMERA_CONF_OPTS = -Dv4l2=false
+endif
+
 LIBCAMERA_PIPELINES-$(BR2_PACKAGE_LIBCAMERA_PIPELINE_IPU3) += ipu3
 ifeq ($(BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI),y)
 LIBCAMERA_PIPELINES-y += raspberrypi
