xref: /OK3568_Linux_fs/buildroot/package/libcamera/Config.in (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
2*4882a593Smuzhiyun	bool
3*4882a593Smuzhiyun	default y
4*4882a593Smuzhiyun	# Invalid packing size of ControlValue struct on m68k
5*4882a593Smuzhiyun	depends on !BR2_m68k
6*4882a593Smuzhiyun	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597
7*4882a593Smuzhiyun
8*4882a593Smuzhiyunmenuconfig BR2_PACKAGE_LIBCAMERA
9*4882a593Smuzhiyun	bool "libcamera"
10*4882a593Smuzhiyun	depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
11*4882a593Smuzhiyun	depends on BR2_INSTALL_LIBSTDCPP
12*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_HAS_THREADS
13*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
14*4882a593Smuzhiyun	depends on !BR2_STATIC_LIBS # gnutls
15*4882a593Smuzhiyun	depends on BR2_USE_WCHAR # gnutls
16*4882a593Smuzhiyun	select BR2_PACKAGE_GNUTLS
17*4882a593Smuzhiyun	select BR2_PACKAGE_LIBYAML
18*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO if !BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
19*4882a593Smuzhiyun	help
20*4882a593Smuzhiyun	  libcamera provides a software stack to support
21*4882a593Smuzhiyun	  complex devices that need heavy hardware image
22*4882a593Smuzhiyun	  processing operations.
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun	  http://www.libcamera.org/
25*4882a593Smuzhiyun
26*4882a593Smuzhiyunif BR2_PACKAGE_LIBCAMERA
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_V4L2
29*4882a593Smuzhiyun	bool "libcamera v4l2 compatibility layer"
30*4882a593Smuzhiyun	default y
31*4882a593Smuzhiyun	help
32*4882a593Smuzhiyun	  libcamera v4l2 compatibility layer
33*4882a593Smuzhiyun
34*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_GST
35*4882a593Smuzhiyun	bool "libcamera gstreamer compatibility layer"
36*4882a593Smuzhiyun	depends on BR2_PACKAGE_GST1_PLUGINS_BASE
37*4882a593Smuzhiyun	select BR2_PACKAGE_LIBGLIB2
38*4882a593Smuzhiyun	default y
39*4882a593Smuzhiyun	help
40*4882a593Smuzhiyun	  libcamera gstreamer compatibility layer
41*4882a593Smuzhiyun
42*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
43*4882a593Smuzhiyun	bool
44*4882a593Smuzhiyun
45*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_IPU3
46*4882a593Smuzhiyun	bool "ipu3 pipeline"
47*4882a593Smuzhiyun	depends on BR2_i386 || BR2_x86_64
48*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
49*4882a593Smuzhiyun	help
50*4882a593Smuzhiyun	  Pipeline for Intel IPU3.
51*4882a593Smuzhiyun
52*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI
53*4882a593Smuzhiyun	bool "raspberrypi pipeline"
54*4882a593Smuzhiyun	depends on BR2_arm || BR2_aarch64
55*4882a593Smuzhiyun	depends on BR2_USE_WCHAR # boost (already enforced for gnutls)
56*4882a593Smuzhiyun	select BR2_PACKAGE_BOOST
57*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
58*4882a593Smuzhiyun	help
59*4882a593Smuzhiyun	  Pipeline for Raspberry Pi devices.
60*4882a593Smuzhiyun
61*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_RKISP1
62*4882a593Smuzhiyun	bool "rkisp1 pipeline"
63*4882a593Smuzhiyun	depends on BR2_arm || BR2_aarch64
64*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
65*4882a593Smuzhiyun	help
66*4882a593Smuzhiyun	  Pipeline for Rockchip ISP1.
67*4882a593Smuzhiyun
68*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE
69*4882a593Smuzhiyun	bool "simple pipeline"
70*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
71*4882a593Smuzhiyun	help
72*4882a593Smuzhiyun	  Pipeline for simple pipelines.
73*4882a593Smuzhiyun
74*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO
75*4882a593Smuzhiyun	bool "uvcvideo pipeline"
76*4882a593Smuzhiyun	help
77*4882a593Smuzhiyun	  Pipeline for uvcvideo devices.
78*4882a593Smuzhiyun
79*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC
80*4882a593Smuzhiyun	bool "vimc pipeline"
81*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
82*4882a593Smuzhiyun	help
83*4882a593Smuzhiyun	  Pipeline for the vimc device.
84*4882a593Smuzhiyun
85*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_PIPELINE_CUSTOM
86*4882a593Smuzhiyun	bool "custom pipeline"
87*4882a593Smuzhiyun	select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
88*4882a593Smuzhiyun	default y
89*4882a593Smuzhiyun	help
90*4882a593Smuzhiyun	  Pipeline for custom device.
91*4882a593Smuzhiyun
92*4882a593Smuzhiyunif BR2_PACKAGE_LIBCAMERA_PIPELINE_CUSTOM
93*4882a593Smuzhiyun
94*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_CUSTOM_DRIVERS
95*4882a593Smuzhiyun	string "custom pipeline drivers"
96*4882a593Smuzhiyun	default "has:rkisp"
97*4882a593Smuzhiyun
98*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_CUSTOM_DEFAULT_ENTITY
99*4882a593Smuzhiyun	string "custom pipeline default media entity"
100*4882a593Smuzhiyun	default "has:mainpath"
101*4882a593Smuzhiyun
102*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_CUSTOM_FORMAT
103*4882a593Smuzhiyun	string "custom pipeline pixel format"
104*4882a593Smuzhiyun	default "NV12"
105*4882a593Smuzhiyun	help
106*4882a593Smuzhiyun	  NV12|YUV420|NV16|YUYV|ANY
107*4882a593Smuzhiyun
108*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_CUSTOM_BUFFER_COUNT
109*4882a593Smuzhiyun	int "custom pipeline buffer count"
110*4882a593Smuzhiyun	default 4
111*4882a593Smuzhiyun
112*4882a593Smuzhiyunendif
113*4882a593Smuzhiyun
114*4882a593Smuzhiyunconfig BR2_PACKAGE_LIBCAMERA_COMPLIANCE
115*4882a593Smuzhiyun	bool "lc-compliance test application"
116*4882a593Smuzhiyun	depends on BR2_USE_WCHAR # gtest
117*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_HAS_THREADS # gtest
118*4882a593Smuzhiyun	depends on BR2_INSTALL_LIBSTDCPP # gtest
119*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # gtest
120*4882a593Smuzhiyun	depends on BR2_USE_MMU # gtest
121*4882a593Smuzhiyun	select BR2_PACKAGE_GTEST
122*4882a593Smuzhiyun	select BR2_PACKAGE_LIBEVENT
123*4882a593Smuzhiyun	help
124*4882a593Smuzhiyun	  lc-compliance test application
125*4882a593Smuzhiyun
126*4882a593Smuzhiyuncomment "lc-compliance test application needs a toolchain w/ C++, wchar, threads, gcc >= 5"
127*4882a593Smuzhiyun	depends on BR2_USE_MMU
128*4882a593Smuzhiyun	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
129*4882a593Smuzhiyun		!BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_5
130*4882a593Smuzhiyun
131*4882a593Smuzhiyunendif # BR2_PACKAGE_LIBCAMERA
132*4882a593Smuzhiyun
133*4882a593Smuzhiyuncomment "libcamera needs a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 8"
134*4882a593Smuzhiyun	depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
135*4882a593Smuzhiyun	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
136*4882a593Smuzhiyun		!BR2_TOOLCHAIN_GCC_AT_LEAST_8 || BR2_STATIC_LIBS || !BR2_USE_WCHAR
137