summaryrefslogtreecommitdiffstats
path: root/c/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2001-01-05 13:26:51 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2001-01-05 13:26:51 +0000
commit85d03e28c74c683d8a2c6c3ad049e91c3b561086 (patch)
treeda0683225db8070ce62569fc702cbdab764fd367 /c/src
parent0589f0b74b861b234c5c51541fbe223a4b713c26 (diff)
downloadrtems-85d03e28c74c683d8a2c6c3ad049e91c3b561086.tar.bz2
2001-01-05 Joel Sherrill <joel@OARcorp.com>
* devnull: New addition. Moved from libcpu/sh. * devnull/devnull.c, devnull/devnull.h, devnull/.cvsignore, devnull/Makefile.am: New files. * Makefile.am, configure.in, wrapup/Makefile.am: Modified to reflect addition of above.
Diffstat (limited to 'c/src')
-rw-r--r--c/src/libmisc/ChangeLog8
-rw-r--r--c/src/libmisc/Makefile.am3
-rw-r--r--c/src/libmisc/configure.in1
-rw-r--r--c/src/libmisc/devnull/.cvsignore2
-rw-r--r--c/src/libmisc/devnull/Makefile.am43
-rw-r--r--c/src/libmisc/devnull/devnull.c174
-rw-r--r--c/src/libmisc/devnull/devnull.h71
-rw-r--r--c/src/libmisc/wrapup/Makefile.am3
8 files changed, 303 insertions, 2 deletions
diff --git a/c/src/libmisc/ChangeLog b/c/src/libmisc/ChangeLog
index cad0bda4b1..4abf230261 100644
--- a/c/src/libmisc/ChangeLog
+++ b/c/src/libmisc/ChangeLog
@@ -1,3 +1,11 @@
+2001-01-05 Joel Sherrill <joel@OARcorp.com>
+
+ * devnull: New addition. Moved from libcpu/sh.
+ * devnull/devnull.c, devnull/devnull.h, devnull/.cvsignore,
+ devnull/Makefile.am: New files.
+ * Makefile.am, configure.in, wrapup/Makefile.am: Modified to reflect
+ addition of above.
+
2000-11-30 Joel Sherrill <joel@OARcorp.com>
* mw-fb/mw_uid.c: Removed unnecessary dependency on <bsp.h>.
diff --git a/c/src/libmisc/Makefile.am b/c/src/libmisc/Makefile.am
index ce1c8001f6..0474afc71a 100644
--- a/c/src/libmisc/Makefile.am
+++ b/c/src/libmisc/Makefile.am
@@ -5,7 +5,8 @@
AUTOMAKE_OPTIONS = foreign 1.4
ACLOCAL_AMFLAGS = -I ../../../aclocal
-SUBDIRS = dummy dumpbuf stackchk monitor cpuuse rtmonuse untar mw-fb wrapup
+SUBDIRS = devnull dummy dumpbuf stackchk monitor cpuuse rtmonuse untar \
+ mw-fb wrapup
EXTRA_DIST = README
diff --git a/c/src/libmisc/configure.in b/c/src/libmisc/configure.in
index a93ff32c7a..28628bb222 100644
--- a/c/src/libmisc/configure.in
+++ b/c/src/libmisc/configure.in
@@ -33,6 +33,7 @@ AM_CONDITIONAL(HAS_MP,test "$HAS_MP" = "yes")
AC_OUTPUT(
Makefile
cpuuse/Makefile
+devnull/Makefile
dummy/Makefile
dumpbuf/Makefile
monitor/Makefile
diff --git a/c/src/libmisc/devnull/.cvsignore b/c/src/libmisc/devnull/.cvsignore
new file mode 100644
index 0000000000..282522db03
--- /dev/null
+++ b/c/src/libmisc/devnull/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/c/src/libmisc/devnull/Makefile.am b/c/src/libmisc/devnull/Makefile.am
new file mode 100644
index 0000000000..9154a40725
--- /dev/null
+++ b/c/src/libmisc/devnull/Makefile.am
@@ -0,0 +1,43 @@
+##
+## $Id$
+##
+
+AUTOMAKE_OPTIONS = foreign 1.4
+
+LIBNAME = libdevnull-tmp
+LIB = $(ARCH)/$(LIBNAME).a
+
+
+C_FILES = devnull.c
+C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
+
+H_FILES = devnull.h
+
+OBJS = $(C_O_FILES)
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../../../automake/compile.am
+include $(top_srcdir)/../../../automake/lib.am
+
+$(PROJECT_INCLUDE)/rtems:
+ @$(mkinstalldirs) $@
+$(PROJECT_INCLUDE)/rtems/%.h: %.h
+ $(INSTALL_DATA) $< $@
+
+#
+# (OPTIONAL) Add local stuff here using +=
+#
+
+$(LIB): $(OBJS)
+ $(make-library)
+
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems \
+ $(H_FILES:%=$(PROJECT_INCLUDE)/rtems/%)
+
+all-local: $(ARCH) $(PREINSTALL_FILES) $(OBJS) $(LIB)
+
+.PRECIOUS: $(LIB)
+
+EXTRA_DIST = devnull.c
+
+include $(top_srcdir)/../../../automake/local.am
diff --git a/c/src/libmisc/devnull/devnull.c b/c/src/libmisc/devnull/devnull.c
new file mode 100644
index 0000000000..c569fcb2ba
--- /dev/null
+++ b/c/src/libmisc/devnull/devnull.c
@@ -0,0 +1,174 @@
+/* /dev/null
+ *
+ * Derived from rtems' stub driver.
+ *
+ * Author: Ralf Corsepius (corsepiu@faw.uni-ulm.de)
+ *
+ * COPYRIGHT (c) 1989-2000.
+ * 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.OARcorp.com/rtems/license.html.
+ *
+ * $Id$
+ */
+
+#include <rtems.h>
+#include <rtems/devnull.h>
+#include <rtems/libio.h>
+
+/* null_initialize
+ *
+ * This routine is the null device driver init routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargp - pointer to parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_unsigned32 NULL_major;
+
+rtems_device_driver null_initialize(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ rtems_device_driver status ;
+
+ status = rtems_io_register_name(
+ "/dev/null",
+ major,
+ (rtems_device_minor_number) 0
+ );
+
+ if (status != RTEMS_SUCCESSFUL)
+ rtems_fatal_error_occurred(status);
+
+ NULL_major = major;
+
+ return RTEMS_SUCCESSFUL;
+}
+
+/* null_open
+ *
+ * This routine is the null device driver open routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargb - pointer to open parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_device_driver null_open(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ return NULL_SUCCESSFUL;
+}
+
+
+/* null_close
+ *
+ * This routine is the null device driver close routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargb - pointer to close parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_device_driver null_close(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ return NULL_SUCCESSFUL;
+}
+
+
+/* null_read
+ *
+ * This routine is the null device driver read routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargp - pointer to read parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_device_driver null_read(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ return NULL_SUCCESSFUL;
+}
+
+
+/* null_write
+ *
+ * This routine is the null device driver write routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargp - pointer to write parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_device_driver null_write(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *) pargp ;
+
+ rw_args->bytes_moved = rw_args->count ;
+
+ return NULL_SUCCESSFUL;
+}
+
+
+/* null_control
+ *
+ * This routine is the null device driver control routine.
+ *
+ * Input parameters:
+ * major - device major number
+ * minor - device minor number
+ * pargp - pointer to cntrl parameter block
+ *
+ * Output parameters:
+ * rval - NULL_SUCCESSFUL
+ */
+
+rtems_device_driver null_control(
+ rtems_device_major_number major,
+ rtems_device_minor_number minor,
+ void *pargp
+)
+{
+ return NULL_SUCCESSFUL;
+}
diff --git a/c/src/libmisc/devnull/devnull.h b/c/src/libmisc/devnull/devnull.h
new file mode 100644
index 0000000000..7c0d7f1dcf
--- /dev/null
+++ b/c/src/libmisc/devnull/devnull.h
@@ -0,0 +1,71 @@
+/* devnull.h
+ *
+ * Null device driver, derived from rtems' stub driver.
+ *
+ * Author: Ralf Corsepius (corsepiu@faw.uni-ulm.de)
+ *
+ * COPYRIGHT (c) 1989-2000.
+ * 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.OARcorp.com/rtems/license.html.
+ *
+ * $Id$
+ */
+
+#ifndef __NULL_DRIVER_h
+#define __NULL_DRIVER_h
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define DEVNULL_DRIVER_TABLE_ENTRY \
+ { null_initialize, null_open, null_close, null_read, \
+ null_write, null_control }
+
+#define NULL_SUCCESSFUL RTEMS_SUCCESSFUL
+
+rtems_device_driver null_initialize(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+rtems_device_driver null_open(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+rtems_device_driver null_close(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+rtems_device_driver null_read(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+rtems_device_driver null_write(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+rtems_device_driver null_control(
+ rtems_device_major_number,
+ rtems_device_minor_number,
+ void *
+);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+/* end of include file */
diff --git a/c/src/libmisc/wrapup/Makefile.am b/c/src/libmisc/wrapup/Makefile.am
index b8504d3e3e..50ca35b059 100644
--- a/c/src/libmisc/wrapup/Makefile.am
+++ b/c/src/libmisc/wrapup/Makefile.am
@@ -14,7 +14,8 @@ include $(top_srcdir)/../../../automake/lib.am
TMP_LIBS = ../monitor/$(ARCH)/libmonitor-tmp.a \
../untar/$(ARCH)/libuntar-tmp.a ../stackchk/$(ARCH)/libstackchk-tmp.a \
../cpuuse/$(ARCH)/libcpuuse-tmp.a ../rtmonuse/$(ARCH)/librtmonuse-tmp.a \
- ../dumpbuf/$(ARCH)/libdumpbuf-tmp.a ../mw-fb/$(ARCH)/libmw-fb-tmp.a
+ ../dumpbuf/$(ARCH)/libdumpbuf-tmp.a ../devnull/$(ARCH)/libdevnull-tmp.a \
+ ../mw-fb/$(ARCH)/libmw-fb-tmp.a
$(PROJECT_RELEASE)/lib/$(LIBNAME)$(LIB_VARIANT).a: $(LIB)
$(INSTALL_DATA) $< $@