summaryrefslogtreecommitdiffstats
path: root/cpukit/libmisc/shell
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2010-02-19 03:23:11 +0000
committerChris Johns <chrisj@rtems.org>2010-02-19 03:23:11 +0000
commitcca94a248bd6ce791b34e9bf3a704b535df3e5ef (patch)
tree395109d3c6dffa253542ecb82be29e6e96cff2f6 /cpukit/libmisc/shell
parent2010-02-19 Chris Johns <chrisj@rtems.org> (diff)
downloadrtems-cca94a248bd6ce791b34e9bf3a704b535df3e5ef.tar.bz2
2010-02-19 Chris Johns <chrisj@rtems.org>
* libblock/src/diskdevs.c: Create the devices as block devices. * libmisc/shell/main_debugrfs.c, libmisc/shell/main_mkrfs.c, libmisc/shell/main_mount_rfs.c: New. * libmisc/shell/main_msdosfmt.c: Change the command to mkdos and alias the old name. * libmisc/shell/shellconfig.h, libmisc/Makefile.am: Add RFS support. * libfs/src/rfs/rtems-rfs-shell.c, libfs/src/rfs/rtems-rfs-shell.h: Move the format command code into the shell file.
Diffstat (limited to 'cpukit/libmisc/shell')
-rw-r--r--cpukit/libmisc/shell/main_debugrfs.c35
-rw-r--r--cpukit/libmisc/shell/main_mkrfs.c35
-rw-r--r--cpukit/libmisc/shell/main_mount_rfs.c36
-rw-r--r--cpukit/libmisc/shell/main_msdosfmt.c6
-rw-r--r--cpukit/libmisc/shell/shellconfig.h17
5 files changed, 125 insertions, 4 deletions
diff --git a/cpukit/libmisc/shell/main_debugrfs.c b/cpukit/libmisc/shell/main_debugrfs.c
new file mode 100644
index 0000000000..5d4052d43a
--- /dev/null
+++ b/cpukit/libmisc/shell/main_debugrfs.c
@@ -0,0 +1,35 @@
+/*
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdio.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+
+#include <rtems.h>
+#include <rtems/shell.h>
+#include <rtems/stringto.h>
+#include <rtems/shellconfig.h>
+#include <rtems/rtems-rfs-shell.h>
+#include <rtems/fsmount.h>
+#include "internal.h"
+
+#define OPTIONS "[-h]"
+
+rtems_shell_cmd_t rtems_shell_DEBUGRFS_Command = {
+ "debugrfs", /* name */
+ "debugrfs " OPTIONS, /* usage */
+ "files", /* topic */
+ rtems_shell_debugrfs, /* command */
+ NULL, /* alias */
+ NULL /* next */
+};
diff --git a/cpukit/libmisc/shell/main_mkrfs.c b/cpukit/libmisc/shell/main_mkrfs.c
new file mode 100644
index 0000000000..726b575b03
--- /dev/null
+++ b/cpukit/libmisc/shell/main_mkrfs.c
@@ -0,0 +1,35 @@
+/*
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdio.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+
+#include <rtems.h>
+#include <rtems/shell.h>
+#include <rtems/stringto.h>
+#include <rtems/shellconfig.h>
+#include <rtems/rtems-rfs-shell.h>
+#include <rtems/fsmount.h>
+#include "internal.h"
+
+#define OPTIONS "[-v] [-s blksz] [-b grpblk] [-i grpinode] [-I] [-o %inode]"
+
+rtems_shell_cmd_t rtems_shell_MKRFS_Command = {
+ "mkrfs", /* name */
+ "mkrfs " OPTIONS " dev", /* usage */
+ "files", /* topic */
+ rtems_shell_rfs_format, /* command */
+ NULL, /* alias */
+ NULL /* next */
+};
diff --git a/cpukit/libmisc/shell/main_mount_rfs.c b/cpukit/libmisc/shell/main_mount_rfs.c
new file mode 100644
index 0000000000..674556afce
--- /dev/null
+++ b/cpukit/libmisc/shell/main_mount_rfs.c
@@ -0,0 +1,36 @@
+/*
+ * Shell Command Implmentation
+ *
+ * Author: Fernando RUIZ CASAS
+ * Work: fernando.ruiz@ctv.es
+ * Home: correo@fernando-ruiz.com
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdio.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+
+#include <rtems.h>
+#include <rtems/shell.h>
+#include <rtems/rtems-rfs.h>
+#include <rtems/fsmount.h>
+#include "internal.h"
+
+rtems_shell_filesystems_t rtems_shell_Mount_RFS = {
+ name: "rfs",
+ driver_needed: 1,
+ fs_ops: &rtems_rfs_ops,
+ mounter: rtems_shell_libc_mounter
+};
+
diff --git a/cpukit/libmisc/shell/main_msdosfmt.c b/cpukit/libmisc/shell/main_msdosfmt.c
index 2f0e7f2c63..fc54966da7 100644
--- a/cpukit/libmisc/shell/main_msdosfmt.c
+++ b/cpukit/libmisc/shell/main_msdosfmt.c
@@ -166,10 +166,10 @@ int rtems_shell_main_msdos_format(
#define OPTIONS "[-v label] [-r size] [-t any/12/16/32]"
rtems_shell_cmd_t rtems_shell_MSDOSFMT_Command = {
- "msdosfmt", /* name */
- "msdosfmt " OPTIONS " path # format disk", /* usage */
+ "mkdos", /* name */
+ "mkdos " OPTIONS " path # format disk", /* usage */
"files", /* topic */
rtems_shell_main_msdos_format, /* command */
- NULL, /* alias */
+ "msdosfmt", /* alias */
NULL /* next */
};
diff --git a/cpukit/libmisc/shell/shellconfig.h b/cpukit/libmisc/shell/shellconfig.h
index 3d731aa0ef..35b08f934a 100644
--- a/cpukit/libmisc/shell/shellconfig.h
+++ b/cpukit/libmisc/shell/shellconfig.h
@@ -50,6 +50,7 @@ extern rtems_shell_cmd_t rtems_shell_RMDIR_Command;
extern rtems_shell_cmd_t rtems_shell_CHROOT_Command;
extern rtems_shell_cmd_t rtems_shell_CHMOD_Command;
extern rtems_shell_cmd_t rtems_shell_CAT_Command;
+extern rtems_shell_cmd_t rtems_shell_MKRFS_Command;
extern rtems_shell_cmd_t rtems_shell_MSDOSFMT_Command;
extern rtems_shell_cmd_t rtems_shell_MV_Command;
extern rtems_shell_cmd_t rtems_shell_RM_Command;
@@ -62,6 +63,7 @@ extern rtems_shell_cmd_t rtems_shell_BLKSYNC_Command;
extern rtems_shell_cmd_t rtems_shell_FDISK_Command;
extern rtems_shell_cmd_t rtems_shell_DD_Command;
extern rtems_shell_cmd_t rtems_shell_HEXDUMP_Command;
+extern rtems_shell_cmd_t rtems_shell_DEBUGRFS_Command;
extern rtems_shell_cmd_t rtems_shell_RTC_Command;
@@ -91,6 +93,7 @@ extern rtems_shell_alias_t *rtems_shell_Initial_aliases[];
/*
* Externs for mount command helpers
*/
+extern rtems_shell_filesystems_t rtems_shell_Mount_RFS;
extern rtems_shell_filesystems_t rtems_shell_Mount_MSDOS;
extern rtems_shell_filesystems_t rtems_shell_Mount_TFTP;
extern rtems_shell_filesystems_t rtems_shell_Mount_FTP;
@@ -292,6 +295,11 @@ extern rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[];
&rtems_shell_CAT_Command,
#endif
#if (defined(CONFIGURE_SHELL_COMMANDS_ALL) && \
+ !defined(CONFIGURE_SHELL_NO_COMMAND_MKRFS)) || \
+ defined(CONFIGURE_SHELL_COMMAND_MKRFS)
+ &rtems_shell_MKRFS_Command,
+ #endif
+ #if (defined(CONFIGURE_SHELL_COMMANDS_ALL) && \
!defined(CONFIGURE_SHELL_NO_COMMAND_MSDOSFMT)) || \
defined(CONFIGURE_SHELL_COMMAND_MSDOSFMT)
&rtems_shell_MSDOSFMT_Command,
@@ -351,6 +359,11 @@ extern rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[];
defined(CONFIGURE_SHELL_COMMAND_HEXDUMP)
&rtems_shell_HEXDUMP_Command,
#endif
+ #if (defined(CONFIGURE_SHELL_COMMANDS_ALL) && \
+ !defined(CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS)) || \
+ defined(CONFIGURE_SHELL_COMMAND_DEBUGRFS)
+ &rtems_shell_DEBUGRFS_Command,
+ #endif
/*
* RTEMS Related commands
@@ -381,7 +394,6 @@ extern rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[];
&rtems_shell_WKSPACE_INFO_Command,
#endif
-
/*
* Malloc family commands
*/
@@ -437,6 +449,9 @@ extern rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[];
!defined(CONFIGURE_SHELL_COMMAND_NO_MOUNT)) || \
defined(CONFIGURE_SHELL_COMMAND_MOUNT)
rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[] = {
+ #if defined(CONFIGURE_SHELL_MOUNT_RFS)
+ &rtems_shell_Mount_RFS,
+ #endif
#if defined(CONFIGURE_SHELL_MOUNT_MSDOS)
&rtems_shell_Mount_MSDOS,
#endif