incubator-nuttx/fs/hostfs/Kconfig

59 lines
1.9 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
config FS_HOSTFS
bool "Host File System"
default n
depends on !DISABLE_MOUNTPOINT
---help---
The Host file system provides a mechanism to mount directories
from the host OS during simulation mode. The host directory
to be "mounted" is specified during the mount command using
the -o command line switch, such as:
mount -t hostfs -o fs=/home/user/nuttx_root /host
For non-NSH operation, the option "fs=home/user/nuttx_root" would
be passed to the 'mount()' routine using the optional 'void *data'
parameter.
The backend implementation is arch-dependent.
As of writing this, it's implemented for sim, arm and xtensa.
Note: depending on the backend implementions, hostfs might
only provide very restricted subset of filesystem operations.
Sim: It's implemented with direct calls to the host OS API.
It likely consumes a lot of stack than ordinary NuttX codebase.
You likely need to make task stack sizes huge (e.g. 64KB) to
avoid stack overrun.
Arm, xtensa: It's implemented using a special CPU instruction
to trigger a trap for a hypervisor.
If you are using qemu, it has the `-semihosting` command line
option to enable the handling of the trap.
Theoretically, it can work for other environments as well.
E.g. a real hardware + JTAG + OpenOCD.
config FS_HOSTFS_RPMSG
bool "Host File System Rpmsg"
default n
depends on FS_HOSTFS
depends on OPENAMP
---help---
Use Host file system to mount directories through rpmsg.
This is the driver that sending the message.
This effectively replaces the ordinary hostfs backend.
Right now, there is no way to enable both backends.
config FS_HOSTFS_RPMSG_SERVER
bool "Host File System Rpmsg Server"
default n
depends on OPENAMP
---help---
Use Host file system to mount directories through rpmsg.
This is the driver that receiving the message.