From a9df9169882c564af6714bbf121c278092d3c51c Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Sun, 8 Feb 2015 19:43:09 +0100 Subject: IMFS: Add fine grained configuration Remove miniIMFS. Statically initialize the root IMFS. Add configuration options to disable individual features of the root IMFS, e.g. o CONFIGURE_IMFS_DISABLE_CHOWN, o CONFIGURE_IMFS_DISABLE_FCHMOD, o CONFIGURE_IMFS_DISABLE_LINK, o CONFIGURE_IMFS_DISABLE_MKNOD, o CONFIGURE_IMFS_DISABLE_MOUNT, o CONFIGURE_IMFS_DISABLE_READLINK, o CONFIGURE_IMFS_DISABLE_RENAME, o CONFIGURE_IMFS_DISABLE_RMNOD, o CONFIGURE_IMFS_DISABLE_SYMLINK, o CONFIGURE_IMFS_DISABLE_UNMOUNT, and o CONFIGURE_IMFS_DISABLE_UTIME. --- cpukit/libfs/Makefile.am | 4 +- cpukit/libfs/src/imfs/fifoimfs_init.c | 78 ----------- cpukit/libfs/src/imfs/imfs.h | 21 +-- cpukit/libfs/src/imfs/imfs_init.c | 2 +- cpukit/libfs/src/imfs/imfs_load_tar.c | 5 +- cpukit/libfs/src/imfs/imfs_make_generic_node.c | 10 -- cpukit/libfs/src/imfs/miniimfs_init.c | 74 ---------- cpukit/sapi/include/confdefs.h | 184 ++++++++++++++++--------- 8 files changed, 126 insertions(+), 252 deletions(-) delete mode 100644 cpukit/libfs/src/imfs/fifoimfs_init.c delete mode 100644 cpukit/libfs/src/imfs/miniimfs_init.c (limited to 'cpukit') diff --git a/cpukit/libfs/Makefile.am b/cpukit/libfs/Makefile.am index 3c454e7154..802dfdb141 100644 --- a/cpukit/libfs/Makefile.am +++ b/cpukit/libfs/Makefile.am @@ -41,7 +41,7 @@ noinst_LIBRARIES += libimfs.a libimfs_a_SOURCES = libimfs_a_SOURCES += src/imfs/deviceio.c \ - src/imfs/fifoimfs_init.c src/imfs/imfs_chown.c src/imfs/imfs_config.c \ + src/imfs/imfs_chown.c src/imfs/imfs_config.c \ src/imfs/imfs_creat.c src/imfs/imfs_directory.c \ src/imfs/imfs_eval.c src/imfs/imfs_fchmod.c \ src/imfs/imfs_fifo.c \ @@ -56,7 +56,7 @@ libimfs_a_SOURCES += src/imfs/deviceio.c \ src/imfs/imfs_rename.c src/imfs/imfs_rmnod.c \ src/imfs/imfs_stat.c src/imfs/imfs_stat_file.c src/imfs/imfs_symlink.c \ src/imfs/imfs_unmount.c src/imfs/imfs_utime.c src/imfs/ioman.c \ - src/imfs/imfs_memfile.c src/imfs/miniimfs_init.c src/imfs/imfs.h + src/imfs/imfs_memfile.c src/imfs/imfs.h # POSIX FIFO/pipe libimfs_a_SOURCES += src/pipe/fifo.c src/pipe/pipe.c src/pipe/pipe.h diff --git a/cpukit/libfs/src/imfs/fifoimfs_init.c b/cpukit/libfs/src/imfs/fifoimfs_init.c deleted file mode 100644 index 4063557739..0000000000 --- a/cpukit/libfs/src/imfs/fifoimfs_init.c +++ /dev/null @@ -1,78 +0,0 @@ -/** - * @file - * - * @ingroup LibFSIMFS - * - * @brief IMFS without fifo support initialization. - */ - -/* - * Copyright (c) 2010 - * embedded brains GmbH - * Obere Lagerstr. 30 - * D-82178 Puchheim - * Germany - * - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#if HAVE_CONFIG_H - #include "config.h" -#endif - -#include "imfs.h" - -#include - -#include - -const rtems_filesystem_operations_table fifoIMFS_ops = { - .lock_h = rtems_filesystem_default_lock, - .unlock_h = rtems_filesystem_default_unlock, - .eval_path_h = IMFS_eval_path, - .link_h = IMFS_link, - .are_nodes_equal_h = rtems_filesystem_default_are_nodes_equal, - .mknod_h = IMFS_mknod, - .rmnod_h = IMFS_rmnod, - .fchmod_h = IMFS_fchmod, - .chown_h = IMFS_chown, - .clonenod_h = IMFS_node_clone, - .freenod_h = IMFS_node_free, - .mount_h = IMFS_mount, - .unmount_h = IMFS_unmount, - .fsunmount_me_h = IMFS_fsunmount, - .utime_h = IMFS_utime, - .symlink_h = IMFS_symlink, - .readlink_h = IMFS_readlink, - .rename_h = IMFS_rename, - .statvfs_h = rtems_filesystem_default_statvfs -}; - -static const IMFS_mknod_controls IMFS_fifo_mknod_controls = { - .directory = &IMFS_mknod_control_directory, - .device = &IMFS_mknod_control_device, - .file = &IMFS_mknod_control_memfile, - .fifo = &IMFS_mknod_control_fifo -}; - -int fifoIMFS_initialize( - rtems_filesystem_mount_table_entry_t *mt_entry, - const void *data -) -{ - IMFS_fs_info_t *fs_info = calloc( 1, sizeof( *fs_info ) ); - IMFS_mount_data mount_data = { - .fs_info = fs_info, - .ops = &fifoIMFS_ops, - .mknod_controls = &IMFS_fifo_mknod_controls - }; - - if ( fs_info == NULL ) { - rtems_set_errno_and_return_minus_one( ENOMEM ); - } - - return IMFS_initialize_support( mt_entry, &mount_data ); -} diff --git a/cpukit/libfs/src/imfs/imfs.h b/cpukit/libfs/src/imfs/imfs.h index 00fc1795a6..c03257a0fa 100644 --- a/cpukit/libfs/src/imfs/imfs.h +++ b/cpukit/libfs/src/imfs/imfs.h @@ -391,10 +391,6 @@ extern const IMFS_node_control IMFS_node_control_linfile; extern const IMFS_mknod_control IMFS_mknod_control_fifo; extern const IMFS_mknod_control IMFS_mknod_control_enosys; -extern const rtems_filesystem_operations_table miniIMFS_ops; -extern const rtems_filesystem_operations_table IMFS_ops; -extern const rtems_filesystem_operations_table fifoIMFS_ops; - extern const rtems_filesystem_limits_and_options_t IMFS_LIMITS_AND_OPTIONS; /* @@ -406,16 +402,6 @@ extern int IMFS_initialize( const void *data ); -extern int fifoIMFS_initialize( - rtems_filesystem_mount_table_entry_t *mt_entry, - const void *data -); - -extern int miniIMFS_initialize( - rtems_filesystem_mount_table_entry_t *mt_entry, - const void *data -); - extern int IMFS_initialize_support( rtems_filesystem_mount_table_entry_t *mt_entry, const void *data @@ -586,9 +572,12 @@ extern IMFS_jnode_t *IMFS_create_node( void *arg ); -extern bool IMFS_is_imfs_instance( +static inline bool IMFS_is_imfs_instance( const rtems_filesystem_location_info_t *loc -); +) +{ + return loc->mt_entry->ops->clonenod_h == IMFS_node_clone; +} /** @} */ diff --git a/cpukit/libfs/src/imfs/imfs_init.c b/cpukit/libfs/src/imfs/imfs_init.c index e82490fac9..bbab2cb3e1 100644 --- a/cpukit/libfs/src/imfs/imfs_init.c +++ b/cpukit/libfs/src/imfs/imfs_init.c @@ -25,7 +25,7 @@ #include -const rtems_filesystem_operations_table IMFS_ops = { +static const rtems_filesystem_operations_table IMFS_ops = { .lock_h = rtems_filesystem_default_lock, .unlock_h = rtems_filesystem_default_unlock, .eval_path_h = IMFS_eval_path, diff --git a/cpukit/libfs/src/imfs/imfs_load_tar.c b/cpukit/libfs/src/imfs/imfs_load_tar.c index d303cd29eb..7228978094 100644 --- a/cpukit/libfs/src/imfs/imfs_load_tar.c +++ b/cpukit/libfs/src/imfs/imfs_load_tar.c @@ -58,10 +58,7 @@ int rtems_tarfs_load( RTEMS_FS_MAKE | RTEMS_FS_EXCLUSIVE ); - if ( - rootloc.mt_entry->ops != &IMFS_ops - && rootloc.mt_entry->ops != &fifoIMFS_ops - ) { + if ( !IMFS_is_imfs_instance( &rootloc ) ) { rv = -1; } diff --git a/cpukit/libfs/src/imfs/imfs_make_generic_node.c b/cpukit/libfs/src/imfs/imfs_make_generic_node.c index f302dda93f..aef21c9493 100644 --- a/cpukit/libfs/src/imfs/imfs_make_generic_node.c +++ b/cpukit/libfs/src/imfs/imfs_make_generic_node.c @@ -39,16 +39,6 @@ IMFS_jnode_t *IMFS_node_initialize_generic( return node; } -bool IMFS_is_imfs_instance( - const rtems_filesystem_location_info_t *loc -) -{ - const char *type = loc->mt_entry->type; - - return strcmp(type, RTEMS_FILESYSTEM_TYPE_IMFS) == 0 - || strcmp(type, RTEMS_FILESYSTEM_TYPE_MINIIMFS) == 0; -} - int IMFS_make_generic_node( const char *path, mode_t mode, diff --git a/cpukit/libfs/src/imfs/miniimfs_init.c b/cpukit/libfs/src/imfs/miniimfs_init.c deleted file mode 100644 index 7451c5eb0d..0000000000 --- a/cpukit/libfs/src/imfs/miniimfs_init.c +++ /dev/null @@ -1,74 +0,0 @@ -/** - * @file - * - * @ingroup LibFSIMFS - * - * @brief Mini-IMFS initialization. - */ - -/* - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#if HAVE_CONFIG_H - #include "config.h" -#endif - -#include "imfs.h" - -#include - -#include - -const rtems_filesystem_operations_table miniIMFS_ops = { - .lock_h = rtems_filesystem_default_lock, - .unlock_h = rtems_filesystem_default_unlock, - .eval_path_h = IMFS_eval_path, - .link_h = rtems_filesystem_default_link, - .are_nodes_equal_h = rtems_filesystem_default_are_nodes_equal, - .mknod_h = IMFS_mknod, - .rmnod_h = IMFS_rmnod, - .fchmod_h = rtems_filesystem_default_fchmod, - .chown_h = rtems_filesystem_default_chown, - .clonenod_h = IMFS_node_clone, - .freenod_h = IMFS_node_free, - .mount_h = IMFS_mount, - .unmount_h = rtems_filesystem_default_unmount, - .fsunmount_me_h = rtems_filesystem_default_fsunmount, - .utime_h = rtems_filesystem_default_utime, - .symlink_h = rtems_filesystem_default_symlink, - .readlink_h = rtems_filesystem_default_readlink, - .rename_h = rtems_filesystem_default_rename, - .statvfs_h = rtems_filesystem_default_statvfs -}; - -static const IMFS_mknod_controls IMFS_mini_mknod_controls = { - .directory = &IMFS_mknod_control_directory, - .device = &IMFS_mknod_control_device, - .file = &IMFS_mknod_control_memfile, - .fifo = &IMFS_mknod_control_enosys -}; - -int miniIMFS_initialize( - rtems_filesystem_mount_table_entry_t *mt_entry, - const void *data -) -{ - IMFS_fs_info_t *fs_info = calloc( 1, sizeof( *fs_info ) ); - IMFS_mount_data mount_data = { - .fs_info = fs_info, - .ops = &miniIMFS_ops, - .mknod_controls = &IMFS_mini_mknod_controls - }; - - if ( fs_info == NULL ) { - rtems_set_errno_and_return_minus_one( ENOMEM ); - } - - return IMFS_initialize_support( mt_entry, &mount_data ); -} diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h index 211c6bc77f..6fb09512f6 100644 --- a/cpukit/sapi/include/confdefs.h +++ b/cpukit/sapi/include/confdefs.h @@ -125,14 +125,6 @@ const rtems_libio_helper rtems_fs_init_helper = #endif #endif -/* - * If the application disables the filesystem, they will not need - * a mount table, so do not produce one. - */ -#ifdef CONFIGURE_APPLICATION_DISABLE_FILESYSTEM - #define CONFIGURE_HAS_OWN_MOUNT_TABLE -#endif - /** * This macro defines the number of POSIX file descriptors allocated * and managed by libio. These are the "integer" file descriptors that @@ -257,7 +249,6 @@ const rtems_libio_helper rtems_fs_init_helper = * Add file filesystems to the default filesystem table. * * List of available file systems. You can define as many as you like: - * CONFIGURE_FILESYSTEM_MINIIMFS - MiniIMFS, use DEVFS now * CONFIGURE_FILESYSTEM_IMFS - In Memory File System (IMFS) * CONFIGURE_FILESYSTEM_DEVFS - Device File System (DSVFS) * CONFIGURE_FILESYSTEM_TFTPFS - TFTP File System, networking enabled @@ -271,10 +262,10 @@ const rtems_libio_helper rtems_fs_init_helper = * * - If nothing is defined the base file system is the IMFS. * - * - If CONFIGURE_APPLICATION_DISABLE_FILESYSTEM is defined all filesystem - * are disabled by force and an empty DEVFS is created. + * - If CONFIGURE_APPLICATION_DISABLE_FILESYSTEM is defined all filesystems + * are disabled by force. * - * - If CONFIGURE_USE_DEV_AS_BASE_FILESYSTEM is defined all filesystem + * - If CONFIGURE_USE_DEV_AS_BASE_FILESYSTEM is defined all filesystems * are disabled by force and DEVFS is defined. */ @@ -285,7 +276,6 @@ const rtems_libio_helper rtems_fs_init_helper = * been disabled. */ #ifdef CONFIGURE_FILESYSTEM_ALL - #define CONFIGURE_FILESYSTEM_MINIIMFS #define CONFIGURE_FILESYSTEM_IMFS #define CONFIGURE_FILESYSTEM_DEVFS #define CONFIGURE_FILESYSTEM_TFTPFS @@ -301,23 +291,19 @@ const rtems_libio_helper rtems_fs_init_helper = * configured other filesystem parameters. */ #if defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) - #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) || \ - defined(CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM) - #error "Filesystem disabled but a base filesystem configured." + #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) + #error "Filesystem disabled and a base filesystem configured." #endif - #if defined(CONFIGURE_FILESYSTEM_MINIIMFS) || \ - defined(CONFIGURE_FILESYSTEM_IMFS) || \ - defined(CONFIGURE_FILESYSTEM_DEVFS) || \ - defined(CONFIGURE_FILESYSTEM_TFTPFS) || \ - defined(CONFIGURE_FILESYSTEM_FTPFS) || \ - defined(CONFIGURE_FILESYSTEM_NFS) || \ - defined(CONFIGURE_FILESYSTEM_DOSFS) || \ - defined(CONFIGURE_FILESYSTEM_RFS) || \ - defined(CONFIGURE_FILESYSTEM_JFFS2) - #error "Configured filesystems but root filesystem was not IMFS!" - #error "Filesystems could be disabled, DEVFS is root, or" - #error " miniIMFS is root!" + #if defined(CONFIGURE_FILESYSTEM_IMFS) || \ + defined(CONFIGURE_FILESYSTEM_DEVFS) || \ + defined(CONFIGURE_FILESYSTEM_TFTPFS) || \ + defined(CONFIGURE_FILESYSTEM_FTPFS) || \ + defined(CONFIGURE_FILESYSTEM_NFS) || \ + defined(CONFIGURE_FILESYSTEM_DOSFS) || \ + defined(CONFIGURE_FILESYSTEM_RFS) || \ + defined(CONFIGURE_FILESYSTEM_JFFS2) + #error "Filesystem disabled and a filesystem configured." #endif #endif @@ -328,10 +314,6 @@ const rtems_libio_helper rtems_fs_init_helper = #if !defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) #define CONFIGURE_FILESYSTEM_DEVFS - #elif defined(CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM) - #define CONFIGURE_FILESYSTEM_MINIIMFS - #elif !defined(CONFIGURE_FILESYSTEM_IMFS) - #define CONFIGURE_FILESYSTEM_IMFS #endif #endif @@ -354,29 +336,13 @@ const rtems_libio_helper rtems_fs_init_helper = IMFS_MEMFILE_DEFAULT_BYTES_PER_BLOCK #endif -/** - * This defines the miniIMFS file system table entry. - */ -#if !defined(CONFIGURE_FILESYSTEM_ENTRY_miniIMFS) && \ - defined(CONFIGURE_FILESYSTEM_MINIIMFS) - #define CONFIGURE_FILESYSTEM_ENTRY_miniIMFS \ - { RTEMS_FILESYSTEM_TYPE_MINIIMFS, miniIMFS_initialize } -#endif -#endif - -#ifndef RTEMS_SCHEDSIM /** * This defines the IMFS file system table entry. */ #if !defined(CONFIGURE_FILESYSTEM_ENTRY_IMFS) && \ - defined(CONFIGURE_FILESYSTEM_IMFS) - #if CONFIGURE_MAXIMUM_FIFOS > 0 || CONFIGURE_MAXIMUM_PIPES > 0 - #define CONFIGURE_FILESYSTEM_ENTRY_IMFS \ - { RTEMS_FILESYSTEM_TYPE_IMFS, fifoIMFS_initialize } - #else - #define CONFIGURE_FILESYSTEM_ENTRY_IMFS \ - { RTEMS_FILESYSTEM_TYPE_IMFS, IMFS_initialize } - #endif + defined(CONFIGURE_FILESYSTEM_IMFS) + #define CONFIGURE_FILESYSTEM_ENTRY_IMFS \ + { RTEMS_FILESYSTEM_TYPE_IMFS, IMFS_initialize } #endif #endif @@ -506,28 +472,27 @@ const rtems_libio_helper rtems_fs_init_helper = #include #endif -#ifndef RTEMS_SCHEDSIM - #if defined(CONFIGURE_FILESYSTEM_IMFS) || \ - defined(CONFIGURE_FILESYSTEM_MINIIMFS) - int imfs_rq_memfile_bytes_per_block = CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK; - #endif -#endif - /** * Table termination record. */ #define CONFIGURE_FILESYSTEM_NULL { NULL, NULL } #ifndef RTEMS_SCHEDSIM + #if !defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) && \ + !defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) + int imfs_rq_memfile_bytes_per_block = + CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK; + #endif + /** * The default file system table. Must be terminated with the NULL entry if * you provide your own. */ - #ifndef CONFIGURE_HAS_OWN_FILESYSTEM_TABLE + #if !defined(CONFIGURE_HAS_OWN_FILESYSTEM_TABLE) && \ + !defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) const rtems_filesystem_table_t rtems_filesystem_table[] = { - #if defined(CONFIGURE_FILESYSTEM_MINIIMFS) && \ - defined(CONFIGURE_FILESYSTEM_ENTRY_miniIMFS) - CONFIGURE_FILESYSTEM_ENTRY_miniIMFS, + #if !defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) + { "/", IMFS_initialize_support }, #endif #if defined(CONFIGURE_FILESYSTEM_IMFS) && \ defined(CONFIGURE_FILESYSTEM_ENTRY_IMFS) @@ -565,30 +530,115 @@ const rtems_libio_helper rtems_fs_init_helper = }; #endif - #ifndef CONFIGURE_HAS_OWN_MOUNT_TABLE + #if !defined(CONFIGURE_HAS_OWN_MOUNT_TABLE) && \ + !defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) static devFS_node devFS_root_filesystem_nodes [CONFIGURE_MAXIMUM_DEVICES]; static const devFS_data devFS_root_filesystem_data = { devFS_root_filesystem_nodes, CONFIGURE_MAXIMUM_DEVICES }; + #else + static IMFS_fs_info_t _Configure_IMFS_fs_info; + + static const rtems_filesystem_operations_table _Configure_IMFS_ops = { + rtems_filesystem_default_lock, + rtems_filesystem_default_unlock, + IMFS_eval_path, + #ifdef CONFIGURE_IMFS_DISABLE_LINK + rtems_filesystem_default_link, + #else + IMFS_link, + #endif + rtems_filesystem_default_are_nodes_equal, + #ifdef CONFIGURE_IMFS_DISABLE_MKNOD + rtems_filesystem_default_mknod, + #else + IMFS_mknod, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_RMNOD + rtems_filesystem_default_rmnod, + #else + IMFS_rmnod, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_FCHMOD + rtems_filesystem_default_fchmod, + #else + IMFS_fchmod, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_CHOWN + rtems_filesystem_default_chown, + #else + IMFS_chown, + #endif + IMFS_node_clone, + IMFS_node_free, + #ifdef CONFIGURE_IMFS_DISABLE_MOUNT + rtems_filesystem_default_mount, + #else + IMFS_mount, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_UNMOUNT + rtems_filesystem_default_unmount, + #else + IMFS_unmount, + #endif + rtems_filesystem_default_fsunmount, + #ifdef CONFIGURE_IMFS_DISABLE_UTIME + rtems_filesystem_default_utime, + #else + IMFS_utime, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_SYMLINK + rtems_filesystem_default_symlink, + #else + IMFS_symlink, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_READLINK + rtems_filesystem_default_readlink, + #else + IMFS_readlink, + #endif + #ifdef CONFIGURE_IMFS_DISABLE_RENAME + rtems_filesystem_default_rename, + #else + IMFS_rename, + #endif + rtems_filesystem_default_statvfs + }; + + static const IMFS_mknod_controls _Configure_IMFS_mknod_controls = { + &IMFS_mknod_control_directory, + &IMFS_mknod_control_device, + &IMFS_mknod_control_memfile, + #if CONFIGURE_MAXIMUM_FIFOS > 0 || CONFIGURE_MAXIMUM_PIPES > 0 + &IMFS_mknod_control_fifo + #else + &IMFS_mknod_control_enosys + #endif + }; + + static const IMFS_mount_data _Configure_IMFS_mount_data = { + &_Configure_IMFS_fs_info, + &_Configure_IMFS_ops, + &_Configure_IMFS_mknod_controls + }; #endif + const rtems_filesystem_mount_configuration rtems_filesystem_root_configuration = { NULL, NULL, #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) RTEMS_FILESYSTEM_TYPE_DEVFS, - #elif defined(CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM) - RTEMS_FILESYSTEM_TYPE_MINIIMFS, #else - RTEMS_FILESYSTEM_TYPE_IMFS, + "/", #endif RTEMS_FILESYSTEM_READ_WRITE, #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) &devFS_root_filesystem_data #else - NULL + &_Configure_IMFS_mount_data #endif }; #endif -- cgit v1.2.3