Bluetooth: Add CRYPTO_CCM for meshctl of BlueZ
[platform/kernel/tizen-kernel-configs.git] / tizen / tizen_defconfig
1 #
2 # Tizen kernel config options
3 #
4
5
6 # 1. Booting
7
8 #
9 # 1-1. RAMDISK support
10 #
11
12 #   Tizen uses ramdisk on its booting, so it should be possible to recognize
13 #   block ram device, at least, with one, 8MiB and recommendation is 12MiB
14 #   to use recovery ramdisk
15 #   (Mandatory)
16 CONFIG_BLK_DEV=y
17 CONFIG_BLK_DEV_LOOP=y
18 CONFIG_BLK_DEV_INITRD=y
19 CONFIG_BLK_DEV_RAM=y
20 # CONFIG_BLK_DEV_RAM_COUNT=1 # at least, 1
21 CONFIG_BLK_DEV_RAM_COUNT=2
22 # CONFIG_BLK_DEV_RAM_SIZE=8096 # at least, 8096
23 CONFIG_BLK_DEV_RAM_SIZE=12288
24
25 #   (Optional)
26 CONFIG_RD_GZIP=y
27
28 #
29 # 1-2. Basic partitions and FileSystem support on storage
30 #
31
32 #   Tizen uses EFI GUID paritions on it storage and EXT4 as its default file
33 #   system. Basic language support for filesystem is iso8859-1 and it required
34 #   codepage 437, ascii, utf-8.
35 #   (Mandatory)
36 CONFIG_EFI_PARTITION=y
37 CONFIG_EXT4_FS=y
38 CONFIG_EXT4_FS_SECURITY=y
39 CONFIG_NLS=y
40 CONFIG_NLS_DEFAULT="iso8859-1"
41 CONFIG_NLS_CODEPAGE_437=y
42 CONFIG_NLS_ASCII=y
43 CONFIG_NLS_ISO8859_1=y
44 CONFIG_NLS_UTF8=y
45
46 #   Web engine requires squashfs to access library with compressed fs.
47 #   Also, IoT device with small size storage uses squashfs compressed fs.
48 #   (Mandatory)
49 CONFIG_SQUASHFS=y
50 CONFIG_SQUASHFS_FILE_CACHE=y
51 CONFIG_SQUASHFS_DECOMP_SINGLE=y
52 CONFIG_SQUASHFS_XATTR=y
53 CONFIG_SQUASHFS_ZLIB=y
54 CONFIG_SQUASHFS_LZO=y
55 CONFIG_SQUASHFS_4K_DEVBLK_SIZE=y
56 CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
57
58 #   MSDOS paritions made from other system on external storage should be
59 #   recognized in Tizen. Also, EXT2/3 compatiblity and VFAT are recommeded for
60 #   compatibility of external storage.
61 #   (Recommendation)
62 CONFIG_BLK_DEV_SD=y
63 CONFIG_PARTITION_ADVANCED=y
64 CONFIG_MSDOS_PARTITION=y
65 CONFIG_EXT4_USE_FOR_EXT23=y
66 CONFIG_FAT_FS=y
67 CONFIG_VFAT_FS=y
68 CONFIG_FAT_DEFAULT_CODEPAGE=437
69 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
70
71 #
72 # 1-2. Systemd support
73 # Ref. https://github.com/systemd/systemd/blob/master/README
74 #
75
76 #   Tizen uses systemd and required config for systemd.
77 #   (Mandatory)
78 CONFIG_DEVTMPFS=y
79 CONFIG_CGROUPS=y
80 CONFIG_INOTIFY_USER=y
81 CONFIG_SIGNALFD=y
82 CONFIG_TIMERFD=y
83 CONFIG_EPOLL=y
84 CONFIG_NET=y
85 CONFIG_SYSFS=y
86 # CONFIG_SYSFS_DEPRECATED is not set
87 CONFIG_PROC_FS=y
88 CONFIG_FHANDLE=y
89 CONFIG_CRYPTO=y
90 CONFIG_CRYPTO_HMAC=y
91 CONFIG_CRYPTO_SHA256=y
92 CONFIG_UEVENT_HELPER=y
93 CONFIG_UEVENT_HELPER_PATH=""
94 CONFIG_AUTOFS4_FS=y
95
96 #
97 # 1-3. IPC support
98 #
99
100 #   Tizen requies sysv ipc including msgq.
101 #   (Mandatory)
102 CONFIG_SYSVIPC=y
103 CONFIG_SYSVIPC_SYSCTL=y
104
105 #
106 # 1-4. TLM user login support
107 #
108
109 #   Tizen uses tlm for user session and it requires vt.
110 #   (Mandatory)
111 CONFIG_VT
112
113 #
114 # 1-5. Other Tizen Booting
115 #
116
117 #   Tizen requies devtmpfs auto-mount and tmpfs.
118 #   (Mandatory)
119 CONFIG_DEVTMPFS_MOUNT=y
120 CONFIG_TMPFS=y
121
122
123 # 2. Tizen Security
124
125 #
126 # 2-1. Access Control
127 # Ref. https://wiki.tizen.org/Security:SmackConfiguration
128 #
129
130 #   Tizen uses ACL and Security SMACK.
131 #   (Mandatory)
132 CONFIG_SECURITY=y
133 CONFIG_SECURITYFS=y
134 CONFIG_SECURITY_NETWORK=y
135 CONFIG_GENERIC_ACL=y
136 CONFIG_FS_POSIX_ACL=y
137 CONFIG_EXT4_FS_POSIX_ACL=y
138 CONFIG_TMPFS_POSIX_ACL=y
139 CONFIG_TMPFS_XATTR=y
140 CONFIG_NETLABEL=y
141 CONFIG_SECURITY_SMACK=y
142 CONFIG_DEFAULT_SECURITY_SMACK=y
143 CONFIG_DEFAULT_SECURITY="smack"
144 CONFIG_SECURITY_SMACK_APPEND_SIGNALS=y
145 CONFIG_EXPORTFS=y
146
147 #   To check non privileged access try, AUDIT is recomended.
148 #   (Recommendation)
149 CONFIG_AUDIT=y
150 CONFIG_AUDIT_GENERIC=y
151 CONFIG_AUDITSYSCALL=y
152
153 #
154 # 2-2. nether
155 # Ref. https://wiki.tizen.org/Security:Nether
156 #
157 #   (Mandatory)
158 CONFIG_NETFILTER=y
159 CONFIG_NETWORK_SECMARK=y
160 CONFIG_SECURITY_SMACK_NETFILTER=y
161 CONFIG_NETFILTER_XT_MARK=y
162 CONFIG_NETFILTER_XT_CONNMARK=y
163 CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
164 CONFIG_IP_NF_TARGET_REJECT=y
165 CONFIG_NETFILTER_XT_TARGET_AUDIT=y
166 CONFIG_NETFILTER_XT_MATCH_ONWER=y
167
168 #
169 # 2-3. Crypto
170 #
171 #   (Recommendation)
172 CONFIG_CRYPTO=y
173 CONFIG_CRYPTO_HMAC=y
174 CONFIG_CRYPTO_SHA256=y
175 CONFIG_KEYS=y
176 CONFIG_CRYPTO_ALGAPI=y
177 CONFIG_CRYPTO_ALGAPI2=y
178 CONFIG_CRYPTO_AEAD=y
179 CONFIG_CRYPTO_AEAD2=y
180 CONFIG_CRYPTO_BLKCIPHER=y
181 CONFIG_CRYPTO_BLKCIPHER2=y
182 CONFIG_CRYPTO_HASH=y
183 CONFIG_CRYPTO_HASH2=y
184 CONFIG_CRYPTO_RNG=y
185 CONFIG_CRYPTO_RNG2=y
186 CONFIG_CRYPTO_PCOMP2=y
187 CONFIG_CRYPTO_MANAGER=y
188 CONFIG_CRYPTO_MANAGER2=y
189 CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
190 CONFIG_CRYPTO_GF128MUL=y
191 CONFIG_CRYPTO_NULL=y
192 CONFIG_CRYPTO_WORKQUEUE=y
193 CONFIG_CRYPTO_AUTHENC=y
194 CONFIG_CRYPTO_CCM=y
195 CONFIG_CRYPTO_GCM=y
196 CONFIG_CRYPTO_SEQIV=y
197 CONFIG_CRYPTO_CMAC=y
198 CONFIG_CRYPTO_GHASH=y
199 CONFIG_CRYPTO_CRC32C=y
200 CONFIG_CRYPTO_MD5=y
201 CONFIG_CRYPTO_SHA1=y
202 CONFIG_CRYPTO_SHA256=y
203 CONFIG_CRYPTO_AES=y
204 CONFIG_CRYPTO_ARC4=y
205 CONFIG_CRYPTO_DES=y
206 CONFIG_CRYPTO_TWOFISH=y
207 CONFIG_CRYPTO_TWOFISH_COMMON=y
208 CONFIG_CRYPTO_DEFLATE=y
209 CONFIG_CRYPTO_LZO=y
210 CONFIG_CRYPTO_ANSI_CPRNG=y
211 CONFIG_CRYPTO_HW=y
212
213
214 # 3. deviced
215 # Ref. https://wiki.tizen.org/System:Deviced
216
217 #
218 # 3-1. deviced tzip feature
219 #   deviced requires FUSE for tzip feature to support mount of zip file.
220 #
221 #   (Mandatory)
222 CONFIG_FUSE_FS=y
223
224 #
225 # 3-2. deviced extcon uevent and usb feature
226 #   deviced optionally requires EXTCON to get external connector event like
227 #   USB device port and HDMI.
228 #   USB host and its class drivers are also recommended.
229 #
230 #   (Recommendation)
231 CONFIG_EXTCON=y
232 CONFIG_USB_SUPPORT=y
233 CONFIG_USB_COMMON=y
234 CONFIG_USB=y
235 CONFIG_USB_DEFAULT_PERSIST=y
236 CONFIG_USB_OTG=y
237 CONFIG_USB_STORAGE=y
238 CONFIG_USB_NOTIFY_LAYER=y
239 CONFIG_USB_HOST_NOTIFY=y
240 CONFIG_USB_NOTIFIER=y
241 CONFIG_USB_EXTERNAL_DETECT=y
242 CONFIG_USB_GADGET=y
243 CONFIG_USB_LIBCOMPOSITE=y
244 CONFIG_USB_F_ACM=y
245 CONFIG_USB_F_ACM_SELECTOR=y
246 CONFIG_USB_U_SERIAL=y
247 CONFIG_USB_F_ACM_REQ_U_SERIAL=y
248 CONFIG_USB_U_SERIAL_SELECTOR=y
249 CONFIG_CONFIGFS_FS=y
250 CONFIG_USB_CONFIGFS=y
251 CONFIG_USB_FUNCTIONFS=y
252 CONFIG_USB_FUNCTIONFS_GENERIC=y
253
254 #
255 # 3-3. deviced led feature
256 #   deviced optionally requires LED to show system state.
257 #
258 #   (Recommendation)
259 CONFIG_NEW_LEDS=y
260 CONFIG_LEDS_CLASS=y
261 CONFIG_LEDS_CLASS_FLASH=y
262 CONFIG_LEDS_GPIO=y
263 CONFIG_LEDS_TRIGGERS=y
264 CONFIG_LEDS_TRIGGER_HEARTBEAT=y
265
266
267 # 4. dlog
268 # Ref. https://wiki.tizen.org/3.0_Porting_Guide/System#dlog
269
270 CONFIG_ANDROID=y
271 CONFIG_STAGING=y
272 CONFIG_ANDROID_LOGGER=y
273
274 CONFIG_MULTIPLE_KMSG=y
275
276
277 # 5. resourced
278 # Ref. https://wiki.tizen.org/3.0_Porting_Guide/System#resourced
279
280 #   (Mandatory)
281 CONFIG_CGROUP_SCHED=y
282 CONFIG_MEMCG=y
283
284 #   (Optional)
285 CONFIG_FREEZER=y
286 CONFIG_CGROUP_FREEZER=y
287 CONFIG_SWAP=y
288 CONFIG_MEMCG_SWAP=y
289 CONFIG_MEMCG_SWAP_ENABLED=y
290 CONFIG_ZRAM=y
291 CONFIG_ZRAM_LZ4_COMPRESS=y
292 CONFIG_ZSMALLOC=y
293
294
295 # 6. Network
296
297 # 6-1. Ethernet and WLAN driver
298 #   (Mandatory)
299 CONFIG_NET=y
300 CONFIG_NETDEVICES=y
301 CONFIG_NET_CORE=y
302 CONFIG_FIB_RULES=y
303 CONFIG_WIRELESS=y
304 CONFIG_WEXT_CORE=y
305 CONFIG_WEXT_PROC=y
306 CONFIG_CFG80211=y
307 CONFIG_CFG80211_DEFAULT_PS=y
308 CONFIG_CFG80211_WEXT=y
309 CONFIG_CFG80211_ALLOW_RECONNECT=y
310 CONFIG_WLAN=y
311
312 #   (Recommendation)
313 CONFIG_USB_NET_DRIVERS=y
314 CONFIG_ETHERNET=y
315
316 # 6-2. Smart Traffic Control (STC) manager
317
318 #   (Mandatory)
319 CONFIG_NET=y
320 CONFIG_PACKET=y
321 CONFIG_UNIX=y
322 CONFIG_DEFAULT_HOSTNAME="(none)"
323 CONFIG_INET=y
324 CONFIG_CONNECTOR=y
325 CONFIG_PROC_EVENTS=y
326 CONFIG_NET_CLS=y
327 CONFIG_NET_CLS_CGROUP=y
328 CONFIG_NET_CLS_ACT=y
329 CONFIG_XFRM=y
330 CONFIG_XFRM_ALGO=y
331 CONFIG_XFRM_USER=y
332 CONFIG_XFRM_IPCOMP=y
333 CONFIG_NET_KEY=y
334 CONFIG_NET_IPGRE_DEMUX=y
335 CONFIG_NET_IP_TUNNEL=y
336 CONFIG_INET_ESP=y
337 CONFIG_INET_TUNNEL=y
338 CONFIG_INET_XFRM_MODE_TRANSPORT=y
339 CONFIG_INET_XFRM_MODE_TUNNEL=y
340 CONFIG_INET_XFRM_MODE_BEET=y
341 CONFIG_INET_DIAG=y
342 CONFIG_INET_TCP_DIAG=y
343 CONFIG_TCP_CONG_CUBIC=y
344 CONFIG_DEFAULT_TCP_CONG="cubic"
345 CONFIG_IPV6=y
346 CONFIG_IPV6_PRIVACY=y
347 CONFIG_IPV6_ROUTER_PREF=y
348 CONFIG_IPV6_ROUTE_INFO=y
349 CONFIG_IPV6_OPTIMISTIC_DAD=y
350 CONFIG_INET6_AH=y
351 CONFIG_INET6_ESP=y
352 CONFIG_INET6_IPCOMP=y
353 CONFIG_IPV6_MIP6=y
354 CONFIG_INET6_XFRM_TUNNEL=y
355 CONFIG_INET6_TUNNEL=y
356 CONFIG_INET6_XFRM_MODE_TRANSPORT=y
357 CONFIG_INET6_XFRM_MODE_TUNNEL=y
358 CONFIG_INET6_XFRM_MODE_BEET=y
359 CONFIG_IPV6_SIT=y
360 CONFIG_IPV6_NDISC_NODETYPE=y
361 CONFIG_IPV6_TUNNEL=y
362 CONFIG_IPV6_MULTIPLE_TABLES=y
363 CONFIG_IPV6_SUBTREES=y
364 CONFIG_NET_ACTIVITY_STATS=y
365 CONFIG_NETFILTER_NETLINK_ACCT=y
366 CONFIG_NETFILTER_NETLINK_QUEUE=y
367 CONFIG_NETFILTER_NETLINK_LOG=y
368 CONFIG_NF_CONNTRACK=y
369 CONFIG_NF_CONNTRACK_MARK=y
370 CONFIG_NF_CONNTRACK_PROCFS=y
371 CONFIG_NF_CONNTRACK_EVENTS=y
372 CONFIG_NF_CT_PROTO_DCCP=y
373 CONFIG_NF_CT_PROTO_GRE=y
374 CONFIG_NF_CT_PROTO_SCTP=y
375 CONFIG_NF_CT_PROTO_UDPLITE=y
376 CONFIG_NF_CONNTRACK_AMANDA=y
377 CONFIG_NF_CONNTRACK_FTP=y
378 CONFIG_NF_CONNTRACK_H323=y
379 CONFIG_NF_CONNTRACK_IRC=y
380 CONFIG_NF_CONNTRACK_BROADCAST=y
381 CONFIG_NF_CONNTRACK_NETBIOS_NS=y
382 CONFIG_NF_CONNTRACK_PPTP=y
383 CONFIG_NF_CONNTRACK_SANE=y
384 CONFIG_NF_CONNTRACK_SIP=y
385 CONFIG_NF_CONNTRACK_TFTP=y
386 CONFIG_NF_CT_NETLINK=y
387 CONFIG_NF_NAT=y
388 CONFIG_NF_NAT_NEEDED=y
389 CONFIG_NF_NAT_PROTO_DCCP=y
390 CONFIG_NF_NAT_PROTO_UDPLITE=y
391 CONFIG_NF_NAT_PROTO_SCTP=y
392 CONFIG_NF_NAT_AMANDA=y
393 CONFIG_NF_NAT_FTP=y
394 CONFIG_NF_NAT_IRC=y
395 CONFIG_NF_NAT_SIP=y
396 CONFIG_NF_NAT_TFTP=y
397 CONFIG_NETFILTER_TPROXY=y
398 CONFIG_IP_NF_TARGET_REJECT_SKERR=y
399 CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
400 CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
401 CONFIG_NETFILTER_XT_TARGET_LOG=y
402 CONFIG_NETFILTER_XT_TARGET_MARK=y
403 CONFIG_NETFILTER_XT_TARGET_NETMAP=y
404 CONFIG_NETFILTER_XT_TARGET_NFLOG=y
405 CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
406 CONFIG_NETFILTER_XT_TARGET_TPROXY=y
407 CONFIG_NETFILTER_XT_TARGET_TRACE=y
408 CONFIG_NETFILTER_XT_TARGET_SECMARK=y
409 CONFIG_NETFILTER_XT_MATCH_CGROUP=y
410 CONFIG_NETFILTER_XT_MATCH_COMMENT=y
411 CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y
412 CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
413 CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
414 CONFIG_NETFILTER_XT_MATCH_ECN=y
415 CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y
416 CONFIG_NETFILTER_XT_MATCH_HELPER=y
417 CONFIG_NETFILTER_XT_MATCH_HL=y
418 CONFIG_NETFILTER_XT_MATCH_IPRANGE=y
419 CONFIG_NETFILTER_XT_MATCH_LENGTH=y
420 CONFIG_NETFILTER_XT_MATCH_LIMIT=y
421 CONFIG_NETFILTER_XT_MATCH_MAC=y
422 CONFIG_NETFILTER_XT_MATCH_MARK=y
423 CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
424 CONFIG_NETFILTER_XT_MATCH_NFACCT=y
425 CONFIG_NETFILTER_XT_MATCH_POLICY=y
426 CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
427 CONFIG_NETFILTER_XT_MATCH_QUOTA=y
428 CONFIG_NETFILTER_XT_MATCH_QUOTA2=y
429 CONFIG_NETFILTER_XT_MATCH_QUOTA2_LOG=y
430 CONFIG_NETFILTER_XT_MATCH_SOCKET=y
431 CONFIG_NETFILTER_XT_MATCH_STATE=y
432 CONFIG_NETFILTER_XT_MATCH_STATISTIC=y
433 CONFIG_NETFILTER_XT_MATCH_STRING=y
434 CONFIG_NETFILTER_XT_MATCH_TIME=y
435 CONFIG_NETFILTER_XT_MATCH_U32=y
436 CONFIG_NF_CONNTRACK_PROC_COMPAT=y
437 CONFIG_IP_NF_IPTABLES=y
438 CONFIG_IP_NF_MATCH_AH=y
439 CONFIG_IP_NF_MATCH_ECN=y
440 CONFIG_IP_NF_MATCH_TTL=y
441 CONFIG_IP_NF_FILTER=y
442 CONFIG_NF_NAT_IPV4=y
443 CONFIG_IP_NF_TARGET_NETMAP=y
444 CONFIG_IP_NF_TARGET_REDIRECT=y
445 CONFIG_NF_NAT_PROTO_GRE=y
446 CONFIG_NF_NAT_PPTP=y
447 CONFIG_NF_NAT_H323=y
448 CONFIG_IP_NF_RAW=y
449 CONFIG_IP_NF_ARPTABLES=y
450 CONFIG_IP_NF_ARPFILTER=y
451 CONFIG_IP_NF_ARP_MANGLE=y
452 CONFIG_NF_DEFRAG_IPV6=y
453 CONFIG_NF_CONNTRACK_IPV6=y
454 CONFIG_IP6_NF_IPTABLES=y
455 CONFIG_IP6_NF_FILTER=y
456 CONFIG_IP6_NF_TARGET_REJECT=y
457 CONFIG_IP6_NF_TARGET_REJECT_SKERR=y
458 CONFIG_IP6_NF_RAW=y
459 CONFIG_L2TP=y
460 CONFIG_NET_SCHED=y
461 CONFIG_NET_SCH_HTB=y
462 CONFIG_NET_CLS_U32=y
463 CONFIG_NET_EMATCH=y
464 CONFIG_NET_EMATCH_STACK=32
465 CONFIG_NET_EMATCH_U32=y
466 CONFIG_NET_CLS_ACT=y
467 CONFIG_NET_SCH_FIFO=y
468 CONFIG_RPS=y
469 CONFIG_RFS_ACCEL=y
470 CONFIG_XPS=y
471 CONFIG_BQL=y
472
473 #
474 # 6-3. Tethering
475 #
476 #   (Mandatory)
477 CONFIG_IP_MULTICAST=y
478 CONFIG_IP_ADVANCED_ROUTER=y
479 CONFIG_IP_MULTIPLE_TABLES=y
480 CONFIG_NETFILTER_ADVANCED=y
481 CONFIG_BRIDGE_NETFILTER=y
482 CONFIG_NETFILTER_NETLINK=y
483 CONFIG_NETFILTER_NETLINK_LOG=y
484 CONFIG_NF_CONNTRACK=y
485 CONFIG_NF_CONNTRACK_MARK=y
486 CONFIG_NF_TABLES=y
487 CONFIG_NF_TABLES_INET=y
488 CONFIG_NFT_CT=y
489 CONFIG_NFT_MASQ=y
490 CONFIG_NFT_NAT=y
491 CONFIG_NETFILTER_XTABLES=y
492 CONFIG_NETFILTER_XT_MARK=y
493 CONFIG_NETFILTER_XT_CONNMARK=y
494 CONFIG_NETFILTER_XT_NAT=y
495 CONFIG_NETFILTER_XT_TARGET_TCPMSS=y
496 CONFIG_NETFILTER_XT_MATCH_TCPMSS=y
497 CONFIG_NETFILTER_XT_MATCH_STATE=y
498 CONFIG_NF_DEFRAG_IPV4=y
499 CONFIG_NF_CONNTRACK_IPV4=y
500 CONFIG_NF_TABLES_IPV4=y
501 CONFIG_NF_TABLES_IPV4=y
502 CONFIG_NFT_CHAIN_ROUTE_IPV4=y
503 CONFIG_NF_REJECT_IPV4=y
504 CONFIG_NF_NAT_IPV4=y
505 CONFIG_NFT_CHAIN_NAT_IPV4=y
506 CONFIG_NF_NAT_MASQUERADE_IPV4=y
507 CONFIG_IP_NF_NAT=y
508 CONFIG_NF_NAT_IPV6=y
509 CONFIG_IP_NF_TARGET_MASQUERADE=y
510 CONFIG_IP6_NF_TARGET_MASQUERADE=y
511 CONFIG_IP_NF_MANGLE=y
512 CONFIG_IP6_NF_MANGLE=y
513 CONFIG_STP=y
514 CONFIG_BRIDGE=y
515 CONFIG_BRIDGE_IGMP_SNOOPING=y
516 CONFIG_HAVE_NET_DSA=y
517
518 #
519 # 6-4. VPN service
520 #   Tizen uses openvpn for vpn service and openvpn requires Universal TUN/TAP
521 #   device driver support.
522 #   Ref. https://wiki.archlinux.org/index.php/OpenVPN#Kernel_configuration
523 #
524 #   (Mandatory)
525 CONFIG_TUN=y
526
527 # 7. Blueooth
528
529 #   (Recommendation)
530 CONFIG_BT=y
531 CONFIG_BT_BREDR=y
532 CONFIG_BT_RFCOMM=y
533 CONFIG_BT_RFCOMM_TTY=y
534 CONFIG_BT_BNEP=y
535 CONFIG_BT_BNEP_MC_FILTER=y
536 CONFIG_BT_BNEP_PROTO_FILTER=y
537 CONFIG_BT_HIDP=y
538 CONFIG_BT_LE=y
539 CONFIG_BT_6LOWPAN=y
540 CONFIG_RFKILL=y
541 CONFIG_RFKILL_PM=y
542 CONFIG_RFKILL_REGULATOR=y
543 CONFIG_BT_HCIUART=y
544 CONFIG_BT_HCIBTUSB=y
545
546 #
547 # 7-1. BLE Mesh support in BlueZ
548 #
549 #   Tizen uses BLE Mesh with BlueZ and it requires CRYPTO_USER_API
550 #   Ref. https://www.spinics.net/lists/linux-bluetooth/msg72012.html
551 #   (Recommendation)
552 CONFIG_CRYPTO_CCM=y
553 CONFIG_CRYPTO_CMAC=y
554 CONFIG_CRYPTO_USER_API=y
555 CONFIG_CRYPTO_USER_API_HASH=y
556 CONFIG_CRYPTO_USER_API_SKCIPHER=y
557 CONFIG_CRYPTO_USER_API_RNG=y
558 CONFIG_CRYPTO_USER_API_AEAD=y
559
560 # 8. Display manager
561
562 #   Tizen recommends display with Kernel DRM subsystem to support KMS.
563 #   For Display memory, drm gem is mainly used and CMA backend is primary for
564 #   drm gem. SYNC framework and SW_SYNC are also recommended.
565 #   (Recommendation)
566 CONFIG_DRM=y
567 CONFIG_DRM_KMS_HELPER=y
568 CONFIG_DRM_KMS_FB_HELPER=y
569 CONFIG_DRM_FBDEV_EMULATION=y
570 CONFIG_DRM_FBDEV_OVERALLOC=100
571 CONFIG_DRM_GEM_CMA_HELPER=y
572 CONFIG_DRM_KMS_CMA_HELPER=y
573 CONFIG_FB=y
574 CONFIG_FB_CMDLINE=y
575 CONFIG_FB_CFB_FILLRECT=y
576 CONFIG_FB_CFB_COPYAREA=y
577 CONFIG_FB_CFB_IMAGEBLIT=y
578 CONFIG_FB_MODE_HELPERS=y
579 CONFIG_VIDEOMODE_HELPERS=y
580 CONFIG_HDMI=y
581 CONFIG_BACKLIGHT_LCD_SUPPORT=y
582 CONFIG_LCD_CLASS_DEVICE=y
583 CONFIG_BACKLIGHT_CLASS_DEVICE=y
584 CONFIG_DUMMY_CONSOLE=y
585 CONFIG_FRAMEBUFFER_CONSOLE=y
586 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
587 CONFIG_SYNC_FILE=y
588 CONFIG_SYNC=y
589 CONFIG_SW_SYNC=y
590 CONFIG_SW_SYNC_USER=y
591 CONFIG_DMA_SHARED_BUFFER=y
592 CONFIG_CMA=y
593 CONFIG_DMA_CMA=y
594 CONFIG_CMA_ALIGNMENT=4
595 CONFIG_CMA_AREAS=7
596 # at least, CONFIG_CMA_SIZE_MBYTES=64
597 CONFIG_CMA_SIZE_MBYTES=256
598 CONFIG_CMA_SIZE_SEL_MBYTES=y
599
600
601 # 9. Input system
602
603 #   (Mandatory)
604 CONFIG_INPUT=y
605 CONFIG_INPUT_MATRIXKMAP=y
606 CONFIG_INPUT_MOUSEDEV=y
607 CONFIG_INPUT_JOYDEV=y
608 CONFIG_INPUT_EVDEV=y
609 CONFIG_INPUT_KEYBOARD=y
610 CONFIG_INPUT_MOUSE=y
611 CONFIG_INPUT_JOYSTICK=y
612 CONFIG_INPUT_TOUCHSCREEN=y
613 CONFIG_INPUT_MISC=y
614 CONFIG_INPUT_GPIO=y
615 CONFIG_INPUT_UINPUT=y
616 CONFIG_HID=y
617 CONFIG_HIDRAW=y
618 CONFIG_UHID=y
619 CONFIG_HID_GENERIC=y
620 CONFIG_USB_HID=y
621
622
623 # 10. Audio
624
625 #   Tizen uses audio node for audio module.
626 #   (Mandatory)
627 CONFIG_SOUND=y
628 CONFIG_SND=y
629 CONFIG_SND_TIMER=y
630 CONFIG_SND_PCM=y
631 CONFIG_SND_DRIVERS=y
632
633 #   (Recommendation)
634 CONFIG_SND_RAWMIDI=y
635 CONFIG_SND_COMPRESS_OFFLOAD=y
636 CONFIG_SND_JACK=y
637 CONFIG_SND_VERBOSE_PROCFS=y
638 CONFIG_SND_SPI=y
639 CONFIG_SND_USB=y
640 CONFIG_SND_SOC=y
641
642
643 # 11. Multimedia
644
645 #   11-1. Video & Camera
646 #   Tizen uses v4l2 video node for multimedia module.
647 #   (Recommendation)
648 CONFIG_MEDIA_SUPPORT=y
649 CONFIG_MEDIA_CAMERA_SUPPORT=y
650 CONFIG_MEDIA_RADIO_SUPPORT=y
651 CONFIG_MEDIA_CONTROLLER=y
652 CONFIG_VIDEO_DEV=y
653 CONFIG_VIDEO_V4L2_SUBDEV_API=y
654 CONFIG_VIDEO_V4L2=y
655 CONFIG_V4L2_MEM2MEM_DEV=y
656 CONFIG_VIDEOBUF2_CORE=y
657 CONFIG_VIDEOBUF2_MEMOPS=y
658 CONFIG_VIDEOBUF2_DMA_CONTIG=y
659 CONFIG_VIDEOBUF2_VMALLOC=y
660 CONFIG_V4L_PLATFORM_DRIVERS=y
661 CONFIG_USB_VIDEO_CLASS=y
662 CONFIG_RADIO_ADAPTERS=y
663 CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
664 CONFIG_MEDIA_TUNER=y
665 CONFIG_MEDIA_TUNER_SIMPLE=y
666 CONFIG_MEDIA_ATTACH=y
667
668 #   11-2. TV tuner and DVB
669 #   Tizen TV uses DVB subsystem and RC subsystem.
670 #   (Recommendation)
671 CONFIG_MEDIA_SUPPORT=y
672 CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
673 CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
674 CONFIG_MEDIA_RC_SUPPORT=y
675 CONFIG_MEDIA_CONTROLLER=y
676 CONFIG_VIDEO_DEV=y
677 CONFIG_VIDEO_V4L2_SUBDEV_API=y
678 CONFIG_VIDEO_V4L2=y
679 CONFIG_VIDEO_TUNER=y
680 CONFIG_VIDEOBUF_DVB=y
681 CONFIG_VIDEOBUF2_CORE=y
682 CONFIG_VIDEOBUF2_MEMOPS=y
683 CONFIG_DVB_CORE=y
684 CONFIG_DVB_NET=y
685 CONFIG_RC_CORE=y
686 CONFIG_RC_MAP=y
687 CONFIG_RC_DECODERS=y
688 CONFIG_MEDIA_USB_SUPPORT=y
689 CONFIG_DVB_USB=y
690 CONFIG_DVB_USB_V2=y
691 CONFIG_VIDEO_IR_I2C=y
692
693
694 # 12. Application Framework
695
696 #
697 #   12-1. alarm manager
698 #   Alarm manager uses rtc to set alarm timer.
699 #
700 #   (Mandatory)
701 CONFIG_RTC_LIB=y
702 CONFIG_RTC_CLASS=y
703 CONFIG_RTC_HCTOSYS=y
704 CONFIG_RTC_SYSTOHC=y
705 CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
706 CONFIG_RTC_NVMEM=y
707 CONFIG_RTC_INTF_SYSFS=y
708 CONFIG_RTC_INTF_PROC=y
709 CONFIG_RTC_INTF_DEV=y
710 CONFIG_RTC_I2C_AND_SPI=y
711
712 #
713 #   12-2. Application to SD (app2sd)
714 #   Application on external storage requires Device Mapper Crpyto and its
715 #   crypto apis.
716 #
717 #   (Mandatory)
718 CONFIG_MD=y
719 CONFIG_BLK_DEV_DM_BUILTIN=y
720 CONFIG_BLK_DEV_DM=y
721 CONFIG_DM_CRYPT=y
722 CONFIG_CRYPTO=y
723 CONFIG_CRYPTO_CBC=y
724 CONFIG_CRYPTO_CTR=y
725 CONFIG_CRYPTO_ECB=y
726 CONFIG_CRYPTO_XTS=y
727 CONFIG_CRYPTO_SHA1=y
728 CONFIG_CRYPTO_SHA256=y
729 CONFIG_CRYPTO_AES=y
730 CONFIG_BLK_DEV=y
731 CONFIG_BLK_DEV_LOOP=y
732 CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
733 CONFIG_BLK_DEV_CRYPTOLOOP=y