1# Copyright (c) 2020 Tobias Svehagen 2# Copyright (c) 2023 Meta 3# 4# SPDX-License-Identifier: Apache-2.0 5 6menuconfig ZVFS 7 bool "Zephyr virtual filesystem (ZVFS) support [EXPERIMENTAL]" 8 select FDTABLE 9 select EXPERIMENTAL 10 help 11 ZVFS is a central, Zephyr-native library that provides a common interoperable API for all 12 types of file descriptors such as those from the non-virtual FS, sockets, eventfds, FILE *'s 13 and more. It is designed to be used by all Zephyr subsystems that need to work with files. 14 15if ZVFS 16 17config ZVFS_EVENTFD 18 bool "ZVFS event file descriptor support" 19 imply ZVFS_POLL 20 help 21 Enable support for ZVFS event file descriptors. An eventfd can 22 be used as an event wait/notify mechanism together with POSIX calls 23 like read, write and poll. 24 25if ZVFS_EVENTFD 26 27config ZVFS_EVENTFD_MAX 28 int "Maximum number of ZVFS eventfd's" 29 default 8 if WIFI_NM_WPA_SUPPLICANT 30 default 1 31 range 1 4096 32 help 33 The maximum number of supported event file descriptors. 34 35endif # ZVFS_EVENTFD 36 37config ZVFS_POLL 38 bool "ZVFS poll" 39 select POLL 40 help 41 Enable support for zvfs_poll(). 42 43if ZVFS_POLL 44 45config ZVFS_POLL_MAX 46 int "Max number of supported zvfs_poll() entries" 47 default NET_SOCKETS_POLL_MAX if NET_SOCKETS_POLL_MAX > 0 48 default 6 if WIFI_NM_WPA_SUPPLICANT 49 default 4 if SHELL_BACKEND_TELNET 50 default 3 51 help 52 Maximum number of entries supported for poll() call. 53 54config ZVFS_SELECT 55 bool "ZVFS select" 56 help 57 Enable support for zvfs_select(). 58 59endif # ZVFS_POLL 60 61endif # ZVFS 62