forked from Imagelibrary/rtems
Remove, moved to cpukit.
This commit is contained in:
@@ -1,15 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
aclocal.m4
|
||||
autom4te.cache
|
||||
config.cache
|
||||
config.guess
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
depcomp
|
||||
install-sh
|
||||
missing
|
||||
mkinstalldirs
|
||||
stamp-h.in
|
||||
@@ -1,295 +0,0 @@
|
||||
2002-07-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* automake/multilib.am: Add install-multi.
|
||||
* aclocal/rtems-top.m4: Reflect new RTEMS_TOPdir to detecting
|
||||
version.m4.
|
||||
Add --with-project-root.
|
||||
Reflect --with-project-root to setting up PROJECT_ROOT.
|
||||
* aclocal/env-rtemscpu.m4: Reflect new RTEMS_TOPdir (HACK).
|
||||
* aclocal/check-cpu.m4: Reflect new RTEMS_TOPdir.
|
||||
* aclocal/check-bsps.m4: Reflect new RTEMS_TOPdir.
|
||||
|
||||
2002-07-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: RTEMS_TOP(..).
|
||||
|
||||
2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/Makefile.am: Install by using cpulibdir, cpulib_DATA.
|
||||
|
||||
2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* aclocal/check-bsp-cache.m4: Remove RTEMS_BSP_FAMILY.
|
||||
|
||||
2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove RTEMS_PROJECT_ROOT.
|
||||
* aclocal/project-root.m4: Remove.
|
||||
|
||||
2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* aclocal/enable-multiprocessing.m4: Fix typo.
|
||||
* aclocal/prog-cc.m4: Remove obsolete comments.
|
||||
Comment out GCCSED.
|
||||
|
||||
2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* aclocal/prog-ccas.m4: New.
|
||||
* aclocal/canonicalize-tools.m4: Remove AS, OBJCOPY, NM, SIZE, STRIP.
|
||||
RTEMS_GCC_PRINT
|
||||
* aclocal/check-multiprocessing.m4: Fix typo.
|
||||
* automake/compile.am: Remove CXX support.
|
||||
Replace AS by CCAS. Remove LINK_LIBS, LINK_OBJS, LINK_FILES.
|
||||
|
||||
2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use AC_CONFIG_AUX_DIR(..).
|
||||
|
||||
2002-06-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove references to RTEMS_BSP.
|
||||
* aclocal/check-multiprocessing.m4: Remove references to RTEMS_BSP.
|
||||
Allow building w/ --enable-multiprocessing --enable-multilib.
|
||||
* aclocal/enable-multiprocessing.m4:
|
||||
Eliminate RTEMS_HAS_MULTIPROCESSING.
|
||||
|
||||
2002-06-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/Makefile.am: Fix stupid typo in previous patch.
|
||||
|
||||
2002-06-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Add librpc. AC_PROG_RANLIB.
|
||||
* wrapup/Makefile.am: Add librpc.
|
||||
Use relative path to lib*.a for
|
||||
POSIX_OBJS, ITRON_OBJS, NETWORKING_OBJS.
|
||||
|
||||
2002-06-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* aclocal/subdirs.m4: Remove.
|
||||
|
||||
2002-06-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/Makefile.am: Use relative path to lib*.a for
|
||||
LIBCSUPPORT_OBJS, LIBBLOCK_OBJS, LIBDOSFS_OBJS, LIBIMFS_OBJS.
|
||||
|
||||
2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
Use aclocal.
|
||||
* sapi/include/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* sapi/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* sapi/inline/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* sapi/macros/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* sapi/src/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/include/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/cpu/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/inline/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/macros/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* score/src/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* wrapup/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* include/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* rtems/include/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* rtems/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* rtems/inline/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* rtems/macros/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
* rtems/src/Makefile.am: Include $(top_srcdir)/automake/*.am.
|
||||
|
||||
2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* aclocal/bsp-alias.m4: Copied over from aclocal/.
|
||||
* aclocal/canonical-host.m4: Ditto.
|
||||
* aclocal/canonical-target-name.m4: Ditto.
|
||||
* aclocal/canonicalize-tools.m4: Ditto.
|
||||
* aclocal/check-bsp-cache.m4: Ditto.
|
||||
* aclocal/check-bsps.m4: Ditto.
|
||||
* aclocal/check-cpu.m4: Ditto.
|
||||
* aclocal/check-itron.m4: Ditto.
|
||||
* aclocal/check-multiprocessing.m4: Ditto.
|
||||
* aclocal/check-networking.m4: Ditto.
|
||||
* aclocal/check-newlib.m4: Ditto.
|
||||
* aclocal/check-posix.m4: Ditto.
|
||||
* aclocal/check-tool.m4: Ditto.
|
||||
* aclocal/enable-bare.m4: Ditto.
|
||||
* aclocal/enable-inlines.m4: Ditto.
|
||||
* aclocal/enable-itron.m4: Ditto.
|
||||
* aclocal/enable-multiprocessing.m4: Ditto.
|
||||
* aclocal/enable-networking.m4: Ditto.
|
||||
* aclocal/enable-posix.m4: Ditto.
|
||||
* aclocal/enable-rtemsbsp.m4: Ditto.
|
||||
* aclocal/env-rtemsbsp.m4: Ditto.
|
||||
* aclocal/env-rtemscpu.m4: Ditto.
|
||||
* aclocal/gcc-pipe.m4: Ditto.
|
||||
* aclocal/gcc-specs.m4: Ditto.
|
||||
* aclocal/multi.m4: Ditto.
|
||||
* aclocal/multilib.m4: Ditto.
|
||||
* aclocal/prog-cc.m4: Ditto.
|
||||
* aclocal/project-root.m4: Ditto.
|
||||
* aclocal/rtems-cpu-subdirs.m4: Ditto.
|
||||
* aclocal/rtems-debug.m4: Ditto.
|
||||
* aclocal/rtems-top.m4: Ditto.
|
||||
* aclocal/subdirs.m4: Ditto.
|
||||
* aclocal/sysv-ipc.m4: Ditto.
|
||||
* aclocal/tool-paths.m4: Ditto.
|
||||
* aclocal/version.m4: Ditto.
|
||||
|
||||
2002-06-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* automake/compile.am: Copied over from automake/.
|
||||
* automake/lib.am: Copied over from automake/.
|
||||
* automake/local.am: Copied over from automake/.
|
||||
* automake/multilib.am: Copied over from automake/.
|
||||
* automake/subdirs.am: Copied over from automake/.
|
||||
* Makefile.am: Add automake/*.am.
|
||||
|
||||
2002-05-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Add libnetworking.
|
||||
* wrapup/Makefile.am: Ditto.
|
||||
|
||||
2002-05-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Add libblock. Add libfs. Add AM_CONDITIONAL(UNIX).
|
||||
* wrapup/Makefile.am: Add libblock, libfs/dosfs, libfs/imfs.
|
||||
|
||||
2002-05-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Add libcsupport.
|
||||
* wrapup/Makefile.am: Ditto.
|
||||
|
||||
2002-05-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Add preinstall-stamp.
|
||||
|
||||
2002-04-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove ENABLE_GCC28.
|
||||
|
||||
2002-04-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/rtems/bspIo.h: Fix cpp-guards, remove references to i386.
|
||||
|
||||
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac:
|
||||
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
|
||||
* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
|
||||
2001-01-17 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* ChangeLog: Deleted duplicate blank line.
|
||||
|
||||
2002-01-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Apply @subdirs. Remove POSIX_SUBDIRS. Remove
|
||||
ITRON_SUBDIRS.
|
||||
* configure.ac: Rework enable_unixlib handling.
|
||||
Add RTEMS_MULTILIBS to cpuopts.h.
|
||||
* include/Makefile.am: Add rtems/fs.h, rtems/userenv.h.
|
||||
Add $(PROJECT_INCLUDE)/rtems. Remove libio_.h.
|
||||
|
||||
2002-01-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/Makefile.am: Add install-hook.
|
||||
Remove SIZE_RTEMS.
|
||||
* include/rtems/fs.h: New, extracted from libio_.h.
|
||||
* include/rtems/userenv.h: New. extracted from libio_.h.
|
||||
|
||||
2002-02-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Readded reference to wrapup.
|
||||
|
||||
2002-01-06 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* wrapup/.cvsignore: Readded.
|
||||
* include/.cvsignore: New file.
|
||||
|
||||
2002-01-04 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* Makefile.am, configure.ac: Remove references to wrapup subdirectory.
|
||||
|
||||
2001-12-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use AS_IF instead of if/then/else.
|
||||
Add AC_DEFINE_UNQUOTED(RTEMS_UNIX) for RTEMS_CPU==unix.
|
||||
Add AC_DEFINE_UNQUOTED(RTEMS_UNIXLIB) for RTEMS_CPU==unix.
|
||||
Add include/Makefile to CONFIG_FILES.
|
||||
Add AC_ENABLE_MULITLIB.
|
||||
Remove wrapup/rtems, wrapup/itron, wrapup/posix.
|
||||
Remove */optman/Makefile from CONFIG_FILES.
|
||||
* Makefile.am: Add include to SUBDIRS.
|
||||
* rtems/Makefile.am: Remove optman from SUBDIRS.
|
||||
* sapi/Makefile.am: Remove optman from SUBDIRS.
|
||||
* include/Makefile.am: New file.
|
||||
* include/rtems/bspIo.h: Relocated from lib/include.
|
||||
* include/rtems/libio_.h: Relocated from lib/include.
|
||||
|
||||
2001-12-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/posix/Makefile.am: Add multilib support.
|
||||
* wrapup/itron/Makefile.am: Add multilib support.
|
||||
* wrapup/rtems/Makefile.am: Add multilib support.
|
||||
* Makefile.am: Add multilib support.
|
||||
|
||||
2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use RTEMS_CPU_SUBDIRS to make autoconf-2.52 happy.
|
||||
|
||||
2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use AC_CONFIG_SUBDIRS for posix and itron.
|
||||
Reflect changes to configuration of rtems, score and sapi subdirs.
|
||||
* Makefile.am: require automake-1.5.
|
||||
|
||||
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
|
||||
* configure.in: Remove.
|
||||
* configure.ac: New file, generated from configure.in by autoupdate.
|
||||
|
||||
2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/rtems/Makefile.am: Fix comments to make automake-1.5 happy.
|
||||
|
||||
2001-04-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.in: Add [-ansi -fasm] to RTEMS_PROG_CC_FOR_TARGET.
|
||||
|
||||
2001-02-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.in: AC_DEFINE RTEMS_UNIX if RTEMS_CPU=unix.
|
||||
|
||||
2000-12-01 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* configure.in: Removed error check for enabling macros with
|
||||
either POSIX or ITRON API.
|
||||
|
||||
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
||||
|
||||
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
||||
|
||||
2000-10-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
|
||||
Switch to GNU canonicalization.
|
||||
|
||||
2000-09-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/rtems/Makefile.am: Use PROJECT_TOPdir in path to size_rtems.
|
||||
|
||||
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* wrapup/itron/Makefile.am, wrapup/posix/Makefile.am,
|
||||
wrapup/rtems/Makefile.am: Include compile.am
|
||||
|
||||
2000-08-10 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* ChangeLog: New file.
|
||||
@@ -1,23 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I aclocal
|
||||
|
||||
include $(top_srcdir)/automake/multilib.am
|
||||
|
||||
SUBDIRS = . include score rtems sapi @subdirs@ wrapup
|
||||
|
||||
noinst_DATA = preinstall-stamp
|
||||
|
||||
preinstall-stamp:
|
||||
$(MAKE) $(AM_MAKEFLAGS) preinstall
|
||||
touch preinstall-stamp
|
||||
DISTCLEANFILES = preinstall-stamp
|
||||
|
||||
AUTOMAKE_FILES = automake/compile.am automake/lib.am automake/local.am \
|
||||
automake/multilib.am automake/subdirs.am
|
||||
EXTRA_DIST = $(AUTOMAKE_FILES)
|
||||
|
||||
include $(top_srcdir)/automake/subdirs.am
|
||||
include $(top_srcdir)/automake/local.am
|
||||
@@ -1,121 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ(2.52)
|
||||
AC_INIT([rtems-c-src-exec],[_RTEMS_VERSION],[rtems-bugs@OARcorp.com])
|
||||
AC_CONFIG_SRCDIR([score])
|
||||
RTEMS_TOP(..)
|
||||
AC_CONFIG_AUX_DIR(..)
|
||||
|
||||
RTEMS_CANONICAL_TARGET_CPU
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENABLE_MULTILIB
|
||||
RTEMS_ENABLE_MULTIPROCESSING
|
||||
RTEMS_ENABLE_POSIX
|
||||
RTEMS_ENABLE_ITRON
|
||||
RTEMS_ENABLE_INLINES
|
||||
RTEMS_ENABLE_RTEMS_DEBUG
|
||||
RTEMS_ENABLE_NETWORKING
|
||||
|
||||
RTEMS_ENV_RTEMSCPU
|
||||
RTEMS_CHECK_RTEMS_DEBUG
|
||||
|
||||
RTEMS_CHECK_CPU
|
||||
RTEMS_CANONICAL_HOST
|
||||
|
||||
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
|
||||
RTEMS_CANONICALIZE_TOOLS
|
||||
AC_PROG_RANLIB
|
||||
|
||||
RTEMS_CHECK_NEWLIB
|
||||
|
||||
RTEMS_CHECK_MULTIPROCESSING
|
||||
RTEMS_CHECK_POSIX_API
|
||||
RTEMS_CHECK_ITRON_API
|
||||
RTEMS_CHECK_NETWORKING
|
||||
|
||||
# If RTEMS macros are enabled, then use them. Otherwise, use inlines.
|
||||
AS_IF([test "$RTEMS_USE_MACROS" = "yes"],
|
||||
[INLINEdir="macros"],
|
||||
[INLINEdir="inline"])
|
||||
|
||||
AM_CONDITIONAL(INLINE,test x"$INLINEdir" = x"inline" )
|
||||
AM_CONDITIONAL(MACROS,test x"$INLINEdir" = x"macros" )
|
||||
AM_CONDITIONAL(HAS_MP,test x"$HAS_MP" = x"yes" )
|
||||
|
||||
AC_SUBST(RTEMS_VERSION)
|
||||
|
||||
AM_CONDITIONAL(HAS_POSIX,test x"$HAS_POSIX_API" = x"yes")
|
||||
AM_CONDITIONAL(HAS_ITRON,test x"$HAS_ITRON_API" = x"yes")
|
||||
AM_CONDITIONAL(HAS_NETWORKING,test x"$HAS_NETWORKING" = x"yes")
|
||||
|
||||
AS_IF([test x"$HAS_POSIX_API" = x"yes"],
|
||||
[AC_CONFIG_SUBDIRS([posix])]
|
||||
)
|
||||
AS_IF([test x"$HAS_ITRON_API" = x"yes"],
|
||||
[AC_CONFIG_SUBDIRS(itron)]
|
||||
)
|
||||
RTEMS_CPU_SUBDIRS([score/cpu])
|
||||
|
||||
AC_CONFIG_SUBDIRS([libcsupport])
|
||||
AC_CONFIG_SUBDIRS([libblock])
|
||||
AC_CONFIG_SUBDIRS([libfs])
|
||||
AS_IF([test x"$HAS_NETWORKING" = x"yes"],
|
||||
[AC_CONFIG_SUBDIRS(libnetworking librpc)])
|
||||
|
||||
RTEMS_DEFINE_POSIX_API
|
||||
RTEMS_DEFINE_ITRON_API
|
||||
RTEMS_DEFINE_MULTIPROCESSING
|
||||
|
||||
# HACK: We should use a feature-based configuration.
|
||||
AS_IF([test x"${RTEMS_CPU}" = x"unix"],[
|
||||
AC_DEFINE_UNQUOTED([RTEMS_UNIX],[1],[to indicate RTEMS unix])
|
||||
# HACK: silently accept --enable-unixlib
|
||||
test -n "${enable_unixlib}" || enable_unixlib="yes"
|
||||
])
|
||||
|
||||
AM_CONDITIONAL(UNIX,[test x"${RTEMS_CPU}" = x"unix"])
|
||||
|
||||
AS_IF([test x"${enable_unixlib}" = x"yes"],
|
||||
[AC_DEFINE_UNQUOTED([RTEMS_UNIXLIB],[1],
|
||||
[to indicate RTEMS using RTEMS's unixlib])]
|
||||
)
|
||||
|
||||
AM_CONFIG_HEADER(score/include/rtems/score/cpuopts-tmp.h)
|
||||
|
||||
AC_ENABLE_MULTILIB([Makefile],[..])
|
||||
|
||||
## HACK: Add a define to cpuopts.h to indicate using multilibs
|
||||
## Can be applied to produce compiler errors if using
|
||||
## multilib-incompatible settings somewhere else (eg. bspopts.h).
|
||||
AS_IF([test x"${enable_multilib}" = x"yes"],[
|
||||
AC_DEFINE_UNQUOTED([RTEMS_MULTILIBS],[1],[using multilib'ed RTEMS])
|
||||
])
|
||||
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
include/Makefile
|
||||
rtems/Makefile
|
||||
rtems/src/Makefile
|
||||
rtems/include/Makefile
|
||||
rtems/inline/Makefile
|
||||
rtems/macros/Makefile
|
||||
sapi/Makefile
|
||||
sapi/src/Makefile
|
||||
sapi/include/Makefile
|
||||
sapi/include/rtems/sptables.h
|
||||
sapi/inline/Makefile
|
||||
sapi/macros/Makefile
|
||||
score/Makefile
|
||||
score/cpu/Makefile
|
||||
score/include/Makefile
|
||||
score/inline/Makefile
|
||||
score/macros/Makefile
|
||||
score/src/Makefile
|
||||
wrapup/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
$(PROJECT_INCLUDE)/%.h: %.h
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
$(PROJECT_INCLUDE):
|
||||
@$(mkinstalldirs) $@
|
||||
|
||||
$(PROJECT_INCLUDE)/rtems:
|
||||
@$(mkinstalldirs) $@
|
||||
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE) \
|
||||
$(include_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
include_rtemsdir = $(includedir)/rtems
|
||||
include_rtems_HEADERS = rtems/bspIo.h rtems/userenv.h rtems/fs.h
|
||||
|
||||
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems \
|
||||
$(include_rtems_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
all-local: $(PREINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/automake/local.am
|
||||
@@ -1,37 +0,0 @@
|
||||
/* bspIo.h
|
||||
*
|
||||
* This include file contains declaration of interface that
|
||||
* will be provided by the file contained in this directory.
|
||||
*
|
||||
* COPYRIGHT (c) 1998 valette@crf.canon.fr
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in found in the file LICENSE in this distribution or at
|
||||
* http://www.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
#ifndef _rtems_bspIo_h
|
||||
#define _rtems_bspIo_h
|
||||
|
||||
/*
|
||||
* All the functions declared as extern after this comment
|
||||
* MUST be implemented in each BSP. Using this function,
|
||||
* this directory contains shared code that export higher level
|
||||
* functionnality described after the next command.
|
||||
*/
|
||||
typedef void (*BSP_output_char_function_type) (char c);
|
||||
typedef char (*BSP_polling_getchar_function_type) (void);
|
||||
|
||||
extern BSP_output_char_function_type BSP_output_char;
|
||||
extern BSP_polling_getchar_function_type BSP_poll_char;
|
||||
|
||||
/*
|
||||
* All the function declared as extern after this comment
|
||||
* are available for each BSP by compiling and linking
|
||||
* the files contained in this directory PROVIDED definition
|
||||
* and initialisation of the previous variable are done.
|
||||
*/
|
||||
extern void printk(char *fmt, ...);
|
||||
|
||||
#endif
|
||||
@@ -1,59 +0,0 @@
|
||||
/*
|
||||
* Some basic filesystem types
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __rtems_fstypes_h
|
||||
#define __rtems_fstypes_h
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* File descriptor Table Information
|
||||
*/
|
||||
|
||||
/* Forward declarations */
|
||||
|
||||
/* FIXME: shouldn't this better not be here? */
|
||||
typedef struct rtems_libio_tt rtems_libio_t;
|
||||
|
||||
typedef struct rtems_filesystem_location_info_tt
|
||||
rtems_filesystem_location_info_t;
|
||||
|
||||
struct rtems_filesystem_mount_table_entry_tt;
|
||||
typedef struct rtems_filesystem_mount_table_entry_tt
|
||||
rtems_filesystem_mount_table_entry_t;
|
||||
|
||||
typedef struct _rtems_filesystem_file_handlers_r
|
||||
rtems_filesystem_file_handlers_r;
|
||||
typedef struct _rtems_filesystem_operations_table
|
||||
rtems_filesystem_operations_table;
|
||||
|
||||
/*
|
||||
* Structure used to determine a location/filesystem in the tree.
|
||||
*/
|
||||
|
||||
struct rtems_filesystem_location_info_tt
|
||||
{
|
||||
void *node_access;
|
||||
rtems_filesystem_file_handlers_r *handlers;
|
||||
rtems_filesystem_operations_table *ops;
|
||||
rtems_filesystem_mount_table_entry_t *mt_entry;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,310 +0,0 @@
|
||||
/*
|
||||
* Libio Internal Information
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_LIBIO_INTERNAL__h
|
||||
#define __RTEMS_LIBIO_INTERNAL__h
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems.h>
|
||||
#include <rtems/libio.h> /* include before standard IO */
|
||||
#include <rtems/assoc.h> /* assoc.h not included by rtems.h */
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <stdio.h> /* O_RDONLY, et.al. */
|
||||
#include <fcntl.h> /* O_RDONLY, et.al. */
|
||||
#include <assert.h>
|
||||
#include <stdarg.h>
|
||||
#include <limits.h>
|
||||
#include <errno.h>
|
||||
|
||||
#if ! defined(O_NDELAY)
|
||||
# if defined(solaris2)
|
||||
# define O_NDELAY O_NONBLOCK
|
||||
# elif defined(RTEMS_NEWLIB)
|
||||
# define O_NDELAY _FNBIO
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if !defined(ENOTSUP)
|
||||
#define ENOTSUP EOPNOTSUPP
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
#include <string.h> /* strcmp */
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h> /* calloc() */
|
||||
|
||||
/*
|
||||
* Semaphore to protect the io table
|
||||
*/
|
||||
|
||||
#define RTEMS_LIBIO_SEM rtems_build_name('L', 'B', 'I', 'O')
|
||||
#define RTEMS_LIBIO_IOP_SEM(n) rtems_build_name('L', 'B', 'I', n)
|
||||
|
||||
extern rtems_id rtems_libio_semaphore;
|
||||
extern rtems_filesystem_file_handlers_r rtems_filesystem_null_handlers;
|
||||
|
||||
/*
|
||||
* File descriptor Table Information
|
||||
*/
|
||||
|
||||
extern unsigned32 rtems_libio_number_iops;
|
||||
extern rtems_libio_t *rtems_libio_iops;
|
||||
extern rtems_libio_t *rtems_libio_last_iop;
|
||||
extern rtems_libio_t *rtems_libio_iop_freelist;
|
||||
|
||||
/*
|
||||
* set_errno_and_return_minus_one
|
||||
*
|
||||
* Macro to ease common way to return an error.
|
||||
*/
|
||||
|
||||
#ifndef set_errno_and_return_minus_one
|
||||
#define set_errno_and_return_minus_one( _error ) \
|
||||
do { errno = (_error); return -1; } while(0)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* rtems_libio_iop
|
||||
*
|
||||
* Macro to return the file descriptor pointer.
|
||||
*/
|
||||
|
||||
#define rtems_libio_iop(_fd) \
|
||||
((((unsigned32)(_fd)) < rtems_libio_number_iops) ? \
|
||||
&rtems_libio_iops[_fd] : 0)
|
||||
|
||||
/*
|
||||
* rtems_libio_check_is_open
|
||||
*
|
||||
* Macro to check if a file descriptor is actually open.
|
||||
*/
|
||||
|
||||
#define rtems_libio_check_is_open(_iop) \
|
||||
do { \
|
||||
if (((_iop)->flags & LIBIO_FLAGS_OPEN) == 0) { \
|
||||
errno = EBADF; \
|
||||
return -1; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_libio_check_fd
|
||||
*
|
||||
* Macro to check if a file descriptor number is valid.
|
||||
*/
|
||||
|
||||
#define rtems_libio_check_fd(_fd) \
|
||||
do { \
|
||||
if ((unsigned32) (_fd) >= rtems_libio_number_iops) { \
|
||||
errno = EBADF; \
|
||||
return -1; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_libio_check_buffer
|
||||
*
|
||||
* Macro to check if a buffer pointer is valid.
|
||||
*/
|
||||
|
||||
#define rtems_libio_check_buffer(_buffer) \
|
||||
do { \
|
||||
if ((_buffer) == 0) { \
|
||||
errno = EINVAL; \
|
||||
return -1; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_libio_check_count
|
||||
*
|
||||
* Macro to check if a count or length is valid.
|
||||
*/
|
||||
|
||||
#define rtems_libio_check_count(_count) \
|
||||
do { \
|
||||
if ((_count) == 0) { \
|
||||
return 0; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_libio_check_permissions
|
||||
*
|
||||
* Macro to check if a file descriptor is open for this operation.
|
||||
*/
|
||||
|
||||
#define rtems_libio_check_permissions(_iop, _flag) \
|
||||
do { \
|
||||
if (((_iop)->flags & (_flag)) == 0) { \
|
||||
set_errno_and_return_minus_one( EINVAL ); \
|
||||
return -1; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_filesystem_freenode
|
||||
*
|
||||
* Macro to free a node.
|
||||
*/
|
||||
|
||||
#define rtems_filesystem_freenode( _node ) \
|
||||
do { \
|
||||
if ( (_node)->ops )\
|
||||
if ( (_node)->ops->freenod_h ) \
|
||||
(*(_node)->ops->freenod_h)( (_node) ); \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* rtems_filesystem_is_separator
|
||||
*
|
||||
* Macro to determine if a character is a path name separator.
|
||||
*
|
||||
* NOTE: This macro handles MS-DOS and UNIX style names.
|
||||
*/
|
||||
|
||||
#define rtems_filesystem_is_separator( _ch ) \
|
||||
( ((_ch) == '/') || ((_ch) == '\\') || ((_ch) == '\0'))
|
||||
|
||||
/*
|
||||
* rtems_filesystem_get_start_loc
|
||||
*
|
||||
* Macro to determine if path is absolute or relative.
|
||||
*/
|
||||
|
||||
#define rtems_filesystem_get_start_loc( _path, _index, _loc ) \
|
||||
do { \
|
||||
if ( rtems_filesystem_is_separator( (_path)[ 0 ] ) ) { \
|
||||
*(_loc) = rtems_filesystem_root; \
|
||||
*(_index) = 1; \
|
||||
} else { \
|
||||
*(_loc) = rtems_filesystem_current; \
|
||||
*(_index) = 0; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define rtems_filesystem_get_sym_start_loc( _path, _index, _loc ) \
|
||||
do { \
|
||||
if ( rtems_filesystem_is_separator( (_path)[ 0 ] ) ) { \
|
||||
*(_loc) = rtems_filesystem_root; \
|
||||
*(_index) = 1; \
|
||||
} else { \
|
||||
*(_index) = 0; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
||||
/*
|
||||
* External structures
|
||||
*/
|
||||
#if !defined(LOGIN_NAME_MAX)
|
||||
#if defined(__linux__)
|
||||
#define LOGIN_NAME_MAX _POSIX_LOGIN_NAME_MAX
|
||||
#else
|
||||
#error "don't know how to set LOGIN_NAME_MAX"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
rtems_id task_id;
|
||||
rtems_filesystem_location_info_t current_directory;
|
||||
rtems_filesystem_location_info_t root_directory;
|
||||
/* Default mode for all files. */
|
||||
mode_t umask;
|
||||
nlink_t link_counts;
|
||||
/* _POSIX_types */
|
||||
uid_t uid;
|
||||
gid_t gid;
|
||||
uid_t euid;
|
||||
gid_t egid;
|
||||
char login_buffer[LOGIN_NAME_MAX];
|
||||
|
||||
pid_t pgrp; /* process group id */
|
||||
} rtems_user_env_t;
|
||||
|
||||
extern rtems_user_env_t * rtems_current_user_env;
|
||||
extern rtems_user_env_t rtems_global_user_env;
|
||||
|
||||
#define rtems_filesystem_current (rtems_current_user_env->current_directory)
|
||||
#define rtems_filesystem_root (rtems_current_user_env->root_directory)
|
||||
#define rtems_filesystem_link_counts (rtems_current_user_env->link_counts)
|
||||
#define rtems_filesystem_umask (rtems_current_user_env->umask)
|
||||
|
||||
#define _POSIX_types_Uid (rtems_current_user_env->uid)
|
||||
#define _POSIX_types_Gid (rtems_current_user_env->gid)
|
||||
#define _POSIX_types_Euid (rtems_current_user_env->euid)
|
||||
#define _POSIX_types_Egid (rtems_current_user_env->egid)
|
||||
#define _POSIX_types_Getlogin_buffer (rtems_current_user_env->login_buffer)
|
||||
|
||||
|
||||
/*
|
||||
* Instantiate a private copy of the per user information for the calling task.
|
||||
*/
|
||||
|
||||
rtems_status_code rtems_libio_set_private_env(void);
|
||||
rtems_status_code rtems_libio_share_private_env(rtems_id task_id) ;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* File Descriptor Routine Prototypes
|
||||
*/
|
||||
|
||||
rtems_libio_t *rtems_libio_allocate(void);
|
||||
|
||||
unsigned32 rtems_libio_fcntl_flags(
|
||||
unsigned32 fcntl_flags
|
||||
);
|
||||
|
||||
unsigned32 rtems_libio_to_fcntl_flags(
|
||||
unsigned32 flags
|
||||
);
|
||||
|
||||
void rtems_libio_free(
|
||||
rtems_libio_t *iop
|
||||
);
|
||||
|
||||
int rtems_libio_is_open_files_in_fs(
|
||||
rtems_filesystem_mount_table_entry_t *mt_entry
|
||||
);
|
||||
|
||||
int rtems_libio_is_file_open(
|
||||
void *node_access
|
||||
);
|
||||
|
||||
/*
|
||||
* File System Routine Prototypes
|
||||
*/
|
||||
|
||||
int rtems_filesystem_evaluate_path(
|
||||
const char *pathname,
|
||||
int flags,
|
||||
rtems_filesystem_location_info_t *pathloc,
|
||||
int follow_link
|
||||
);
|
||||
|
||||
void rtems_filesystem_initialize();
|
||||
|
||||
int init_fs_mount_table();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,79 +0,0 @@
|
||||
/*
|
||||
* Libio Internal Information
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __rtems_userenv_h
|
||||
#define __rtems_userenv_h
|
||||
|
||||
#include <rtems.h>
|
||||
#include <rtems/fs.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* External structures
|
||||
*/
|
||||
#if !defined(LOGIN_NAME_MAX)
|
||||
#if defined(__linux__)
|
||||
#define LOGIN_NAME_MAX _POSIX_LOGIN_NAME_MAX
|
||||
#else
|
||||
#error "don't know how to set LOGIN_NAME_MAX"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
rtems_id task_id;
|
||||
rtems_filesystem_location_info_t current_directory;
|
||||
rtems_filesystem_location_info_t root_directory;
|
||||
/* Default mode for all files. */
|
||||
mode_t umask;
|
||||
nlink_t link_counts;
|
||||
/* _POSIX_types */
|
||||
uid_t uid;
|
||||
gid_t gid;
|
||||
uid_t euid;
|
||||
gid_t egid;
|
||||
char login_buffer[LOGIN_NAME_MAX];
|
||||
|
||||
pid_t pgrp; /* process group id */
|
||||
} rtems_user_env_t;
|
||||
|
||||
extern rtems_user_env_t * rtems_current_user_env;
|
||||
extern rtems_user_env_t rtems_global_user_env;
|
||||
|
||||
#define rtems_filesystem_current (rtems_current_user_env->current_directory)
|
||||
#define rtems_filesystem_root (rtems_current_user_env->root_directory)
|
||||
#define rtems_filesystem_link_counts (rtems_current_user_env->link_counts)
|
||||
#define rtems_filesystem_umask (rtems_current_user_env->umask)
|
||||
|
||||
#define _POSIX_types_Uid (rtems_current_user_env->uid)
|
||||
#define _POSIX_types_Gid (rtems_current_user_env->gid)
|
||||
#define _POSIX_types_Euid (rtems_current_user_env->euid)
|
||||
#define _POSIX_types_Egid (rtems_current_user_env->egid)
|
||||
#define _POSIX_types_Getlogin_buffer (rtems_current_user_env->login_buffer)
|
||||
|
||||
|
||||
/*
|
||||
* Instantiate a private copy of the per user information for the calling task.
|
||||
*/
|
||||
|
||||
rtems_status_code rtems_libio_set_private_env(void);
|
||||
rtems_status_code rtems_libio_share_private_env(rtems_id task_id) ;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,14 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
aclocal.m4
|
||||
autom4te.cache
|
||||
config.cache
|
||||
config.guess
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
depcomp
|
||||
install-sh
|
||||
missing
|
||||
mkinstalldirs
|
||||
@@ -1,167 +0,0 @@
|
||||
2002-07-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: RTEMS_TOP(../..).
|
||||
|
||||
2002-07-01 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* Mega patch merge to change the format of the object IDs to
|
||||
loosen the dependency between the SCORE and the various APIs.
|
||||
There was considerable work to simplify the object name management
|
||||
and it appears that the name_table field is no longer needed.
|
||||
This patch also includes the addition of the internal mutex
|
||||
which is currently only used to protect some types of allocation
|
||||
and deallocation. This significantly can reduce context
|
||||
switch latency under certain circumstances. In particular,
|
||||
some heap/region operations were O(n) and had dispatching
|
||||
disabled. This should help enormously. With this merge,
|
||||
the patch is not as clean as it should be. In particular,
|
||||
the documentation has not been modified to reflect the new object
|
||||
ID layout, the IDs in the test screens are not updated, and
|
||||
_Objects_Get_information needs to be a real routine not inlined.
|
||||
As part of this patch a lot of MP code for thread/proxy blocking
|
||||
was made conditional and cleaned up.
|
||||
* src/cre_mbf.c, src/cre_sem.c, src/eventflags.c, src/fmempool.c,
|
||||
src/itronsem.c, src/mbox.c, src/msgbuffer.c, src/port.c, src/task.c,
|
||||
src/vmempool.c: Modified as part of above.
|
||||
2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove RTEMS_PROJECT_ROOT.
|
||||
|
||||
2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use AC_CONFIG_AUX_DIR(../..).
|
||||
Add AC_PROG_RANLIB.
|
||||
|
||||
2002-06-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove references to RTEMS_BSP.
|
||||
* src/Makefile.am: Add libitron.a.
|
||||
|
||||
2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/Makefile.am: Include $(top_srcdir)/../automake/*.am.
|
||||
* Makefile.am: Include $(top_srcdir)/../automake/*.am.
|
||||
Use ../aclocal.
|
||||
* inline/Makefile.am: Include $(top_srcdir)/../automake/*.am.
|
||||
* macros/Makefile.am: Include $(top_srcdir)/../automake/*.am.
|
||||
* src/Makefile.am: Include $(top_srcdir)/../automake/*.am.
|
||||
|
||||
2001-04-22 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* src/task.c (_ITRON_Task_User_extensions): Add new fields to
|
||||
be correct in respect to newly added fields for separate switch list.
|
||||
|
||||
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac:
|
||||
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
|
||||
* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* inline/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* macros/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
* src/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
|
||||
2001-12-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* src/Makefile.am: Add multilib support.
|
||||
|
||||
2001-11-07 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
Discovered while fixing PR36 reported by Todor.Todorov@barco.com.
|
||||
* include/rtems/itron/object.h: Corrected _ITRON_Objects_Get()
|
||||
to use _Objects_Get_by_index().
|
||||
|
||||
2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/itronsys/Makefile.am: Remove.
|
||||
* include/rtems/Makefile.am: Remove.
|
||||
* include/rtems/itron/Makefile.am: Remove.
|
||||
* inline/rtems/Makefile.am: Remove.
|
||||
* inline/rtems/itron/Makefile.am: Remove.
|
||||
* macros/rtems/Makefile.am: Remove.
|
||||
* macros/rtems/itron/Makefile.am: Remove.
|
||||
* include/Makefile.am: handle subdirs.
|
||||
* inline/Makefile.am: handle subdirs.
|
||||
* macros/Makefile.am: handle subdirs.
|
||||
* configure.ac: Reflect changes above.
|
||||
|
||||
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
|
||||
* configure.in: Remove.
|
||||
* configure.ac: New file, generated from configure.in by autoupdate.
|
||||
|
||||
2001-09-23 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/itronsys/Makefile.am: Use 'PREINSTALL_FILES ='.
|
||||
* include/rtems/itron/Makefile.am: Use 'PREINSTALL_FILES ='.
|
||||
* include/Makefile.am: Use 'PREINSTALL_FILES ='.
|
||||
* inline/rtems/itron/Makefile.am: Use 'PREINSTALL_FILES ='.
|
||||
* macros/rtems/itron/Makefile.am: Use 'PREINSTALL_FILES ='.
|
||||
|
||||
2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* src/Makefile.am: Revamp INCLUDES handling to make automake-1.5
|
||||
happy.
|
||||
|
||||
2001-08-09 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* src/snd_mbx.c, src/tsnd_mbf.c: Unblocking message queue operations
|
||||
should NOT use _Thread_Executing for return status since it is
|
||||
permissible to invoke message send operations from an ISR. This was
|
||||
reported by Suvrat Gupta <suvrat@utstar.com>.
|
||||
|
||||
2001-04-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.in: Add [-ansi -fasm] to RTEMS_PROG_CC_FOR_TARGET.
|
||||
|
||||
2001-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* include/Makefile.am, include/itronsys/Makefile.am,
|
||||
include/rtems/itron/Makefile.am, inline/rtems/itron/Makefile.am,
|
||||
macros/rtems/itron/Makefile.am:
|
||||
Apply include_*HEADERS instead of H_FILES.
|
||||
|
||||
2001-01-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.in: Add src/config.h
|
||||
* src/Makefile.am: Add INCLUDES += -I. to pickup config.h
|
||||
* src/.cvsignore: Add config.h and stamp-h
|
||||
* src/*.c: Add config.h support.
|
||||
|
||||
2000-12-01 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* Added macro support to ITRON API. This is known to compile.
|
||||
* Makefile.am: Added macros directory.
|
||||
* configure.in: Removed error check for enabling macros.
|
||||
* macros/.cvsignore, macros/Makefile.am,
|
||||
macros/rtems/.cvsignore, macros/rtems/Makefile.am,
|
||||
macros/rtems/itron/.cvsignore, macros/rtems/itron/Makefile.am,
|
||||
macros/rtems/itron/eventflags.inl, macros/rtems/itron/fmempool.inl,
|
||||
macros/rtems/itron/intr.inl, macros/rtems/itron/mbox.inl,
|
||||
macros/rtems/itron/msgbuffer.inl, macros/rtems/itron/network.inl,
|
||||
macros/rtems/itron/port.inl, macros/rtems/itron/semaphore.inl,
|
||||
macros/rtems/itron/sysmgmt.inl, macros/rtems/itron/task.inl,
|
||||
macros/rtems/itron/time.inl, macros/rtems/itron/vmempool.inl: New files.
|
||||
|
||||
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
||||
|
||||
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
||||
|
||||
2000-10-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
|
||||
Switch to GNU canonicalization.
|
||||
|
||||
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* src/Makefile.am: Include compile.am.
|
||||
|
||||
2000-08-10 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* ChangeLog: New file.
|
||||
@@ -1,10 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I ../aclocal
|
||||
|
||||
SUBDIRS = include inline macros src
|
||||
|
||||
include $(top_srcdir)/../automake/subdirs.am
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,55 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ(2.52)
|
||||
AC_INIT([rtems-c-src-exec-itron],[_RTEMS_VERSION],[rtems-bugs@OARcorp.com])
|
||||
AC_CONFIG_SRCDIR([include/itronsys])
|
||||
RTEMS_TOP(../..)
|
||||
AC_CONFIG_AUX_DIR(../..)
|
||||
|
||||
RTEMS_CANONICAL_TARGET_CPU
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENABLE_ITRON
|
||||
RTEMS_ENABLE_INLINES
|
||||
|
||||
RTEMS_ENV_RTEMSCPU
|
||||
|
||||
RTEMS_CHECK_CPU
|
||||
RTEMS_CANONICAL_HOST
|
||||
|
||||
RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
|
||||
RTEMS_CANONICALIZE_TOOLS
|
||||
AC_PROG_RANLIB
|
||||
|
||||
RTEMS_CHECK_ITRON_API
|
||||
|
||||
# If RTEMS macros are enabled, then use them. Otherwise, use inlines.
|
||||
if test "$RTEMS_USE_MACROS" = "yes"; then
|
||||
INLINEdir="macros"
|
||||
else
|
||||
INLINEdir="inline"
|
||||
fi
|
||||
AM_CONDITIONAL(INLINE,test "$INLINEdir" = "inline" )
|
||||
AM_CONDITIONAL(MACROS,test "$INLINEdir" = "macros" )
|
||||
|
||||
## Needed when using automake for libs/rels
|
||||
RTEMS_CHECK_NEWLIB
|
||||
|
||||
AM_CONFIG_HEADER(src/config.h)
|
||||
|
||||
##
|
||||
## FIXME: We configure and build the macros subdirectory, too.
|
||||
## Should probably use AM_CONDITIONALs to disable them in future
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
src/Makefile
|
||||
include/Makefile
|
||||
inline/Makefile
|
||||
macros/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,55 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
$(PROJECT_INCLUDE):
|
||||
@$(mkinstalldirs) $@
|
||||
$(PROJECT_INCLUDE)/itronsys:
|
||||
@$(mkinstalldirs) $@
|
||||
$(PROJECT_INCLUDE)/rtems/itron:
|
||||
@$(mkinstalldirs) $@
|
||||
|
||||
$(PROJECT_INCLUDE)/%: %
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
## include
|
||||
|
||||
include_HEADERS = itron.h
|
||||
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE) \
|
||||
$(include_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
## itronsys
|
||||
|
||||
include_itronsysdir = $(includedir)/itronsys
|
||||
|
||||
include_itronsys_HEADERS = itronsys/eventflags.h itronsys/fmempool.h \
|
||||
itronsys/intr.h itronsys/mbox.h itronsys/msgbuffer.h itronsys/network.h \
|
||||
itronsys/port.h itronsys/semaphore.h itronsys/status.h itronsys/sysmgmt.h \
|
||||
itronsys/task.h itronsys/time.h itronsys/types.h itronsys/vmempool.h
|
||||
|
||||
PREINSTALL_FILES += $(PROJECT_INCLUDE)/itronsys \
|
||||
$(include_itronsys_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
EXTRA_DIST = itronsys/README
|
||||
|
||||
## rtems/itron
|
||||
include_rtems_itrondir = $(includedir)/rtems/itron
|
||||
|
||||
include_rtems_itron_HEADERS = rtems/itron/config.h rtems/itron/eventflags.h \
|
||||
rtems/itron/fmempool.h rtems/itron/intr.h rtems/itron/itronapi.h \
|
||||
rtems/itron/mbox.h rtems/itron/msgbuffer.h rtems/itron/network.h \
|
||||
rtems/itron/object.h rtems/itron/port.h rtems/itron/semaphore.h \
|
||||
rtems/itron/sysmgmt.h rtems/itron/task.h rtems/itron/time.h \
|
||||
rtems/itron/vmempool.h
|
||||
|
||||
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/itron \
|
||||
$(include_rtems_itron_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
EXTRA_DIST += rtems/itron/README
|
||||
|
||||
## General
|
||||
all-local: $(PREINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,52 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_h_
|
||||
#define __ITRON_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Include the basic requirements
|
||||
*/
|
||||
|
||||
#include <rtems/system.h> /* basic RTEMS types defined by */
|
||||
/* each port */
|
||||
#include <itronsys/types.h> /* define all the TRON types */
|
||||
/* in terms of the RTEMS base types */
|
||||
#include <itronsys/status.h> /* define all ITRON status codes */
|
||||
|
||||
/*
|
||||
* Now include the per manager include files
|
||||
*/
|
||||
|
||||
#include <itronsys/eventflags.h>
|
||||
#include <itronsys/fmempool.h>
|
||||
#include <itronsys/intr.h>
|
||||
#include <itronsys/mbox.h>
|
||||
#include <itronsys/msgbuffer.h>
|
||||
#include <itronsys/sysmgmt.h> /* network depends on this file */
|
||||
#include <itronsys/network.h>
|
||||
#include <itronsys/port.h>
|
||||
#include <itronsys/semaphore.h>
|
||||
#include <itronsys/task.h>
|
||||
#include <itronsys/time.h>
|
||||
#include <itronsys/vmempool.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,9 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
This directory contains the public interface of each manager.
|
||||
Each file in this directory is included from <itron.h>.
|
||||
|
||||
The private header file for each ITRON manager is in
|
||||
../rtems/itron.
|
||||
@@ -1,146 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_EVENTFLAGS_h_
|
||||
#define __ITRON_EVENTFLAGS_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Eventflags (cre_flg) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_cflg {
|
||||
VP exinf; /* extended information */
|
||||
ATR flgatr; /* eventflag attribute */
|
||||
UINT iflgptn; /* initial eventflag */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CFLG;
|
||||
|
||||
/*
|
||||
* flgatr
|
||||
*/
|
||||
|
||||
#define TA_WSGL 0x00 /* multiple tasks are not allowed to wait (Wait
|
||||
Single Task) */
|
||||
#define TA_WMUL 0x08 /* multiple tasks are allowed to wait (Wait
|
||||
Multiple Task) */
|
||||
|
||||
/*
|
||||
* wfmode
|
||||
*/
|
||||
|
||||
#define TWF_ANDW 0x00 /* AND wait */
|
||||
#define TWF_ORW 0x02 /* OR wait */
|
||||
#define TWF_CLR 0x01 /* clear specification */
|
||||
|
||||
/*
|
||||
* Reference Eventflags (ref_flg) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rflg {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there is a waiting task */
|
||||
UINT flgptn; /* eventflag bit pattern */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RFLG;
|
||||
|
||||
/*
|
||||
* Eventflag Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_flg - Create Eventflag
|
||||
*/
|
||||
|
||||
ER cre_flg(
|
||||
ID flgid,
|
||||
T_CFLG *pk_cflg
|
||||
);
|
||||
|
||||
/*
|
||||
* del_flg - Delete Eventflag
|
||||
*/
|
||||
|
||||
ER del_flg(
|
||||
ID flgid
|
||||
);
|
||||
|
||||
/*
|
||||
* set_flg - Set Eventflag
|
||||
*/
|
||||
|
||||
ER set_flg(
|
||||
ID flgid,
|
||||
UINT setptn
|
||||
);
|
||||
|
||||
/*
|
||||
* clr_flg - Clear Eventflag
|
||||
*/
|
||||
|
||||
ER clr_flg(
|
||||
ID flgid,
|
||||
UINT clrptn
|
||||
);
|
||||
|
||||
/*
|
||||
* wai_flg - Wait on Eventflag
|
||||
*/
|
||||
|
||||
ER wai_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode
|
||||
);
|
||||
|
||||
/*
|
||||
* pol_flg - Wait for Eventflag(Polling)
|
||||
*/
|
||||
|
||||
ER pol_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode
|
||||
);
|
||||
|
||||
/*
|
||||
* twai_flg - Wait on Eventflag with Timeout
|
||||
*/
|
||||
|
||||
ER twai_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_flg - Reference Eventflag Status
|
||||
*/
|
||||
|
||||
ER ref_flg(
|
||||
T_RFLG *pk_rflg,
|
||||
ID flgid
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,125 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_FIXED_MEMORYPOOL_h_
|
||||
#define __ITRON_FIXED_MEMORYPOOL_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Fixed Memory Pool (cre_mpf) Structure
|
||||
*/
|
||||
|
||||
/* cre_mpf */
|
||||
typedef struct t_cmpf {
|
||||
VP exinf; /* extended information */
|
||||
ATR mpfatr; /* memorypool attributes */
|
||||
INT mpfcnt; /* block count for entire memorypool */
|
||||
INT blfsz; /* fixed-size memory block size */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CMPF;
|
||||
|
||||
/*
|
||||
* mpfatr
|
||||
*/
|
||||
|
||||
#define TA_TFIFO 0x00 /* waiting tasks are handled by FIFO */
|
||||
#define TA_TPRI 0x01 /* waiting tasks are handled by priority */
|
||||
|
||||
|
||||
/*
|
||||
* Reference Fixed Memory Pool (ref_mpf) Structure
|
||||
*/
|
||||
|
||||
/* ref_mpf */
|
||||
typedef struct t_rmpf {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there are waiting tasks */
|
||||
INT frbcnt; /* free block count */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RMPF;
|
||||
|
||||
/*
|
||||
* Fixed Memory Pool Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_mpf - Create Fixed-Size Memorypool
|
||||
*/
|
||||
|
||||
ER cre_mpf(
|
||||
ID mpfid,
|
||||
T_CMPF *pk_cmpf
|
||||
);
|
||||
|
||||
/*
|
||||
* del_mpf - Delete Fixed-Size Memorypool
|
||||
*/
|
||||
|
||||
ER del_mpf(
|
||||
ID mpfid
|
||||
);
|
||||
|
||||
/*
|
||||
* get_blf - Get Fixed-Size Memory Block
|
||||
*/
|
||||
|
||||
ER get_blf(
|
||||
VP *p_blf,
|
||||
ID mpfid
|
||||
);
|
||||
|
||||
/*
|
||||
* pget_blf - Poll and Get Fixed-Size Memory Block
|
||||
*/
|
||||
|
||||
ER pget_blf(
|
||||
VP *p_blf,
|
||||
ID mpfid
|
||||
);
|
||||
|
||||
/*
|
||||
* tget_blf - Get Fixed-Size Memory Block with Timeout
|
||||
*/
|
||||
|
||||
ER tget_blf(
|
||||
VP *p_blf,
|
||||
ID mpfid,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* rel_blf - Release Fixed-Size Memory Block
|
||||
*/
|
||||
|
||||
ER rel_blf(
|
||||
ID mpfid,
|
||||
VP blf
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_mpf - Reference Fixed-Size Memorypool Status
|
||||
*/
|
||||
|
||||
ER ref_mpf(
|
||||
T_RMPF *pk_rmpf,
|
||||
ID mpfid
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,106 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_INTERRUPT_h_
|
||||
#define __ITRON_INTERRUPT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Define Interrupt (def_int) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_dint {
|
||||
ATR intatr; /* interrupt handler attributes */
|
||||
FP inthdr; /* interrupt handler address */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_DINT;
|
||||
|
||||
/*
|
||||
* Interrupt Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* def_int - Define Interrupt Handler
|
||||
*/
|
||||
|
||||
ER def_int(
|
||||
UINT dintno,
|
||||
T_DINT *pk_dint
|
||||
);
|
||||
|
||||
/*
|
||||
* ret_int - Return from Interrupt Handler
|
||||
*/
|
||||
|
||||
void ret_int( void );
|
||||
|
||||
/*
|
||||
* ret_wup - Return and Wakeup Task
|
||||
*/
|
||||
|
||||
void ret_wup(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* loc_cpu - Lock CPU
|
||||
*/
|
||||
|
||||
ER loc_cpu( void );
|
||||
|
||||
/*
|
||||
* unl_cpu - Unlock CPU
|
||||
*/
|
||||
|
||||
ER unl_cpu( void );
|
||||
|
||||
/*
|
||||
* dis_int - Disable Interrupt
|
||||
*/
|
||||
|
||||
ER dis_int(
|
||||
UINT eintno
|
||||
);
|
||||
|
||||
/*
|
||||
* ena_int - Enable Interrupt
|
||||
*/
|
||||
|
||||
ER ena_int(
|
||||
UINT eintno
|
||||
);
|
||||
|
||||
/*
|
||||
* chg_iXX - Change Interrupt Mask(Level or Priority)
|
||||
*/
|
||||
|
||||
ER chg_iXX(
|
||||
UINT iXXXX
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_iXX - Reference Interrupt Mask(Level or Priority)
|
||||
*/
|
||||
|
||||
ER ref_iXX(
|
||||
UINT *p_iXXXX
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,138 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MBOX_h_
|
||||
#define __ITRON_MBOX_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Mailbox (cre_mbx) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_cmbx {
|
||||
VP exinf; /* extended information */
|
||||
ATR mbxatr; /* mailbox attributes */
|
||||
/* Following is implementation-dependent function */
|
||||
INT bufcnt; /* maximum number of messages to let pend */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CMBX;
|
||||
|
||||
/*
|
||||
* mbxatr
|
||||
*/
|
||||
|
||||
#define TA_TFIFO 0x00 /* waiting tasks are handled by FIFO */
|
||||
#define TA_TPRI 0x01 /* waiting tasks are handled by priority */
|
||||
#define TA_MFIFO 0x00 /* messages are handled by FIFO */
|
||||
#define TA_MPRI 0x02 /* messages are handled by priority */
|
||||
|
||||
typedef struct t_msg {
|
||||
/*
|
||||
* A region (header) reserved by the OS may be included first
|
||||
* depending on the implementation.
|
||||
*
|
||||
* NOTE: The first two fields are RTEMS specific.
|
||||
*/
|
||||
|
||||
INT msgpri; /* priority of each message */
|
||||
/* VB msgcont[]; XXX */
|
||||
unsigned8 msgcont[1];
|
||||
} T_MSG;
|
||||
|
||||
/*
|
||||
* Reference Mailbox (ref_mbx) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rmbx {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there is a waiting task */
|
||||
T_MSG *pk_msg; /* message to be sent next */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RMBX;
|
||||
|
||||
/*
|
||||
* Mailbox Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_mbx - Create Mailbox
|
||||
*/
|
||||
|
||||
ER cre_mbx(
|
||||
ID mbxid,
|
||||
T_CMBX *pk_cmbx
|
||||
);
|
||||
|
||||
/*
|
||||
* del_mbx - Delete Mailbox
|
||||
*/
|
||||
|
||||
ER del_mbx(
|
||||
ID mbxid
|
||||
);
|
||||
|
||||
/*
|
||||
* snd_msg - Send Message to Mailbox
|
||||
*/
|
||||
|
||||
ER snd_msg(
|
||||
ID mbxid,
|
||||
T_MSG *pk_msg
|
||||
);
|
||||
|
||||
/*
|
||||
* rcv_msg - Receive Message from Mailbox
|
||||
*/
|
||||
|
||||
ER rcv_msg(
|
||||
T_MSG **ppk_msg,
|
||||
ID mbxid
|
||||
);
|
||||
|
||||
/*
|
||||
* prcv_msg - Poll and Receive Message from Mailbox
|
||||
*/
|
||||
|
||||
ER prcv_msg(
|
||||
T_MSG **ppk_msg,
|
||||
ID mbxid
|
||||
);
|
||||
|
||||
/*
|
||||
* trcv_msg - Receive Message from Mailbox with Timeout
|
||||
*/
|
||||
|
||||
ER trcv_msg(
|
||||
T_MSG **ppk_msg,
|
||||
ID mbxid,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_mbx - Reference Mailbox Status
|
||||
*/
|
||||
|
||||
ER ref_mbx(
|
||||
T_RMBX *pk_rmbx,
|
||||
ID mbxid
|
||||
);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,160 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MESSAGEBUFFER_h_
|
||||
#define __ITRON_MESSAGEBUFFER_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Message Buffer (cre_mbf) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_cmbf {
|
||||
VP exinf; /* extended information */
|
||||
ATR mbfatr; /* messagebuffer attributes */
|
||||
INT bufsz; /* messagebuffer size */
|
||||
INT maxmsz; /* maximum size of messages */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CMBF;
|
||||
|
||||
/*
|
||||
* mbfatr
|
||||
*/
|
||||
|
||||
#define TA_TFIFO 0x00 /* tasks waiting to receive messages are handled
|
||||
by FIFO */
|
||||
#define TA_TPRI 0x01 /* tasks waiting to receive messages are handled
|
||||
by priority */
|
||||
|
||||
/*
|
||||
* mbfid
|
||||
*/
|
||||
|
||||
#define TMBF_OS (-4) /* messagebuffer used for OS error log */
|
||||
#define TMBF_DB (-3) /* messagebuffer used for debugging */
|
||||
|
||||
/*
|
||||
* Reference Message Buffer (ref_mbf) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rmbf {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there is a */
|
||||
/* task waiting to receive a message */
|
||||
BOOL_ID stsk; /* indicates whether or not there is a */
|
||||
/* task waiting to send a message */
|
||||
INT msgsz; /* size of message to be sent next */
|
||||
INT frbufsz; /* size of free buffer */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RMBF;
|
||||
|
||||
/*
|
||||
* Message Buffer Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_mbf - Create MessageBuffer
|
||||
*/
|
||||
|
||||
ER cre_mbf(
|
||||
ID mbfid,
|
||||
T_CMBF *pk_cmbf
|
||||
);
|
||||
|
||||
/*
|
||||
* del_mbf - Delete MessageBuffer
|
||||
*/
|
||||
|
||||
ER del_mbf(
|
||||
ID mbfid
|
||||
);
|
||||
|
||||
/*
|
||||
* snd_mbf - Send Message to MessageBuffer
|
||||
*/
|
||||
|
||||
ER snd_mbf(
|
||||
ID mbfid,
|
||||
VP msg,
|
||||
INT msgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* psnd_mbf - Poll and Send Message to MessageBuffer
|
||||
*/
|
||||
|
||||
ER psnd_mbf(
|
||||
ID mbfid,
|
||||
VP msg,
|
||||
INT msgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* tsnd_mbf - Send Message to MessageBuffer with Timeout
|
||||
*/
|
||||
|
||||
ER tsnd_mbf(
|
||||
ID mbfid,
|
||||
VP msg,
|
||||
INT msgsz,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* rcv_mbf - Receive Message from MessageBuffer
|
||||
*/
|
||||
|
||||
ER rcv_mbf(
|
||||
VP msg,
|
||||
INT *p_msgsz,
|
||||
ID mbfid
|
||||
);
|
||||
|
||||
/*
|
||||
* prcv_mbf - Poll and Receive Message from MessageBuffer
|
||||
*/
|
||||
|
||||
ER prcv_mbf(
|
||||
VP msg,
|
||||
INT *p_msgsz,
|
||||
ID mbfid
|
||||
);
|
||||
|
||||
/*
|
||||
* trcv_mbf - Receive Message from MessageBuffer with Timeout
|
||||
*/
|
||||
|
||||
ER trcv_mbf(
|
||||
VP msg,
|
||||
INT *p_msgsz,
|
||||
ID mbfid,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_mbf - Reference MessageBuffer Status
|
||||
*/
|
||||
|
||||
ER ref_mbf(
|
||||
T_RMBF *pk_rmbf,
|
||||
ID mbfid
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_NETWORK_h_
|
||||
#define __ITRON_NETWORK_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* NODE srcnode, dstnode, nod:
|
||||
*/
|
||||
|
||||
#define TND_SELF 0 /* specifies the local node */
|
||||
#define TND_OTHR (-1) /* specifies default remote node */
|
||||
|
||||
/*
|
||||
* Network Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* nrea_dat - Read Data from another Node
|
||||
*/
|
||||
|
||||
ER nrea_dat(
|
||||
INT *p_reasz,
|
||||
VP dstadr,
|
||||
NODE srcnode,
|
||||
VP srcadr,
|
||||
INT datsz
|
||||
);
|
||||
|
||||
/*
|
||||
* nwri_dat - Write Data to another Node
|
||||
*/
|
||||
|
||||
ER nwri_dat(
|
||||
INT *p_wrisz,
|
||||
NODE dstnode,
|
||||
VP dstadr,
|
||||
VP srcadr,
|
||||
INT datsz
|
||||
);
|
||||
|
||||
/*
|
||||
* nget_nod - Get Local Node Number
|
||||
*/
|
||||
|
||||
ER nget_nod(
|
||||
NODE *p_node
|
||||
);
|
||||
|
||||
/*
|
||||
* nget_ver - Get Version Information of another Node
|
||||
*/
|
||||
|
||||
ER nget_ver(
|
||||
T_VER *pk_ver,
|
||||
NODE node
|
||||
);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,190 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_PORT_h_
|
||||
#define __ITRON_PORT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Port (cre_por) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_cpor {
|
||||
VP exinf; /* extended information */
|
||||
ATR poratr; /* port attributes */
|
||||
INT maxcmsz; /* maximum call message size */
|
||||
INT maxrmsz; /* maximum reply message size */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CPOR;
|
||||
|
||||
/*
|
||||
* poratr
|
||||
*/
|
||||
|
||||
#define TA_NULL 0 /* specifies no particular attributes */
|
||||
|
||||
/*
|
||||
* TA_NULL should be used in place of zeroes to turn off all
|
||||
* attribute features.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Reference Port (ref_por) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rpor {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there is a task */
|
||||
/* waiting to call a rendezvous */
|
||||
BOOL_ID atsk; /* indicates whether or not there is a task */
|
||||
/* waiting to accept a rendezvous */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RPOR;
|
||||
|
||||
/*
|
||||
* Port Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_por - Create Port for Rendezvous
|
||||
*/
|
||||
|
||||
ER cre_por(
|
||||
ID porid,
|
||||
T_CPOR *pk_cpor
|
||||
);
|
||||
|
||||
/*
|
||||
* del_por - Delete Port for Rendezvous
|
||||
*/
|
||||
|
||||
ER del_por(
|
||||
ID porid
|
||||
);
|
||||
|
||||
/*
|
||||
* cal_por - Call Port for Rendezvous Poll
|
||||
*/
|
||||
|
||||
ER cal_por(
|
||||
VP msg,
|
||||
INT *p_rmsgsz,
|
||||
ID porid,
|
||||
UINT calptn,
|
||||
INT cmsgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* pcal_por - Poll and Call Port for Rendezvous
|
||||
*/
|
||||
|
||||
ER pcal_por(
|
||||
VP msg,
|
||||
INT *p_rmsgsz,
|
||||
ID porid,
|
||||
UINT calptn,
|
||||
INT cmsgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* tcal_por - Call Port for Rendezvous with Timeout
|
||||
*/
|
||||
|
||||
ER tcal_por(
|
||||
VP msg,
|
||||
INT *p_rmsgsz,
|
||||
ID porid,
|
||||
UINT calptn,
|
||||
INT cmsgsz,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* acp_por - Accept Port for Rendezvous Poll
|
||||
*/
|
||||
|
||||
ER acp_por(
|
||||
RNO *p_rdvno,
|
||||
VP msg,
|
||||
INT *p_cmsgsz,
|
||||
ID porid,
|
||||
UINT acpptn
|
||||
);
|
||||
|
||||
/*
|
||||
* pacp_por - Poll and Accept Port for Rendezvous
|
||||
*/
|
||||
|
||||
ER pacp_por(
|
||||
RNO *p_rdvno,
|
||||
VP msg,
|
||||
INT *p_cmsgsz,
|
||||
ID porid,
|
||||
UINT acpptn
|
||||
);
|
||||
|
||||
/*
|
||||
* tacp_por - Accept Port for Rendezvous with Timeout
|
||||
*/
|
||||
|
||||
ER tacp_por(
|
||||
RNO *p_rdvno,
|
||||
VP msg,
|
||||
INT *p_cmsgsz,
|
||||
ID porid,
|
||||
UINT acpptn,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* fwd_por - Forward Rendezvous to Other Port
|
||||
*/
|
||||
|
||||
ER fwd_por(
|
||||
ID porid,
|
||||
UINT calptn,
|
||||
RNO rdvno,
|
||||
VP msg,
|
||||
INT cmsgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* rpl_rdv - Reply Rendezvous
|
||||
*/
|
||||
|
||||
ER rpl_rdv(
|
||||
RNO rdvno,
|
||||
VP msg,
|
||||
INT rmsgsz
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_por - Reference Port Status
|
||||
*/
|
||||
|
||||
ER ref_por(
|
||||
T_RPOR *pk_rpor,
|
||||
ID porid
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_SEMAPHORE_h_
|
||||
#define __ITRON_SEMAPHORE_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Semaphore (cre_sem) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_csem {
|
||||
VP exinf; /* extended information */
|
||||
ATR sematr; /* semaphore attributes */
|
||||
/* Following is the extended function for [level X]. */
|
||||
INT isemcnt; /* initial semaphore count */
|
||||
INT maxsem; /* maximum semaphore count */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CSEM;
|
||||
|
||||
/*
|
||||
* sematr - Semaphore Attribute Values
|
||||
*/
|
||||
|
||||
#define TA_TFIFO 0x00 /* waiting tasks are handled by FIFO */
|
||||
#define TA_TPRI 0x01 /* waiting tasks are handled by priority */
|
||||
|
||||
#define _ITRON_SEMAPHORE_UNUSED_ATTRIBUTES ~(TA_TPRI)
|
||||
|
||||
/*
|
||||
* Reference Semaphore (ref_sem) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rsem {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there is a waiting task */
|
||||
INT semcnt; /* current semaphore count */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RSEM;
|
||||
|
||||
/*
|
||||
* Semaphore Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_sem - Create Semaphore
|
||||
*/
|
||||
|
||||
ER cre_sem(
|
||||
ID semid,
|
||||
T_CSEM *pk_csem
|
||||
);
|
||||
|
||||
/*
|
||||
* del_sem - Delete Semaphore
|
||||
*/
|
||||
|
||||
ER del_sem(
|
||||
ID semid
|
||||
);
|
||||
|
||||
/*
|
||||
* sig_sem - Signal Semaphore
|
||||
*/
|
||||
|
||||
ER sig_sem(
|
||||
ID semid
|
||||
);
|
||||
|
||||
/*
|
||||
* wai_sem - Wait on Semaphore
|
||||
*/
|
||||
|
||||
ER wai_sem(
|
||||
ID semid
|
||||
);
|
||||
|
||||
/*
|
||||
* preq_sem - Poll and Request Semaphore
|
||||
*/
|
||||
|
||||
ER preq_sem(
|
||||
ID semid
|
||||
);
|
||||
|
||||
/*
|
||||
* twai_sem - Wait on Semaphore with Timeout
|
||||
*/
|
||||
|
||||
ER twai_sem(
|
||||
ID semid,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_sem - Reference Semaphore Status
|
||||
*/
|
||||
|
||||
ER ref_sem(
|
||||
ID semid,
|
||||
T_RSEM *pk_rsem
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_STATUS_h_
|
||||
#define __ITRON_STATUS_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define E_OK 0 /* Normal completion */
|
||||
#define E_SYS (-5) /* System error */
|
||||
#define E_NOMEM (-10) /* Insufficient memory */
|
||||
#define E_NOSPT (-17) /* Feature not supported */
|
||||
#define E_INOSPT (-18) /* Feature not supported by ITRON/FILE */
|
||||
/* specification */
|
||||
#define E_RSFN (-20) /* Reserved function code number */
|
||||
#define E_RSATR (-24) /* Reserved attribute */
|
||||
#define E_PAR (-33) /* Parameter error */
|
||||
#define E_ID (-35) /* Invalid ID number */
|
||||
#define E_NOEXS (-52) /* Object does not exist */
|
||||
#define E_OBJ (-63) /* Invalid object state */
|
||||
#define E_MACV (-65) /* Memory access disabled or memory access */
|
||||
/* violation */
|
||||
#define E_OACV (-66) /* Object access violation */
|
||||
#define E_CTX (-69) /* Context error */
|
||||
#define E_QOVR (-73) /* Queuing or nesting overflow */
|
||||
#define E_DLT (-81) /* Object being waited for was deleted */
|
||||
#define E_TMOUT (-85) /* Polling failure or timeout exceeded */
|
||||
#define E_RLWAI (-86) /* WAIT state was forcibly released */
|
||||
#define EN_NOND (-113) /* Target node does not exist or cannot be */
|
||||
/* accessed */
|
||||
#define EN_OBJNO (-114) /* Specifies an object number which could not be */
|
||||
/* accessed on the target node */
|
||||
#define EN_PROTO (-115) /* Protocol not supported on target node */
|
||||
#define EN_RSFN (-116) /* System call or function not supported on */
|
||||
/* target node */
|
||||
#define EN_COMM (-117) /* No response from target node */
|
||||
#define EN_RLWAI (-118) /* Connection function response wait state was */
|
||||
/* forcibly released */
|
||||
#define EN_PAR (-119) /* A value outside the range supported by the */
|
||||
/* target node and/or transmission packet */
|
||||
/* format was specified as a parameter */
|
||||
#define EN_RPAR (-120) /* A value outside the range supported by the */
|
||||
/* issuing node and/or transmission packet */
|
||||
/* format was returned as a return parameter */
|
||||
#define EN_CTXID (-121) /* An object on another node was specified to */
|
||||
/* a system call issued from a task in dispatch */
|
||||
/* disabled state or from a task-independent */
|
||||
/* portion */
|
||||
#define EN_EXEC (-122) /* System call could not be executed due to */
|
||||
/* insufficient resources on the target node */
|
||||
#define EN_NOSPT (-123) /* Connection function not supported */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,319 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_SYSTEM_MANAGEMENT_h_
|
||||
#define __ITRON_SYSTEM_MANAGEMENT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Get Version (get_ver) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_ver {
|
||||
UH maker; /* vendor */
|
||||
UH id; /* format number */
|
||||
UH spver; /* specification version */
|
||||
UH prver; /* product version */
|
||||
UH prno[4]; /* product control information */
|
||||
UH cpu; /* CPU information */
|
||||
UH var; /* variation descriptor */
|
||||
} T_VER;
|
||||
|
||||
/*
|
||||
* Specific MAKER codes established as of March, 1993 are as follows.
|
||||
* Due to restrictions on the assignment of CPU codes described below, it is
|
||||
* necessary to use maker codes in the range 0x000 through 0x00ff for vendors
|
||||
* developing CPUs.
|
||||
*/
|
||||
|
||||
/*
|
||||
* CPU defines XXX need to name the constants
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define 0x000 /* No version (test systems, etc.) */
|
||||
#define 0x001 /* University of Tokyo */
|
||||
#define 0x009 /* FUJITSU LIMITED */
|
||||
#define 0x00a /* Hitachi, Ltd. */
|
||||
#define 0x00b /* Matsushita Electric Industrial Co., Ltd. */
|
||||
#define 0x00c /* Mitsubishi Electric Corporation */
|
||||
#define 0x00d /* NEC Corporation */
|
||||
#define 0x00e /* Oki Electric Industry Co., Ltd. */
|
||||
#define 0x00f /* TOSHIBA CORPORATION */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The above have been assigned in alphabetical order.
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define 0x010 /* ALPS ELECTRIC CO., LTD. */
|
||||
#define 0x011 /* WACOM Co., Ltd. */
|
||||
#define 0x012 /* Personal Media Corporation */
|
||||
#define 0x101 /* OMRON CORPORATION */
|
||||
#define 0x102 /* SEIKOSHA CO., LTD. */
|
||||
#define 0x103 /* SYSTEM ALGO CO., LTD. */
|
||||
#define 0x104 /* Tokyo Computer Service Co., Ltd. */
|
||||
#define 0x105 /* YAMAHA CORPORATION */
|
||||
#define 0x106 /* MORSON JAPAN */
|
||||
#define 0x107 /* TOSHIBA INFORMATION SYSTEMS (JAPAN) CORP. */
|
||||
#define 0x108 /* Miyazaki System Planning Office */
|
||||
#define 0x109 /* Three Ace Computer Corporation */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* CPU Codes
|
||||
*
|
||||
* Figure 47 shows the format of cpu code. Some processors use the format
|
||||
* given in Figure 47(1). The format given in Figure 47(2) is used for all
|
||||
* other proprietary processors.
|
||||
*
|
||||
* The code assignment of the CPU1 region in the format given in Figure 47(1)
|
||||
* is common to ITRON and BTRON specifications. The same number is used in
|
||||
* the CPU type of the standard object format of BTRON specification
|
||||
* operating systems implemented on a TRON-specification chip.
|
||||
*
|
||||
* When using the format given in Figure 47(2) the code used for MAKER1 is
|
||||
* assigned by using the lower 8 bits of MAKER described in the previous
|
||||
* subsection. The code assignment of CPU2 is left up to each maker.
|
||||
*
|
||||
*
|
||||
*
|
||||
* +---------------+---------------+---------------+---------------+
|
||||
* (1) | 0 0 0 0 0 0 0 0 | CPU1 |
|
||||
* +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|
||||
* +---------------+---------------+---------------+---------------+
|
||||
* (2) | MAKER1 | CPU2 |
|
||||
* +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|
||||
*
|
||||
* Figure 47 Format of cpu Returned by get_ver
|
||||
*
|
||||
*
|
||||
* Specific CPU codes established as of March, 1993 are as follows.
|
||||
*/
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* XXX CONVERT THESE to #defines
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Contents of the CPU1 field
|
||||
*/
|
||||
|
||||
#define (0x0) CPU unspecified, no CPU information given
|
||||
#define (0x1) TRONCHIP32 shared
|
||||
#define (0x2) reserved
|
||||
#define (0x3) reserved
|
||||
#define (0x4) reserved
|
||||
#define (0x5) reserved (<<L1R>> TRON-specification chip)
|
||||
#define (0x6) reserved (<<L1>> TRON-specification chip)
|
||||
#define (0x7) reserved (TRON-specification chip supporting the
|
||||
LSID function)
|
||||
/* CPU vendors are unspecified for codes B'00000000 through B'00000111. */
|
||||
|
||||
#define (0x8) reserved
|
||||
#define (0x9) GMICRO/100
|
||||
#define (0xa) GMICRO/200
|
||||
#define (0xb) GMICRO/300
|
||||
#define (0xc) reserved
|
||||
#define (0xd) TX1
|
||||
#define (0xe) TX2
|
||||
#define (0xf) reserved
|
||||
|
||||
#define (0x10) reserved
|
||||
#define (0x11) reserved
|
||||
#define (0x12) reserved
|
||||
#define (0x13) O32
|
||||
#define (0x14) reserved
|
||||
#define (0x15) MN10400
|
||||
#define (0x16) reserved
|
||||
#define (0x17) reserved
|
||||
|
||||
#define (0x18) GMICRO/400
|
||||
#define (0x19) GMICRO/500
|
||||
#define (0x1a) reserved
|
||||
#define (0x1b-0x3f)
|
||||
reserved
|
||||
* For GMICRO extended, TX series extended, and TRONCHIP64 chips.
|
||||
|
||||
#define (0x40) Motorola 68000
|
||||
#define (0x41) Motorola 68010
|
||||
#define (0x42) Motorola 68020
|
||||
#define (0x43) Motorola 68030
|
||||
#define (0x44) Motorola 68040
|
||||
#define -(0x40-0x4f)
|
||||
#define Motorola 68000 family
|
||||
#define (0x50) National Semiconductor NS32032
|
||||
#define (0x50-0x5f)
|
||||
National Semiconductor NS32000 family
|
||||
#define (0x60) Intel 8086, 8088
|
||||
#define (0x61) Intel 80186
|
||||
#define (0x62) Intel 80286
|
||||
#define (0x63) Intel 80386
|
||||
#define (0x64) Intel 80486
|
||||
#define (0x60-0x6f)
|
||||
Intel iAPX86 family
|
||||
|
||||
#define (0x70-0x7f)
|
||||
NEC V Series
|
||||
|
||||
#define (0x80-0xff)
|
||||
reserved
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Assigning Version Numbers
|
||||
*
|
||||
* The version numbers of ITRON and uITRON specifications take the following
|
||||
* form.
|
||||
*
|
||||
* Ver X.YY.ZZ[.WW]
|
||||
*
|
||||
* where "X" represents major version number of the ITRON specification to
|
||||
* distinguish ITRON1, ITRON2 and uITRON 3.0 specifications. Specific
|
||||
* assignment is as follows.
|
||||
*
|
||||
* "X" = 1 ITRON1 specification
|
||||
* = 2 ITRON2 or uITRON 2.0 specification
|
||||
* = 3 uITRON 3.0 specification
|
||||
*
|
||||
* "YY" is a number used to distinguish versions according to changes and
|
||||
* additions made to the specification. After the specification is published,
|
||||
* this number is incremented in order "YY" = 00, 01, 02... according to
|
||||
* version upgrades. The first digit of "YY" is 'A', 'B' or 'C' for draft
|
||||
* standard versions and test versions within the TRON Association before the
|
||||
* specification have been published.
|
||||
*
|
||||
* The "X.YY" part of the specification version numbers is returned by spver
|
||||
* to get_ver system call. The corresponding hexadecimal value is used when
|
||||
* "YY" includes 'A', 'B' or 'C'.
|
||||
*
|
||||
* "ZZ" represents a number used to distinguish versions related to the written
|
||||
* style of a specification. This number is incremented in order
|
||||
* "ZZ" = 00, 01, 02... when there have been changes in specification
|
||||
* configuration, reordering of chapters or corrections of misprints.
|
||||
* When a further distinction of the written style of specifications is
|
||||
* desired, ".WW" may be added optionally after "ZZ". WW will be assumed
|
||||
* to be zero if ".WW" is omitted.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Reference System (ref_sys) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rsys {
|
||||
INT sysstat; /* system state */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RSYS;
|
||||
|
||||
/*
|
||||
* sysstat
|
||||
*/
|
||||
|
||||
#define TSS_TSK 0 /* normal state in which dispatching is enabled during
|
||||
task portion execution */
|
||||
#define TSS_DDSP 1 /* state after dis_dsp has been executed during task
|
||||
portion execution (dispatch disabled) */
|
||||
#define TSS_LOC 3 /* state after loc_cpu has been executed during task
|
||||
portion execution (interrupt and dispatch disabled)
|
||||
*/
|
||||
#define TSS_INDP 4 /* state during execution of task-independent portions
|
||||
(interrupt and timer handlers) */
|
||||
|
||||
/*
|
||||
* Reference Configuration (ref_cfg) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rcfg {
|
||||
/* details concerning members are implementation dependent */
|
||||
} T_RCFG;
|
||||
|
||||
/*
|
||||
* Define Service (def_svc) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_dsvc {
|
||||
ATR svcatr; /* extended SVC handler attributes */
|
||||
FP svchdr; /* extended SVC handler address */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_DSVC;
|
||||
|
||||
/*
|
||||
* Define Exception (def_exc) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_dexc {
|
||||
ATR excatr; /* exception handler attributes */
|
||||
FP exchdr; /* exception handler address */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_DEXC;
|
||||
|
||||
/*
|
||||
* System Management Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* get_ver - Get Version Information
|
||||
*/
|
||||
|
||||
ER get_ver(
|
||||
T_VER *pk_ver
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_sys - Reference Semaphore Status
|
||||
*/
|
||||
|
||||
ER ref_sys(
|
||||
T_RSYS *pk_rsys
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_cfg - Reference Configuration Information
|
||||
*/
|
||||
|
||||
ER ref_cfg(
|
||||
T_RCFG *pk_rcfg
|
||||
);
|
||||
|
||||
/*
|
||||
* def_svc - Define Extended SVC Handler
|
||||
*/
|
||||
|
||||
ER def_svc(
|
||||
FN s_fncd,
|
||||
T_DSVC *pk_dsvc
|
||||
);
|
||||
|
||||
/*
|
||||
* def_exc - Define Exception Handler
|
||||
*/
|
||||
|
||||
ER def_exc(
|
||||
UINT exckind,
|
||||
T_DEXC *pk_dexc
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,298 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TASK_h_
|
||||
#define __ITRON_TASK_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Task (cre_tsk) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_ctsk {
|
||||
VP exinf; /* extended information */
|
||||
ATR tskatr; /* task attributes */
|
||||
FP task; /* task start address */
|
||||
PRI itskpri; /* initial task priority */
|
||||
INT stksz; /* stack size */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CTSK;
|
||||
|
||||
/*
|
||||
* Values for the tskatr field
|
||||
*/
|
||||
|
||||
#define TA_ASM 0x00 /* program written in assembly language */
|
||||
#define TA_HLNG 0x01 /* program written in high-level language */
|
||||
#define TA_COP0 0x8000 /* uses coprocessor having ID = 0 */
|
||||
#define TA_COP1 0x4000 /* uses coprocessor having ID = 1 */
|
||||
#define TA_COP2 0x2000 /* uses coprocessor having ID = 2 */
|
||||
#define TA_COP3 0x1000 /* uses coprocessor having ID = 3 */
|
||||
#define TA_COP4 0x0800 /* uses coprocessor having ID = 4 */
|
||||
#define TA_COP5 0x0400 /* uses coprocessor having ID = 5 */
|
||||
#define TA_COP6 0x0200 /* uses coprocessor having ID = 6 */
|
||||
#define TA_COP7 0x0100 /* uses coprocessor having ID = 7 */
|
||||
|
||||
/*
|
||||
* Values for the tskid field
|
||||
*/
|
||||
|
||||
#define TSK_SELF 0 /* task specifies itself */
|
||||
|
||||
/* XXX is this a mistake in ITRON? FALSE was here and in the types list */
|
||||
#if 0
|
||||
|
||||
#define FALSE 0 /* indicates a task-independent portion (return */
|
||||
/* parameters only) */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Values for the tskpri field
|
||||
*/
|
||||
|
||||
#define TPRI_INI 0 /* specifies the initial priority on */
|
||||
/* task startup (chg_pri) */
|
||||
#define TPRI_RUN 0 /* specifies the highest priority during */
|
||||
/* execution (rot_rdq) */
|
||||
|
||||
|
||||
/*
|
||||
* Reference Task (ref_tsk) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rtsk {
|
||||
VP exinf; /* extended information */
|
||||
PRI tskpri; /* current priority */
|
||||
UINT tskstat; /* task state */
|
||||
/*
|
||||
* The following are represent extended features of support
|
||||
* [level X] (implementation-dependent).
|
||||
*/
|
||||
UINT tskwait; /* cause of wait */
|
||||
ID wid; /* ID of object being waited for */
|
||||
INT wupcnt; /* wakeup request count */
|
||||
INT suscnt; /* SUSPEND request count */
|
||||
ATR tskatr; /* task attributes */
|
||||
FP task; /* task start address */
|
||||
PRI itskpri; /* initial task priority */
|
||||
INT stksz; /* stack size */
|
||||
} T_RTSK;
|
||||
|
||||
/*
|
||||
* Values for the tskstat field
|
||||
*/
|
||||
|
||||
|
||||
#define TTS_RUN 0x01 /* RUN */
|
||||
#define TTS_RDY 0x02 /* READY */
|
||||
#define TTS_WAI 0x04 /* WAIT */
|
||||
#define TTS_SUS 0x08 /* SUSPEND */
|
||||
#define TTS_WAS 0x0C /* WAIT-SUSPEND */
|
||||
#define TTS_DMT 0x10 /* DORMANT */
|
||||
|
||||
/*
|
||||
* Values for the tskwait field
|
||||
*/
|
||||
|
||||
#define TTW_SLP 0x0001 /* wait due to slp_tsk or tslp_tsk */
|
||||
#define TTW_DLY 0x0002 /* wait due to dly_tsk */
|
||||
#define TTW_NOD 0x0008 /* connection function response wait */
|
||||
#define TTW_FLG 0x0010 /* wait due to wai_flg or twai_flg */
|
||||
#define TTW_SEM 0x0020 /* wait due to wai_sem or twai_sem */
|
||||
#define TTW_MBX 0x0040 /* wait due to rcv_msg or trcv_msg */
|
||||
#define TTW_SMBF 0x0080 /* wait due to snd_mbf or tsnd_mbf */
|
||||
#define TTW_MBF 0x0100 /* wait due to rcv_mbf or trcv_mbf */
|
||||
#define TTW_CAL 0x0200 /* wait for rendezvous call */
|
||||
#define TTW_ACP 0x0400 /* wait for rendezvous accept */
|
||||
#define TTW_RDV 0x0800 /* wait for rendezvous completion */
|
||||
#define TTW_MPL 0x1000 /* wait due to get_blk or tget_blk */
|
||||
#define TTW_MPF 0x2000 /* wait due to get_blf or tget_blf */
|
||||
|
||||
/*
|
||||
* Since the task states given by tskstat and tskwait are expressed
|
||||
* by bit correspondences, they are convenient when looking for OR
|
||||
* conditions (such as whether a task is in WAIT or READY state).
|
||||
*/
|
||||
|
||||
/*
|
||||
* Task Management Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_tsk - Create Task
|
||||
*/
|
||||
|
||||
ER cre_tsk(
|
||||
ID tskid,
|
||||
T_CTSK *pk_ctsk
|
||||
);
|
||||
|
||||
/*
|
||||
* del_tsk - Delete Task
|
||||
*/
|
||||
|
||||
ER del_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* sta_tsk - Start Task
|
||||
*/
|
||||
|
||||
ER sta_tsk(
|
||||
ID tskid,
|
||||
INT stacd
|
||||
);
|
||||
|
||||
/*
|
||||
* ext_tsk - Exit Issuing Task
|
||||
*/
|
||||
|
||||
void ext_tsk( void );
|
||||
|
||||
/*
|
||||
* exd_tsk - Exit and Delete Task
|
||||
*/
|
||||
|
||||
void exd_tsk( void );
|
||||
|
||||
/*
|
||||
* ter_tsk - Terminate Other Task
|
||||
*/
|
||||
|
||||
ER ter_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* dis_dsp - Disable Dispatch
|
||||
*/
|
||||
|
||||
ER dis_dsp( void );
|
||||
|
||||
/*
|
||||
* ena_dsp - Enable Dispatch
|
||||
*/
|
||||
|
||||
ER ena_dsp( void );
|
||||
|
||||
/*
|
||||
* chg_pri - Change Task Priority
|
||||
*/
|
||||
|
||||
ER chg_pri(
|
||||
ID tskid,
|
||||
PRI tskpri
|
||||
);
|
||||
|
||||
/*
|
||||
* rot_rdq - Rotate Tasks on the Ready Queue
|
||||
*/
|
||||
|
||||
ER rot_rdq(
|
||||
PRI tskpri
|
||||
);
|
||||
|
||||
/*
|
||||
* rel_wai - Release Wait of Other Task
|
||||
*/
|
||||
|
||||
ER rel_wai(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* get_tid - Get Task Identifier
|
||||
*/
|
||||
|
||||
ER get_tid(
|
||||
ID *p_tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_tsk - Reference Task Status
|
||||
*/
|
||||
|
||||
ER ref_tsk(
|
||||
T_RTSK *pk_rtsk,
|
||||
ID tskid
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
* Task-Dependent Synchronization Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* sus_tsk - Suspend Other Task
|
||||
*/
|
||||
|
||||
ER sus_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* rsm_tsk - Resume Suspended Task
|
||||
*/
|
||||
|
||||
ER rsm_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* frsm_tsk - Forcibly Resume Suspended Task
|
||||
*/
|
||||
|
||||
ER frsm_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* slp_tsk - Sleep Task Sleep Task with Timeout
|
||||
*/
|
||||
|
||||
ER slp_tsk( void );
|
||||
|
||||
/*
|
||||
* tslp_tsk - Sleep Task with Timeout
|
||||
*/
|
||||
|
||||
ER tslp_tsk(
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* wup_tsk - Wakeup Other Task
|
||||
*/
|
||||
|
||||
ER wup_tsk(
|
||||
ID tskid
|
||||
);
|
||||
|
||||
/*
|
||||
* can_wup - Cancel Wakeup Request
|
||||
*/
|
||||
|
||||
ER can_wup(
|
||||
INT *p_wupcnt,
|
||||
ID tskid
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,185 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TIME_h_
|
||||
#define __ITRON_TIME_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* System Time Data Type
|
||||
*
|
||||
* Member configuration depends on the bit width of the processor and
|
||||
* on the implementation. A total of 48 bits is recommended.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct t_systime {
|
||||
H utime; /* upper 16 bits */
|
||||
UW ltime; /* lower 32 bits */
|
||||
} SYSTIME, CYCTIME, ALMTIME;
|
||||
|
||||
/*
|
||||
* XXX Look this up in the spec and figure out where it comes
|
||||
* XXX from. dly_tim() references it but it was left out
|
||||
* XXX of the initial cut at the header files.
|
||||
*/
|
||||
|
||||
typedef int DLYTIME;
|
||||
|
||||
/*
|
||||
* XXX (def_cyc) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_dcyc {
|
||||
VP exinf; /* extended information */
|
||||
ATR cycatr; /* cyclic handler attributes */
|
||||
FP cychdr; /* cyclic handler address */
|
||||
UINT cycact; /* cyclic handler activation */
|
||||
CYCTIME cyctim; /* cyclic startup period */
|
||||
} T_DCYC;
|
||||
|
||||
/*
|
||||
* cycact
|
||||
*/
|
||||
|
||||
#define TCY_OFF 0x00 /* do not invoke cyclic handler */
|
||||
#define TCY_ON 0x01 /* invoke cyclic handler */
|
||||
#define TCY_INT 0x02 /* initialize cycle count */
|
||||
|
||||
/*
|
||||
* Reference Cyclic Handler (ref_cyc) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rcyc {
|
||||
VP exinf; /* extended information */
|
||||
CYCTIME lfttim; /* time left before next handler startup */
|
||||
UINT cycact; /* cyclic handler activation */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RCYC;
|
||||
|
||||
/*
|
||||
* Define Alarm (def_alm) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_dalm {
|
||||
VP exinf; /* extended information */
|
||||
ATR almatr; /* alarm handler attributes */
|
||||
FP almhdr; /* alarm handler address */
|
||||
UINT tmmode; /* start time specification mode */
|
||||
ALMTIME almtim; /* handler startup time */
|
||||
} T_DALM;
|
||||
|
||||
/*
|
||||
* tmmode
|
||||
*/
|
||||
|
||||
#define TTM_ABS 0x00 /* specified as an absolute time */
|
||||
#define TTM_REL 0x01 /* specified as a relative time */
|
||||
|
||||
/*
|
||||
* Reference Alarm (ref_alm) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_ralm {
|
||||
VP exinf; /* extended information */
|
||||
ALMTIME lfttim; /* time left before next handler startup */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RALM;
|
||||
|
||||
/*
|
||||
* Time Management Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* set_tim - Set System Clock
|
||||
*/
|
||||
|
||||
ER set_tim(
|
||||
SYSTIME *pk_tim
|
||||
);
|
||||
|
||||
/*
|
||||
* get_tim - Get System Clock
|
||||
*/
|
||||
|
||||
ER get_tim(
|
||||
SYSTIME *pk_tim
|
||||
);
|
||||
|
||||
/*
|
||||
* dly_tsk - Delay Task
|
||||
*/
|
||||
|
||||
ER dly_tsk(
|
||||
DLYTIME dlytim
|
||||
);
|
||||
|
||||
/*
|
||||
* def_cyc - Define Cyclic Handler
|
||||
*/
|
||||
|
||||
ER def_cyc(
|
||||
HNO cycno,
|
||||
T_DCYC *pk_dcyc
|
||||
);
|
||||
|
||||
/*
|
||||
* act_cyc - Activate Cyclic Handler
|
||||
*/
|
||||
|
||||
ER act_cyc(
|
||||
HNO cycno,
|
||||
UINT cycact
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_cyc - Reference Cyclic Handler Status
|
||||
*/
|
||||
|
||||
ER ref_cyc(
|
||||
T_RCYC *pk_rcyc,
|
||||
HNO cycno
|
||||
);
|
||||
|
||||
/*
|
||||
* def_alm - Define Alarm Handler
|
||||
*/
|
||||
|
||||
ER def_alm(
|
||||
HNO almno,
|
||||
T_DALM *pk_dalm
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_alm - Reference Alarm Handler Status
|
||||
*/
|
||||
|
||||
ER ref_alm(
|
||||
T_RALM *pk_ralm,
|
||||
HNO almno
|
||||
);
|
||||
|
||||
/*
|
||||
* ret_tmr - Return from Timer Handler
|
||||
*/
|
||||
|
||||
void ret_tmr( void );
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TYPES_h_
|
||||
#define __ITRON_TYPES_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* XXX some of these may need to be moved */
|
||||
/*
|
||||
* XXX: These names are too short and conflict with numerous
|
||||
* off the shell programs including paranoia.
|
||||
*/
|
||||
|
||||
typedef signed8 B; /* signed 8-bit integer */
|
||||
typedef signed16 H; /* signed 16-bit integer */
|
||||
typedef signed32 W; /* signed 32-bit integer */
|
||||
typedef unsigned8 UB; /* unsigned 8-bit integer */
|
||||
typedef unsigned16 UH; /* unsigned 16-bit integer */
|
||||
typedef unsigned32 UW; /* unsigned 32-bit integer */
|
||||
|
||||
typedef unsigned32 VW; /* unpredictable data type (32-bit size) */
|
||||
typedef unsigned16 VH; /* unpredictable data type (16-bit size) */
|
||||
typedef unsigned8 VB; /* unpredictable data type (8-bit size) */
|
||||
|
||||
typedef void *VP; /* pointer to an unpredictable data type */
|
||||
|
||||
typedef void (*FP)(); /* program start address */
|
||||
|
||||
/*
|
||||
* 6.4 Data Types
|
||||
*
|
||||
* The difference between VB, VH and VW and B, H and W is that only the
|
||||
* number of bits is known for the former, not the data type of the
|
||||
* contents. The latter clearly represent integers.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Data Types Dependent on ITRON Specification
|
||||
*
|
||||
* In order to clarify the meanings of certain parameters, the
|
||||
* following names are used for data types which appear frequently
|
||||
* and/or have special meanings.
|
||||
*/
|
||||
|
||||
typedef signed32 INT; /* Signed integer (bit width of processor) */
|
||||
typedef unsigned32 UINT; /* Unsigned integer (bit width of processor) */
|
||||
typedef boolean BOOL; /* Boolean value. TRUE (1) or FALSE (0). */
|
||||
typedef signed16 FN; /* Function code. Signed integer. Maximum 2 bytes. */
|
||||
typedef int ID; /* Object ID number (???id) */
|
||||
/* Value range depends on the system. Usually */
|
||||
/* a signed integer. Certain ID values may */
|
||||
/* represent objects on other nodes when the */
|
||||
/* connection function is supported. */
|
||||
|
||||
typedef unsigned32 BOOL_ID;/* Boolean value or ID number */
|
||||
|
||||
typedef signed32 HNO; /* Handler number */
|
||||
typedef signed32 RNO; /* Rendezvous number */
|
||||
typedef signed32 NODE; /* Node Number. Usually a signed integer. */
|
||||
typedef signed32 ATR; /* Object or handler attribute. */
|
||||
/* An unsigned integer. */
|
||||
typedef signed32 ER; /* Error code. A signed integer. */
|
||||
typedef unsigned32 PRI; /* Task priority. A signed integer. */
|
||||
typedef signed32 TMO; /* Timeout value. A signed integer. */
|
||||
/* TMO_POL = 0 indicates polling, */
|
||||
/* while TMO_FEVR = -1 indicates wait forever. */
|
||||
|
||||
/*
|
||||
* 6.6 Common Constants and Data Structure Packet Formats
|
||||
*/
|
||||
|
||||
#define NADR (-1) /* invalid address or pointer value */
|
||||
|
||||
#ifndef TRUE
|
||||
#define TRUE 1 /* true */
|
||||
#endif
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0 /* false */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* ATR tskatr, intatr, cycatr, almatr, svcatr, excatr:
|
||||
*
|
||||
* TA_ASM indicates that the task or handler is directly started
|
||||
* at the assembly language level. The TA_ASM attribute has the
|
||||
* opposite meaning of TA_HLNG.
|
||||
*
|
||||
* NOTE: Really in <itronsys/task.h>
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define TA_ASM 0x00 /* program written in assembly language */
|
||||
#define TA_HLNG 0x01 /* program written in high-level language */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* TMO tmout:
|
||||
*/
|
||||
|
||||
#define TMO_POL 0 /* polling */
|
||||
#define TMO_FEVR (-1) /* wait forever */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,132 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_VARIABLE_MEMORYPOOL_h_
|
||||
#define __ITRON_VARIABLE_MEMORYPOOL_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create Variable Memory Pool (cre_mpl) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_cmpl {
|
||||
VP exinf; /* extended information */
|
||||
ATR mplatr; /* memorypool attributes */
|
||||
INT mplsz; /* memorypool size */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_CMPL;
|
||||
|
||||
/*
|
||||
* mplatr
|
||||
*/
|
||||
|
||||
#define TA_TFIFO 0x00 /* waiting tasks are handled by FIFO */
|
||||
#define TA_TPRI 0x01 /* waiting tasks are handled by priority */
|
||||
|
||||
/*
|
||||
* mplid
|
||||
*/
|
||||
|
||||
#define TMPL_OS (-4) /* memorypool used by OS */
|
||||
|
||||
/*
|
||||
* Reference Variable Memory Pool (ref_mpl) Structure
|
||||
*/
|
||||
|
||||
typedef struct t_rmpl {
|
||||
VP exinf; /* extended information */
|
||||
BOOL_ID wtsk; /* indicates whether or not there are waiting tasks */
|
||||
INT frsz; /* total size of free memory */
|
||||
INT maxsz; /* size of largest contiguous memory */
|
||||
/* additional information may be included depending on the implementation */
|
||||
} T_RMPL;
|
||||
|
||||
/*
|
||||
* Variable Memory Pool Functions
|
||||
*/
|
||||
|
||||
/*
|
||||
* cre_mpl - Create Variable-Size Memorypool
|
||||
*/
|
||||
|
||||
ER cre_mpl(
|
||||
ID mplid,
|
||||
T_CMPL *pk_cmpl
|
||||
);
|
||||
|
||||
/*
|
||||
* del_mpl - Delete Variable-Size Memorypool
|
||||
*/
|
||||
|
||||
ER del_mpl(
|
||||
ID mplid
|
||||
);
|
||||
|
||||
/*
|
||||
* get_blk - Get Variable-Size Memory Block
|
||||
*/
|
||||
|
||||
ER get_blk(
|
||||
VP *p_blk,
|
||||
ID mplid,
|
||||
INT blksz
|
||||
);
|
||||
|
||||
/*
|
||||
* pget_blk - Poll and Get Variable-Size Memory Block
|
||||
*/
|
||||
|
||||
ER pget_blk(
|
||||
VP *p_blk,
|
||||
ID mplid,
|
||||
INT blksz
|
||||
);
|
||||
|
||||
/*
|
||||
* tget_blk - Get Variable-Size Memory Block with Timeout
|
||||
*/
|
||||
|
||||
ER tget_blk(
|
||||
VP *p_blk,
|
||||
ID mplid,
|
||||
INT blksz,
|
||||
TMO tmout
|
||||
);
|
||||
|
||||
/*
|
||||
* rel_blk - Release Variable-Size Memory Block
|
||||
*/
|
||||
|
||||
ER rel_blk(
|
||||
ID mplid,
|
||||
VP blk
|
||||
);
|
||||
|
||||
/*
|
||||
* ref_mpl - Reference Variable-Size Memorypool Status
|
||||
*/
|
||||
|
||||
ER ref_mpl(
|
||||
T_RMPL *pk_rmpl,
|
||||
ID mplid
|
||||
);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,10 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
This directory contains the private interface of each manager.
|
||||
These files should only be included from the from the
|
||||
implementation of each manager.
|
||||
|
||||
The public header file for each ITRON manager is in
|
||||
../../../tronsys.
|
||||
@@ -1,62 +0,0 @@
|
||||
/* config.h
|
||||
*
|
||||
* This include file contains the table of user defined configuration
|
||||
* parameters specific for the ITRON API.
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_CONFIGURATION_h
|
||||
#define __RTEMS_ITRON_CONFIGURATION_h
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX
|
||||
*
|
||||
* The following records define the Configuration Table. The
|
||||
* information contained in this table is required in all
|
||||
* RTEMS systems, whether single or multiprocessor. This
|
||||
* table primarily defines the following:
|
||||
*
|
||||
* + required number of each object type
|
||||
*/
|
||||
|
||||
/*
|
||||
* For now, we are only allowing the user to specify the entry point
|
||||
* and stack size for ITRON initialization threads.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ID id;
|
||||
T_CTSK attributes;
|
||||
} itron_initialization_tasks_table;
|
||||
|
||||
typedef struct {
|
||||
int maximum_tasks;
|
||||
int maximum_semaphores;
|
||||
int maximum_eventflags;
|
||||
int maximum_mailboxes;
|
||||
int maximum_message_buffers;
|
||||
int maximum_ports;
|
||||
int maximum_memory_pools;
|
||||
int maximum_fixed_memory_pools;
|
||||
int number_of_initialization_tasks;
|
||||
itron_initialization_tasks_table *User_initialization_tasks_table;
|
||||
} itron_api_configuration_table;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,61 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_EVENTFLAGS_h_
|
||||
#define __RTEMS_ITRON_EVENTFLAGS_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each event flag.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
unsigned32 XXX_more_stuff_goes_here;
|
||||
} ITRON_Eventflags_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Eventflags_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Eventflags_Manager_initialization(
|
||||
unsigned32 maximum_eventflags
|
||||
);
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/eventflags.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_FIXED_MEMORYPOOL_h_
|
||||
#define __RTEMS_ITRON_FIXED_MEMORYPOOL_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each
|
||||
* fixed memory pool.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
unsigned32 XXX_more_stuff_goes_here;
|
||||
} ITRON_Fixed_memory_pool_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Fixed_memory_pool_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Fixed_memory_pool_Manager_initialization(
|
||||
unsigned32 maximum_fixed_memory_pools
|
||||
);
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/fmempool.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_INTERRUPT_h_
|
||||
#define __RTEMS_ITRON_INTERRUPT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/intr.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* ITRON API Support
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_API_h
|
||||
#define __ITRON_API_h
|
||||
|
||||
#include <rtems/config.h>
|
||||
|
||||
/*
|
||||
* _ITRON_API_Initialize
|
||||
*
|
||||
* Initialize the ITRON API.
|
||||
*/
|
||||
|
||||
void _ITRON_API_Initialize(
|
||||
rtems_configuration_table *configuration_table
|
||||
);
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,73 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_MBOX_h_
|
||||
#define __RTEMS_ITRON_MBOX_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
#include <rtems/score/coremsg.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each mailbox.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
unsigned32 count;
|
||||
boolean do_message_priority;
|
||||
CORE_message_queue_Control message_queue;
|
||||
} ITRON_Mailbox_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Mailbox_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Mailbox_Manager_initialization(
|
||||
unsigned32 maximum_mailboxes
|
||||
);
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Translate_core_message_queue_return_code
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine translates a core message queue object status
|
||||
* into the appropriate ITRON status code.
|
||||
*/
|
||||
|
||||
ER _ITRON_Mailbox_Translate_core_message_queue_return_code(
|
||||
CORE_message_queue_Status status
|
||||
);
|
||||
|
||||
#include <rtems/itron/mbox.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_MESSAGEBUFFER_h_
|
||||
#define __RTEMS_ITRON_MESSAGEBUFFER_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
#include <rtems/score/coremsg.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each
|
||||
* message buffer.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
boolean is_priority_blocking;
|
||||
CORE_message_queue_Control message_queue;
|
||||
} ITRON_Message_buffer_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Message_buffer_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Message_buffer_Manager_initialization(
|
||||
unsigned32 maximum_message_buffers
|
||||
);
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Translate_core_message_buffer_return_code
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine translates a core message buffer object status
|
||||
* into the appropriate ITRON status code.
|
||||
*/
|
||||
|
||||
ER _ITRON_Message_buffer_Translate_core_message_buffer_return_code(
|
||||
CORE_message_queue_Status status
|
||||
);
|
||||
|
||||
#include <rtems/itron/msgbuffer.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_NETWORK_h_
|
||||
#define __RTEMS_ITRON_NETWORK_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/network.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,120 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_OBJECT_h_
|
||||
#define __RTEMS_ITRON_OBJECT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/score/object.h>
|
||||
|
||||
typedef Objects_Control ITRON_Objects_Control;
|
||||
|
||||
/*
|
||||
* Maximum length of an ITRON object name
|
||||
*
|
||||
* NOTE: Since ITRON objects do not have names, then then length is 0.
|
||||
*/
|
||||
|
||||
#define ITRON_MAXIMUM_NAME_LENGTH 0
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Open
|
||||
*
|
||||
* Make this ITRON object visible to the system.
|
||||
*
|
||||
* NOTE: This macro hides the fact that ITRON objects don't have names.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Open( _the_information, _the_object ) \
|
||||
_Objects_Open( (_the_information), (_the_object), NULL )
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Close
|
||||
*
|
||||
* Make this ITRON object invisible from the system. Usually used as
|
||||
* the first step of deleting an object.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Close( _the_information, _the_object ) \
|
||||
_Objects_Close( (_the_information), (_the_object) )
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Allocate_by_index
|
||||
*
|
||||
* Allocate the ITRON object specified by "_id". The ITRON id is the
|
||||
* index portion of the traditional RTEMS ID. The Classic and POSIX
|
||||
* APIs do not require that a specific object be allocated.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Allocate_by_index( _the_information, _id, _sizeof ) \
|
||||
_Objects_Allocate_by_index( (_the_information), (_id), (_sizeof) )
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Clarify_allocation_id_error( _the_information, _id ) \
|
||||
(((_id) < -4) ? E_OACV : /* attempt to access a "system object" */ \
|
||||
((_id) <= 0) ? E_ID : /* bogus index of 0 - -3 */ \
|
||||
((_id) <= (_the_information)->maximum) ? E_OBJ : /* object is in use */ \
|
||||
E_ID) /* simply a bad id */
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Clarify_get_id_error( _the_information, _id ) \
|
||||
(((_id) < -4) ? E_OACV : /* attempt to access a "system object" */ \
|
||||
((_id) <= 0) ? E_ID : /* bogus index of 0 - -3 */ \
|
||||
((_id) <= (_the_information)->maximum) ? E_NOEXS : /* does not exist */ \
|
||||
E_ID) /* simply a bad id */
|
||||
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Free
|
||||
*
|
||||
* Free this ITRON object to the pool of inactive objects. This
|
||||
* operation is the same as for the Classic and POSIX APIs.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Free( _the_information, _the_object ) \
|
||||
_Objects_Free( (_the_information), (_the_object) )
|
||||
|
||||
|
||||
/*
|
||||
* _ITRON_Objects_Get
|
||||
*
|
||||
* Obtain (get) the pointer to the control block for the object
|
||||
* specified by "id". The ITRON id passed in here is simply
|
||||
* the "index" portion of the traditional RTEMS ID. This
|
||||
* requires that this operation be slightly different
|
||||
* from the object get used by the Classic and POSIX APIs.
|
||||
*/
|
||||
|
||||
#define _ITRON_Objects_Get( _the_information, _id, _the_object ) \
|
||||
_Objects_Get_by_index( (_the_information), (_id), (_the_object) )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_PORT_h_
|
||||
#define __RTEMS_ITRON_PORT_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each port.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
unsigned32 XXX_more_stuff_goes_here;
|
||||
} ITRON_Port_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Port_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Port_Manager_initialization(
|
||||
unsigned32 maximum_ports
|
||||
);
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/port.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,59 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_SEMAPHORE_h_
|
||||
#define __RTEMS_ITRON_SEMAPHORE_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
#include <rtems/score/coresem.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each semaphore.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
boolean is_priority_blocking;
|
||||
CORE_semaphore_Control semaphore;
|
||||
} ITRON_Semaphore_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Semaphore_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Semaphore_Manager_initialization(
|
||||
unsigned32 maximum_semaphores
|
||||
);
|
||||
|
||||
#include <rtems/itron/semaphore.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_TIME_h_
|
||||
#define __RTEMS_ITRON_TIME_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/sysmgmt.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_TASK_h_
|
||||
#define __RTEMS_ITRON_TASK_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
#include <rtems/itron/config.h>
|
||||
#include <rtems/score/thread.h>
|
||||
|
||||
/*
|
||||
* This macro evaluates to TRUE if there should be a "context error."
|
||||
* This is defined as a blocking directive being issed from
|
||||
* task-independent portions or a task in dispatch disabled state.
|
||||
*
|
||||
* NOTE: Dispatching is disabled in interrupts so this should cover
|
||||
* both cases.
|
||||
*/
|
||||
|
||||
#define _ITRON_Is_in_non_task_state() \
|
||||
(_Thread_Dispatch_disable_level != 0)
|
||||
|
||||
/*
|
||||
* This is the API specific information required by each thread for
|
||||
* the ITRON API to function correctly.
|
||||
*/
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned32 unused; /* no use for the API extension */
|
||||
/* structure for ITRON identified yet */
|
||||
} ITRON_API_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to
|
||||
* manage this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Task_Information;
|
||||
|
||||
/*
|
||||
* These are used to manage the user initialization tasks.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN itron_initialization_tasks_table
|
||||
*_ITRON_Task_User_initialization_tasks;
|
||||
ITRON_EXTERN unsigned32 _ITRON_Task_Number_of_initialization_tasks;
|
||||
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Manager_initialization
|
||||
*
|
||||
* This routine initializes the ITRON Task Manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Task_Manager_initialization(
|
||||
unsigned32 maximum_tasks,
|
||||
unsigned32 number_of_initialization_tasks,
|
||||
itron_initialization_tasks_table *user_tasks
|
||||
);
|
||||
|
||||
/*
|
||||
*
|
||||
* _ITRON_Delete_task
|
||||
*/
|
||||
|
||||
ER _ITRON_Delete_task(
|
||||
Thread_Control *the_thread
|
||||
);
|
||||
|
||||
/* XXX remove the need for this. Enable dispatch should not be hidden */
|
||||
|
||||
#define _ITRON_return_errorno( _errno ) \
|
||||
do { \
|
||||
_Thread_Enable_dispatch(); \
|
||||
return _errno; \
|
||||
} while (0);
|
||||
|
||||
|
||||
#ifndef __RTEMS_APPLICATION__
|
||||
#include <rtems/itron/task.inl>
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_TIME_h_
|
||||
#define __RTEMS_ITRON_TIME_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/time.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __RTEMS_ITRON_VARIABLE_MEMORYPOOL_h_
|
||||
#define __RTEMS_ITRON_VARIABLE_MEMORYPOOL_h_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <rtems/itron/object.h>
|
||||
|
||||
/*
|
||||
* The following defines the control block used to manage each variable
|
||||
* memory pool.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
ITRON_Objects_Control Object;
|
||||
unsigned32 XXX_more_stuff_goes_here;
|
||||
} ITRON_Variable_memory_pool_Control;
|
||||
|
||||
/*
|
||||
* The following defines the information control block used to manage
|
||||
* this class of objects.
|
||||
*/
|
||||
|
||||
ITRON_EXTERN Objects_Information _ITRON_Variable_memory_pool_Information;
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Manager_initialization
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine performs the initialization necessary for this manager.
|
||||
*/
|
||||
|
||||
void _ITRON_Variable_memory_pool_Manager_initialization(
|
||||
unsigned32 maximum_variable_memory_pools
|
||||
);
|
||||
|
||||
/*
|
||||
* XXX insert private stuff here
|
||||
*/
|
||||
|
||||
#include <rtems/itron/vmempool.inl>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
include_rtems_itrondir = $(includedir)/rtems/itron
|
||||
|
||||
$(PROJECT_INCLUDE)/rtems/itron:
|
||||
@$(mkinstalldirs) $@
|
||||
$(PROJECT_INCLUDE)/%: %
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
if INLINE
|
||||
include_rtems_itron_HEADERS = rtems/itron/eventflags.inl \
|
||||
rtems/itron/fmempool.inl rtems/itron/intr.inl rtems/itron/mbox.inl \
|
||||
rtems/itron/msgbuffer.inl rtems/itron/network.inl rtems/itron/port.inl \
|
||||
rtems/itron/semaphore.inl rtems/itron/sysmgmt.inl rtems/itron/task.inl \
|
||||
rtems/itron/time.inl rtems/itron/vmempool.inl
|
||||
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/itron \
|
||||
$(include_rtems_itron_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
endif
|
||||
|
||||
all-local: $(PREINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,151 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_EVENTFLAGS_inl_
|
||||
#define __ITRON_EVENTFLAGS_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the eventflags associated with the specified
|
||||
* eventflags ID from the pool of inactive eventflagss.
|
||||
*
|
||||
* Input parameters:
|
||||
* flgid - id of eventflags to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the eventflags control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Eventflags_Control *_ITRON_Eventflags_Allocate(
|
||||
ID flgid
|
||||
)
|
||||
{
|
||||
return (ITRON_Eventflags_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Eventflags_Information,
|
||||
flgid,
|
||||
sizeof(ITRON_Eventflags_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Eventflags_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Eventflags_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a eventflags control block to the
|
||||
* inactive chain of free eventflags control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_eventflags - pointer to eventflags control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Eventflags_Free (
|
||||
ITRON_Eventflags_Control *the_eventflags
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free( &_ITRON_Eventflags_Information, &the_eventflags->Object );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Eventflags_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps eventflags IDs to eventflags control blocks.
|
||||
* If ID corresponds to a local eventflags, then it returns
|
||||
* the_eventflags control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the eventflags ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the_eventflags is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the_eventflags is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON eventflags ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Eventflags_Control *_ITRON_Eventflags_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Eventflags_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Eventflags_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Eventflags_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_eventflags is NULL and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_eventflags - pointer to eventflags control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_eventflags is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Eventflags_Is_null (
|
||||
ITRON_Eventflags_Control *the_eventflags
|
||||
)
|
||||
{
|
||||
return ( the_eventflags == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,158 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_FIXED_MEMORY_POOL_inl_
|
||||
#define __ITRON_FIXED_MEMORY_POOL_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the fixed_memory_pool associated with the specified
|
||||
* fixed_memory_pool ID from the pool of inactive fixed_memory_pools.
|
||||
*
|
||||
* Input parameters:
|
||||
* mpfid - id of fixed_memory_pool to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the fixed_memory_pool control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Fixed_memory_pool_Control
|
||||
*_ITRON_Fixed_memory_pool_Allocate(
|
||||
ID mpfid
|
||||
)
|
||||
{
|
||||
return (ITRON_Fixed_memory_pool_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Fixed_memory_pool_Information,
|
||||
mpfid,
|
||||
sizeof(ITRON_Fixed_memory_pool_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Fixed_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( \
|
||||
&_ITRON_Fixed_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a fixed_memory_pool control block to the
|
||||
* inactive chain of free fixed_memory_pool control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_fixed_memory_pool - pointer to fixed_memory_pool control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Fixed_memory_pool_Free (
|
||||
ITRON_Fixed_memory_pool_Control *the_fixed_memory_pool
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free(
|
||||
&_ITRON_Fixed_memory_pool_Information,
|
||||
&the_fixed_memory_pool->Object
|
||||
);
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Fixed_memory_pool_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps fixed memory pool IDs to control blocks.
|
||||
* If ID corresponds to a local fixed memory pool, then it returns
|
||||
* the_fixed memory pool control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the fixed memory pool ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the fixed memory pool is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the fixed memory pool is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON fixed memory pool ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Fixed_memory_pool_Control
|
||||
*_ITRON_Fixed_memory_pool_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Fixed_memory_pool_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Fixed_memory_pool_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Fixed_memory_pool_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_fixed_memory_pool is NULL
|
||||
* and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_fixed_memory_pool - pointer to fixed_memory_pool control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_fixed_memory_pool is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Fixed_memory_pool_Is_null (
|
||||
ITRON_Fixed_memory_pool_Control *the_fixed_memory_pool
|
||||
)
|
||||
{
|
||||
return ( the_fixed_memory_pool == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_INTERRUPT_inl_
|
||||
#define __ITRON_INTERRUPT_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,151 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MAILBOX_inl_
|
||||
#define __ITRON_MAILBOX_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the mailbox associated with the specified
|
||||
* mailbox ID from the pool of inactive mailboxs.
|
||||
*
|
||||
* Input parameters:
|
||||
* mbxid - id of mailbox to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the mailbox control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Mailbox_Control *_ITRON_Mailbox_Allocate(
|
||||
ID mbxid
|
||||
)
|
||||
{
|
||||
return (ITRON_Mailbox_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Mailbox_Information,
|
||||
mbxid,
|
||||
sizeof(ITRON_Mailbox_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Mailbox_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Mailbox_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a mailbox control block to the
|
||||
* inactive chain of free mailbox control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_mailbox - pointer to mailbox control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Mailbox_Free (
|
||||
ITRON_Mailbox_Control *the_mailbox
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free( &_ITRON_Mailbox_Information, &the_mailbox->Object );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Mailbox_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps mailbox IDs to mailbox control blocks.
|
||||
* If ID corresponds to a local mailbox, then it returns
|
||||
* the_mailbox control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the mailbox ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the_mailbox is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the_mailbox is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON mailbox ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Mailbox_Control *_ITRON_Mailbox_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Mailbox_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Mailbox_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Mailbox_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_mailbox is NULL and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_mailbox - pointer to mailbox control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_mailbox is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Mailbox_Is_null (
|
||||
ITRON_Mailbox_Control *the_mailbox
|
||||
)
|
||||
{
|
||||
return ( the_mailbox == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,156 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MESSAGE_BUFFER_inl_
|
||||
#define __ITRON_MESSAGE_BUFFER_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the message buffer associated with the specified
|
||||
* message buffer ID from the pool of inactive message buffers.
|
||||
*
|
||||
* Input parameters:
|
||||
* mbfid - id of message buffer to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the message buffer control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Message_buffer_Control
|
||||
*_ITRON_Message_buffer_Allocate(
|
||||
ID mbfid
|
||||
)
|
||||
{
|
||||
return (ITRON_Message_buffer_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Message_buffer_Information,
|
||||
mbfid,
|
||||
sizeof(ITRON_Message_buffer_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Message_buffer_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Message_buffer_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a message buffer control block to the
|
||||
* inactive chain of free message buffer control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_message_buffer - pointer to message_buffer control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Message_buffer_Free (
|
||||
ITRON_Message_buffer_Control *the_message_buffer
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free(
|
||||
&_ITRON_Message_buffer_Information,
|
||||
&the_message_buffer->Object
|
||||
);
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Message_buffer_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps message buffer IDs to message buffer control blocks.
|
||||
* If ID corresponds to a local message buffer, then it returns
|
||||
* the message buffer control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the message buffer ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the message buffer is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the message buffer is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON message_buffer ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Message_buffer_Control *_ITRON_Message_buffer_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Message_buffer_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Message_buffer_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Message_buffer_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_message_buffer is NULL
|
||||
* and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_message_buffer - pointer to message buffer control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_message_buffer is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Message_buffer_Is_null (
|
||||
ITRON_Message_buffer_Control *the_message_buffer
|
||||
)
|
||||
{
|
||||
return ( the_message_buffer == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_NETWORK_inl_
|
||||
#define __ITRON_NETWORK_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,151 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_PORT_inl_
|
||||
#define __ITRON_PORT_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the port associated with the specified
|
||||
* port ID from the pool of inactive ports.
|
||||
*
|
||||
* Input parameters:
|
||||
* porid - id of port to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the port control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Port_Control *_ITRON_Port_Allocate(
|
||||
ID porid
|
||||
)
|
||||
{
|
||||
return (ITRON_Port_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Port_Information,
|
||||
porid,
|
||||
sizeof(ITRON_Port_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Port_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Port_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a port control block to the
|
||||
* inactive chain of free port control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_port - pointer to port control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Port_Free (
|
||||
ITRON_Port_Control *the_port
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free( &_ITRON_Port_Information, &the_port->Object );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Port_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps port IDs to port control blocks.
|
||||
* If ID corresponds to a local port, then it returns
|
||||
* the_port control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the port ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the_port is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the_port is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON port ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Port_Control *_ITRON_Port_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Port_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Port_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Port_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_port is NULL and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_port - pointer to port control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_port is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Port_Is_null (
|
||||
ITRON_Port_Control *the_port
|
||||
)
|
||||
{
|
||||
return ( the_port == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,183 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_SEMAPHORE_inl_
|
||||
#define __ITRON_SEMAPHORE_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the semaphore associated with the specified
|
||||
* semaphore ID from the pool of inactive semaphores.
|
||||
*
|
||||
* Input parameters:
|
||||
* semid - id of semaphore to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the semaphore control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Semaphore_Control *_ITRON_Semaphore_Allocate(
|
||||
ID semid
|
||||
)
|
||||
{
|
||||
return (ITRON_Semaphore_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Semaphore_Information,
|
||||
semid,
|
||||
sizeof(ITRON_Semaphore_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Semaphore_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Semaphore_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a semaphore control block to the
|
||||
* inactive chain of free semaphore control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_semaphore - pointer to semaphore control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Semaphore_Free (
|
||||
ITRON_Semaphore_Control *the_semaphore
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free( &_ITRON_Semaphore_Information, &the_semaphore->Object );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Semaphore_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps semaphore IDs to semaphore control blocks.
|
||||
* If ID corresponds to a local semaphore, then it returns
|
||||
* the_semaphore control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the semaphore ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the_semaphore is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the_semaphore is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON semaphore ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Semaphore_Control *_ITRON_Semaphore_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Semaphore_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Semaphore_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Semaphore_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_semaphore is NULL and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_semaphore - pointer to semaphore control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_semaphore is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Semaphore_Is_null (
|
||||
ITRON_Semaphore_Control *the_semaphore
|
||||
)
|
||||
{
|
||||
return ( the_semaphore == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Translate_core_semaphore_return_code
|
||||
*
|
||||
* This function returns a ITRON status code based on the semaphore
|
||||
* status code specified.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_semaphore_status - semaphore status code to translate
|
||||
*
|
||||
* Output parameters:
|
||||
* ITRON status code - translated ITRON status code
|
||||
*
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ER _ITRON_Semaphore_Translate_core_semaphore_return_code (
|
||||
unsigned32 the_semaphore_status
|
||||
)
|
||||
{
|
||||
/* XXX need to be able to return "E_RLWAI" */
|
||||
switch ( the_semaphore_status ) {
|
||||
case CORE_SEMAPHORE_STATUS_SUCCESSFUL:
|
||||
return E_OK;
|
||||
case CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT:
|
||||
return E_TMOUT;
|
||||
case CORE_SEMAPHORE_WAS_DELETED:
|
||||
return E_DLT;
|
||||
case CORE_SEMAPHORE_TIMEOUT:
|
||||
return E_TMOUT;
|
||||
case CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED:
|
||||
return E_QOVR;
|
||||
case THREAD_STATUS_PROXY_BLOCKING:
|
||||
return THREAD_STATUS_PROXY_BLOCKING;
|
||||
}
|
||||
return E_OK; /* unreached - only to remove warnings */
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TIME_inl_
|
||||
#define __ITRON_TIME_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,181 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TASK_inl_
|
||||
#define __ITRON_TASK_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the task associated with the specified
|
||||
* task ID from the pool of inactive tasks.
|
||||
*
|
||||
* Input parameters:
|
||||
* tskid - id of task to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the task control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE Thread_Control *_ITRON_Task_Allocate(
|
||||
ID tskid
|
||||
)
|
||||
{
|
||||
return (Thread_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Task_Information,
|
||||
tskid,
|
||||
sizeof(Thread_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Task_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Task_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a task control block to the
|
||||
* inactive chain of free task control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_task - pointer to task control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Task_Free (
|
||||
Thread_Control *the_task
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free( &_ITRON_Task_Information, &the_task->Object );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Task_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps task IDs to task control blocks.
|
||||
* If ID corresponds to a local task, then it returns
|
||||
* the_task control pointer which maps to ID and location
|
||||
* is set to OBJECTS_LOCAL. if the task ID is global and
|
||||
* resides on a remote node, then location is set to OBJECTS_REMOTE,
|
||||
* and the_task is undefined. Otherwise, location is set
|
||||
* to OBJECTS_ERROR and the_task is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON task ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE Thread_Control *_ITRON_Task_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
if ( id == 0 ) {
|
||||
_Thread_Disable_dispatch();
|
||||
*location = OBJECTS_LOCAL;
|
||||
return _Thread_Executing;
|
||||
}
|
||||
|
||||
return (Thread_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Task_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Task_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_task is NULL and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_task - pointer to task control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_task is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Task_Is_null (
|
||||
Thread_Control *the_task
|
||||
)
|
||||
{
|
||||
return ( the_task == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_tasks_Priority_to_Core
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE _ITRON_Task_Priority_to_Core(
|
||||
PRI ITRON_priority
|
||||
)
|
||||
{
|
||||
return (Priority_Control) ITRON_priority;
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_tasks_Core_to_Priority
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE _ITRON_Task_Core_to_Priority(
|
||||
Priority_Control core_priority
|
||||
)
|
||||
{
|
||||
return (PRI) core_priority;
|
||||
}
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TIME_inl_
|
||||
#define __ITRON_TIME_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,161 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_VARIABLE_MEMORY_POOL_inl_
|
||||
#define __ITRON_VARIABLE_MEMORY_POOL_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Allocate
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine allocates the variable memory pool associated with
|
||||
* the specified variable memory pool ID from the pool of inactive
|
||||
* variable memory pools.
|
||||
*
|
||||
* Input parameters:
|
||||
* mplid - id of variable memory pool to allocate
|
||||
* status - pointer to status variable
|
||||
*
|
||||
* Output parameters:
|
||||
* returns - pointer to the variable memory pool control block
|
||||
* *status - status
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Variable_memory_pool_Control
|
||||
*_ITRON_Variable_memory_pool_Allocate(
|
||||
ID mplid
|
||||
)
|
||||
{
|
||||
return (ITRON_Variable_memory_pool_Control *)_ITRON_Objects_Allocate_by_index(
|
||||
&_ITRON_Variable_memory_pool_Information,
|
||||
mplid,
|
||||
sizeof(ITRON_Variable_memory_pool_Control)
|
||||
);
|
||||
}
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Clarify_allocation_id_error
|
||||
*
|
||||
* This function is invoked when an object allocation ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Variable_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Clarify_get_id_error
|
||||
*
|
||||
* This function is invoked when an object get ID error
|
||||
* occurs to determine the specific ITRON error code to return.
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Variable_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Free
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This routine frees a variable memory pool control block to the
|
||||
* inactive chain of free variable memory pool control blocks.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_variable_memory_pool - pointer to variable memory pool control block
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _ITRON_Variable_memory_pool_Free (
|
||||
ITRON_Variable_memory_pool_Control *the_variable_memory_pool
|
||||
)
|
||||
{
|
||||
_ITRON_Objects_Free(
|
||||
&_ITRON_Variable_memory_pool_Information,
|
||||
&the_variable_memory_pool->Object
|
||||
);
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Variable_memory_pool_Get
|
||||
*
|
||||
* DESCRIPTION:
|
||||
*
|
||||
* This function maps variable memory pool IDs to variable memory pool
|
||||
* control blocks. If ID corresponds to a local variable memory pool,
|
||||
* then it returns the variable memory pool control pointer which maps
|
||||
* to ID and location is set to OBJECTS_LOCAL. if the variable memory
|
||||
* pool ID is global and resides on a remote node, then location is set
|
||||
* to OBJECTS_REMOTE, and the variable memory pool is undefined. Otherwise,
|
||||
* location is set to OBJECTS ERROR and the variable memory pool is undefined.
|
||||
*
|
||||
* Input parameters:
|
||||
* id - ITRON variable memory pool ID.
|
||||
* the_location - pointer to a location variable
|
||||
*
|
||||
* Output parameters:
|
||||
* *the_location - location of the object
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE ITRON_Variable_memory_pool_Control
|
||||
*_ITRON_Variable_memory_pool_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
return (ITRON_Variable_memory_pool_Control *) _ITRON_Objects_Get(
|
||||
&_ITRON_Variable_memory_pool_Information,
|
||||
id,
|
||||
location
|
||||
);
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Variable_memory_pool_Is_null
|
||||
*
|
||||
* This function returns TRUE if the_variable_memory_pool is NULL
|
||||
* and FALSE otherwise.
|
||||
*
|
||||
* Input parameters:
|
||||
* the_variable_memory_pool - pointer to variable memory pool control block
|
||||
*
|
||||
* Output parameters:
|
||||
* TRUE - if the_variable_memory_pool is NULL
|
||||
* FALSE - otherwise
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE boolean _ITRON_Variable_memory_pool_Is_null (
|
||||
ITRON_Variable_memory_pool_Control *the_variable_memory_pool
|
||||
)
|
||||
{
|
||||
return ( the_variable_memory_pool == NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
include_rtems_itrondir = $(includedir)/rtems/itron
|
||||
|
||||
$(PROJECT_INCLUDE)/rtems/itron:
|
||||
@$(mkinstalldirs) $@
|
||||
$(PROJECT_INCLUDE)/%: %
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
if MACROS
|
||||
include_rtems_itron_HEADERS = rtems/itron/eventflags.inl \
|
||||
rtems/itron/fmempool.inl rtems/itron/intr.inl rtems/itron/mbox.inl \
|
||||
rtems/itron/msgbuffer.inl rtems/itron/network.inl rtems/itron/port.inl \
|
||||
rtems/itron/semaphore.inl rtems/itron/sysmgmt.inl rtems/itron/task.inl \
|
||||
rtems/itron/time.inl rtems/itron/vmempool.inl
|
||||
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/itron \
|
||||
$(include_rtems_itron_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
endif
|
||||
|
||||
all-local: $(PREINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,2 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
@@ -1,76 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_EVENTFLAGS_inl_
|
||||
#define __ITRON_EVENTFLAGS_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Allocate( _flgid ) \
|
||||
(ITRON_Eventflags_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Eventflags_Information, \
|
||||
(_flgid), \
|
||||
sizeof(ITRON_Eventflags_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Eventflags_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Eventflags_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Free( _the_eventflags ) \
|
||||
_ITRON_Objects_Free( &_ITRON_Eventflags_Information, \
|
||||
&(_the_eventflags)->Object )
|
||||
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Get( _id, _location ) \
|
||||
(ITRON_Eventflags_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Eventflags_Information, (_id), (_location) )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Eventflags_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Eventflags_Is_null( _the_eventflags ) \
|
||||
( (_the_eventflags) == NULL );
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_FIXED_MEMORY_POOL_inl_
|
||||
#define __ITRON_FIXED_MEMORY_POOL_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Allocate( _mpfid ) \
|
||||
(ITRON_Fixed_memory_pool_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Fixed_memory_pool_Information, \
|
||||
(_mpfid), \
|
||||
sizeof(ITRON_Fixed_memory_pool_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Fixed_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( \
|
||||
&_ITRON_Fixed_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Free( _the_fixed_memory_pool ) \
|
||||
_ITRON_Objects_Free( \
|
||||
&_ITRON_Fixed_memory_pool_Information, \
|
||||
&(_the_fixed_memory_pool)->Object \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Get( _id, _location ) \
|
||||
(ITRON_Fixed_memory_pool_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Fixed_memory_pool_Information, \
|
||||
(_id), (_location) )
|
||||
|
||||
/*
|
||||
* _ITRON_Fixed_memory_pool_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Fixed_memory_pool_Is_null( _the_fixed_memory_pool ) \
|
||||
( (_the_fixed_memory_pool) == NULL )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_INTERRUPT_inl_
|
||||
#define __ITRON_INTERRUPT_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MAILBOX_inl_
|
||||
#define __ITRON_MAILBOX_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Allocate( _mbxid ) \
|
||||
(ITRON_Mailbox_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Mailbox_Information, \
|
||||
(_mbxid), \
|
||||
sizeof(ITRON_Mailbox_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Mailbox_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Mailbox_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Mailbox_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Free( _the_mailbox ) \
|
||||
_ITRON_Objects_Free( &_ITRON_Mailbox_Information, &(_the_mailbox)->Object )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Mailbox_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Get( _id, _location ) \
|
||||
(ITRON_Mailbox_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Mailbox_Information, (_id), (_location) )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Mailbox_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Mailbox_Is_null( _the_mailbox ) \
|
||||
( (_the_mailbox) == NULL )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_MESSAGE_BUFFER_inl_
|
||||
#define __ITRON_MESSAGE_BUFFER_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Allocate( _mbfid ) \
|
||||
(ITRON_Message_buffer_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Message_buffer_Information, \
|
||||
(_mbfid), \
|
||||
sizeof(ITRON_Message_buffer_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Message_buffer_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Message_buffer_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Message_buffer_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Free( _the_message_buffer ) \
|
||||
_ITRON_Objects_Free( \
|
||||
&_ITRON_Message_buffer_Information, \
|
||||
&(_the_message_buffer)->Object \
|
||||
)
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Message_buffer_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Get( _id, _location ) \
|
||||
(ITRON_Message_buffer_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Message_buffer_Information, (_id), (_location) )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Message_buffer_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Message_buffer_Is_null( _the_message_buffer ) \
|
||||
( (_the_message_buffer) == NULL )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_NETWORK_inl_
|
||||
#define __ITRON_NETWORK_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_PORT_inl_
|
||||
#define __ITRON_PORT_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Allocate( _porid ) \
|
||||
(ITRON_Port_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Port_Information, \
|
||||
(_porid), \
|
||||
sizeof(ITRON_Port_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Port_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Port_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Port_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Free( _the_port ) \
|
||||
_ITRON_Objects_Free( &_ITRON_Port_Information, &(_the_port)->Object )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Port_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Get( _id, _location ) \
|
||||
(ITRON_Port_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Port_Information, (_id), (_location) )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Port_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Port_Is_null( _the_port ) \
|
||||
( (_the_port) == NULL )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_SEMAPHORE_inl_
|
||||
#define __ITRON_SEMAPHORE_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Allocate( _semid ) \
|
||||
(ITRON_Semaphore_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Semaphore_Information, \
|
||||
(_semid), \
|
||||
sizeof(ITRON_Semaphore_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Semaphore_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Semaphore_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Free( _the_semaphore ) \
|
||||
_ITRON_Objects_Free( &_ITRON_Semaphore_Information, &(_the_semaphore)->Object )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Semaphore_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Get( _id, _location ) \
|
||||
(ITRON_Semaphore_Control *) \
|
||||
_ITRON_Objects_Get( &_ITRON_Semaphore_Information, (_id), (_location) )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Semaphore_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Semaphore_Is_null( _the_semaphore ) \
|
||||
( (_the_semaphore) == NULL )
|
||||
|
||||
/*
|
||||
* _ITRON_Semaphore_Translate_core_semaphore_return_code
|
||||
*/
|
||||
|
||||
/* XXX fix me */
|
||||
static ER _ITRON_Semaphore_Translate_core_semaphore_return_code (
|
||||
unsigned32 the_semaphore_status
|
||||
)
|
||||
{
|
||||
/* XXX need to be able to return "E_RLWAI" */
|
||||
switch ( the_semaphore_status ) {
|
||||
case CORE_SEMAPHORE_STATUS_SUCCESSFUL:
|
||||
return E_OK;
|
||||
case CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT:
|
||||
return E_TMOUT;
|
||||
case CORE_SEMAPHORE_WAS_DELETED:
|
||||
return E_DLT;
|
||||
case CORE_SEMAPHORE_TIMEOUT:
|
||||
return E_TMOUT;
|
||||
case CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED:
|
||||
return E_QOVR;
|
||||
case THREAD_STATUS_PROXY_BLOCKING:
|
||||
return THREAD_STATUS_PROXY_BLOCKING;
|
||||
}
|
||||
return E_OK; /* unreached - only to remove warnings */
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TIME_inl_
|
||||
#define __ITRON_TIME_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TASK_inl_
|
||||
#define __ITRON_TASK_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Allocate( _tskid ) \
|
||||
(Thread_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Task_Information, \
|
||||
(_tskid), \
|
||||
sizeof(Thread_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Task_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Task_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Task_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Free( _the_task ) \
|
||||
_ITRON_Objects_Free( &_ITRON_Task_Information, &(_the_task)->Object )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Task_Get
|
||||
*/
|
||||
|
||||
/* XXX fix me */
|
||||
static Thread_Control *_ITRON_Task_Get (
|
||||
ID id,
|
||||
Objects_Locations *location
|
||||
)
|
||||
{
|
||||
if ( id == 0 ) {
|
||||
_Thread_Disable_dispatch();
|
||||
*location = OBJECTS_LOCAL;
|
||||
return _Thread_Executing;
|
||||
}
|
||||
|
||||
return (Thread_Control *)
|
||||
_ITRON_Objects_Get( &_ITRON_Task_Information, id, location );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Task_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Is_null( _the_task ) \
|
||||
( (_the_task) == NULL )
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_tasks_Priority_to_Core
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Priority_to_Core( _ITRON_priority ) \
|
||||
((Priority_Control) (_ITRON_priority))
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_tasks_Core_to_Priority
|
||||
*/
|
||||
|
||||
#define _ITRON_Task_Core_to_Priority( _core_priority ) \
|
||||
((PRI) (_core_priority))
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_TIME_inl_
|
||||
#define __ITRON_TIME_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXX insert inline routines here
|
||||
*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __ITRON_VARIABLE_MEMORY_POOL_inl_
|
||||
#define __ITRON_VARIABLE_MEMORY_POOL_inl_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Allocate
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Allocate( _mplid ) \
|
||||
(ITRON_Variable_memory_pool_Control *)_ITRON_Objects_Allocate_by_index( \
|
||||
&_ITRON_Variable_memory_pool_Information, \
|
||||
(_mplid), \
|
||||
sizeof(ITRON_Variable_memory_pool_Control) \
|
||||
)
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Clarify_allocation_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Clarify_allocation_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_allocation_id_error( \
|
||||
&_ITRON_Variable_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Clarify_get_id_error
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Clarify_get_id_error( _id ) \
|
||||
_ITRON_Objects_Clarify_get_id_error( &_ITRON_Variable_memory_pool_Information, (_id) )
|
||||
|
||||
/*
|
||||
* _ITRON_Variable_memory_pool_Free
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Free( _the_variable_memory_pool ) \
|
||||
_ITRON_Objects_Free( \
|
||||
&_ITRON_Variable_memory_pool_Information, \
|
||||
&(_the_variable_memory_pool)->Object \
|
||||
)
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Variable_memory_pool_Get
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Get( _id, _location ) \
|
||||
(ITRON_Variable_memory_pool_Control *) _ITRON_Objects_Get( \
|
||||
&_ITRON_Variable_memory_pool_Information, \
|
||||
(_id), \
|
||||
(_location) \
|
||||
)
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _ITRON_Variable_memory_pool_Is_null
|
||||
*/
|
||||
|
||||
#define _ITRON_Variable_memory_pool_Is_null( _the_variable_memory_pool ) \
|
||||
( (_the_variable_memory_pool) == NULL )
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
/* end of include file */
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
stamp-h
|
||||
stamp-h.in
|
||||
config.h
|
||||
config.h.in
|
||||
@@ -1,66 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
LIB=$(ARCH)/libitron.a
|
||||
|
||||
INCLUDES = -I.
|
||||
|
||||
TASK_C_FILES = task.c cre_tsk.c del_tsk.c sta_tsk.c ext_tsk.c exd_tsk.c \
|
||||
ter_tsk.c dis_dsp.c ena_dsp.c chg_pri.c rot_rdq.c rel_wai.c get_tid.c \
|
||||
ref_tsk.c
|
||||
|
||||
TASKSYNC_C_FILES = sus_tsk.c rsm_tsk.c frsm_tsk.c slp_tsk.c tslp_tsk.c \
|
||||
wup_tsk.c can_wup.c
|
||||
|
||||
SEMAPHORE_C_FILES = itronsem.c cre_sem.c del_sem.c preq_sem.c ref_sem.c \
|
||||
sig_sem.c twai_sem.c wai_sem.c
|
||||
|
||||
EVENTFLAGS_C_FILES = eventflags.c
|
||||
|
||||
MAILBOX_C_FILES = mbox.c
|
||||
|
||||
MSGBUFFER_C_FILES = msgbuffer.c msgbuffertranslatereturncode.c cre_mbf.c \
|
||||
del_mbf.c prcv_mbf.c psnd_mbf.c rcv_mbf.c ref_mbf.c snd_mbf.c trcv_mbf.c \
|
||||
tsnd_mbf.c
|
||||
|
||||
RENDEZVOUS_C_FILES = port.c
|
||||
|
||||
INTERRUPT_C_FILES = itronintr.c
|
||||
|
||||
VARIABLE_MEMORY_POOL_C_FILES = vmempool.c
|
||||
|
||||
FIXED_MEMORY_POOL_C_FILES = fmempool.c
|
||||
|
||||
TIME_C_FILES = itrontime.c
|
||||
|
||||
CONFIGURATION_C_FILES = sysmgmt.c
|
||||
|
||||
NETWORK_C_FILES = network.c
|
||||
|
||||
C_FILES = $(TASK_C_FILES) $(TASKSYNC_C_FILES) $(SEMAPHORE_C_FILES) \
|
||||
$(EVENTFLAGS_C_FILES) $(MAILBOX_C_FILES) $(MSGBUFFER_C_FILES) \
|
||||
$(RENDEZVOUS_C_FILES) $(INTERRUPT_C_FILES) \
|
||||
$(VARIABLE_MEMORY_POOL_C_FILES) $(FIXED_MEMORY_POOL_C_FILES) \
|
||||
$(TIME_C_FILES)
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.o)
|
||||
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
include $(top_srcdir)/../automake/multilib.am
|
||||
include $(top_srcdir)/../automake/compile.am
|
||||
include $(top_srcdir)/../automake/lib.am
|
||||
|
||||
AM_CPPFLAGS += -D__RTEMS_INSIDE__
|
||||
|
||||
all-local: ${ARCH} ${LIB}
|
||||
|
||||
$(LIB): ${OBJS}
|
||||
$(make-library)
|
||||
|
||||
UNUSED_C_FILES = cre_mbx.c del_mbx.c mboxtranslatereturncode.c network.c \
|
||||
prcv_mbx.c rcv_mbx.c ref_mbx.c snd_mbx.c sysmgmt.c trcv_mbx.c
|
||||
|
||||
EXTRA_DIST = $(C_FILES) $(UNUSED_C_FILES)
|
||||
|
||||
include $(top_srcdir)/../automake/local.am
|
||||
@@ -1,13 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
The overall status including a major item todo list is in the Status
|
||||
chapter of the RTEMS ITRON API User's Guide. This file contains very
|
||||
short things that need to be addressed.
|
||||
|
||||
+ unlimited object not support for allocate by index. Support either
|
||||
needs to be added for this type of object or the manager initialization
|
||||
code needs to consider it a fatal error to configure the object class
|
||||
in this mode.
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* can_wup - Cancel Wakeup Request
|
||||
*/
|
||||
|
||||
ER can_wup(
|
||||
INT *p_wupcnt,
|
||||
ID tskid
|
||||
)
|
||||
{
|
||||
register Thread_Control *the_thread;
|
||||
Objects_Locations location;
|
||||
|
||||
the_thread = _ITRON_Task_Get( tskid, &location );
|
||||
switch ( location ) {
|
||||
case OBJECTS_REMOTE:
|
||||
case OBJECTS_ERROR:
|
||||
return _ITRON_Task_Clarify_get_id_error( tskid );
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
/*
|
||||
* XXX - FILL ME IN.
|
||||
*/
|
||||
break;
|
||||
}
|
||||
|
||||
_ITRON_return_errorno( E_OK );
|
||||
}
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* chg_pri - Change Task Priority
|
||||
*/
|
||||
|
||||
ER chg_pri(
|
||||
ID tskid,
|
||||
PRI tskpri
|
||||
)
|
||||
{
|
||||
register Thread_Control *the_thread;
|
||||
Objects_Locations location;
|
||||
Priority_Control new_priority;
|
||||
|
||||
the_thread = _ITRON_Task_Get( tskid, &location );
|
||||
switch ( location ) {
|
||||
case OBJECTS_REMOTE:
|
||||
case OBJECTS_ERROR:
|
||||
return _ITRON_Task_Clarify_get_id_error( tskid );
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
if (_States_Is_dormant( the_thread->current_state ))
|
||||
_ITRON_return_errorno( E_OBJ );
|
||||
|
||||
if (( tskpri <= 0 ) || ( tskpri >= 256 ))
|
||||
_ITRON_return_errorno( E_PAR );
|
||||
|
||||
new_priority = _ITRON_Task_Priority_to_Core( tskpri );
|
||||
the_thread->real_priority = new_priority;
|
||||
|
||||
/*
|
||||
* The priority should not be changed until later if priority
|
||||
* inheratance has occured.
|
||||
*/
|
||||
|
||||
if ( the_thread->resource_count == 0 ||
|
||||
the_thread->current_priority > new_priority )
|
||||
_Thread_Change_priority( the_thread, new_priority, FALSE );
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
_ITRON_return_errorno( E_OK );
|
||||
}
|
||||
|
||||
|
||||
@@ -1,89 +0,0 @@
|
||||
/*
|
||||
* ITRON Message Buffer Manager
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/msgbuffer.h>
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* cre_mbf - Create MessageBuffer
|
||||
*/
|
||||
|
||||
ER cre_mbf(
|
||||
ID mbfid,
|
||||
T_CMBF *pk_cmbf
|
||||
)
|
||||
{
|
||||
CORE_message_queue_Attributes the_msgq_attributes;
|
||||
ITRON_Message_buffer_Control *the_message_buffer;
|
||||
|
||||
/*
|
||||
* Bad pointer to the attributes structure
|
||||
*/
|
||||
|
||||
if ( !pk_cmbf )
|
||||
return E_PAR;
|
||||
|
||||
/*
|
||||
* Bits were set that were note defined.
|
||||
*/
|
||||
|
||||
if (pk_cmbf->mbfatr & ~(TA_TPRI))
|
||||
return E_RSATR;
|
||||
|
||||
if (pk_cmbf->bufsz < 0 || pk_cmbf->maxmsz < 0)
|
||||
return E_PAR;
|
||||
|
||||
if (pk_cmbf->bufsz < pk_cmbf->maxmsz)
|
||||
return E_PAR;
|
||||
|
||||
_Thread_Disable_dispatch(); /* prevents deletion */
|
||||
|
||||
the_message_buffer = _ITRON_Message_buffer_Allocate(mbfid);
|
||||
if ( !the_message_buffer ) {
|
||||
_Thread_Enable_dispatch();
|
||||
return _ITRON_Message_buffer_Clarify_allocation_id_error(mbfid);
|
||||
}
|
||||
|
||||
if ( pk_cmbf->mbfatr & TA_TPRI )
|
||||
the_msgq_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_PRIORITY;
|
||||
else
|
||||
the_msgq_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_FIFO;
|
||||
|
||||
_CORE_message_queue_Initialize(
|
||||
&the_message_buffer->message_queue,
|
||||
&the_msgq_attributes,
|
||||
pk_cmbf->bufsz / pk_cmbf->maxmsz,
|
||||
pk_cmbf->maxmsz
|
||||
);
|
||||
|
||||
_ITRON_Objects_Open( &_ITRON_Message_buffer_Information,
|
||||
&the_message_buffer->Object );
|
||||
|
||||
/*
|
||||
* If multiprocessing were supported, this is where we would announce
|
||||
* the existence of the semaphore to the rest of the system.
|
||||
*/
|
||||
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
#endif
|
||||
|
||||
_Thread_Enable_dispatch();
|
||||
|
||||
return E_OK;
|
||||
}
|
||||
@@ -1,107 +0,0 @@
|
||||
/*
|
||||
* ITRON 3.0 Mailbox Manager
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/mbox.h>
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* cre_mbx - Create Mailbox
|
||||
*
|
||||
* Creates a Mailbox according to the following spec:
|
||||
*
|
||||
* ------Parameters-------------------------
|
||||
* ID mbxid MailboxID
|
||||
* T_CMBX *pk_cmbx Packet to Create Mailbox
|
||||
* -----------------------------------------
|
||||
* -*pk_cmbx members*-
|
||||
* VP exinf ExtendedInformation
|
||||
* ATR mbxatr MailboxAttributes
|
||||
* (the use of the following information
|
||||
* is implementation dependent)
|
||||
* INT bufcnt BufferMessageCount
|
||||
* (CPU and/or implementation-dependent information
|
||||
* may also be included)
|
||||
*
|
||||
* ----Return Parameters--------------------
|
||||
* ER ercd ErrorCode
|
||||
* -----------------------------------------
|
||||
*
|
||||
*
|
||||
* ----C Language Interface-----------------
|
||||
* ER ercd = cre_mbx ( ID mbxid, T_CMBX *pk_cmbx ) ;
|
||||
* -----------------------------------------
|
||||
*
|
||||
*/
|
||||
|
||||
ER cre_mbx(
|
||||
ID mbxid,
|
||||
T_CMBX *pk_cmbx
|
||||
)
|
||||
{
|
||||
register ITRON_Mailbox_Control *the_mailbox;
|
||||
CORE_message_queue_Attributes the_mailbox_attributes;
|
||||
|
||||
if ( !pk_cmbx )
|
||||
return E_PAR;
|
||||
|
||||
if ((pk_cmbx->mbxatr & (TA_TPRI | TA_MPRI)) != 0 )
|
||||
return E_RSATR;
|
||||
|
||||
_Thread_Disable_dispatch(); /* protects object pointer */
|
||||
|
||||
the_mailbox = _ITRON_Mailbox_Allocate( mbxid );
|
||||
if ( !the_mailbox ) {
|
||||
_Thread_Enable_dispatch();
|
||||
return _ITRON_Mailbox_Clarify_allocation_id_error( mbxid );
|
||||
}
|
||||
|
||||
the_mailbox->count = pk_cmbx->bufcnt;
|
||||
if (pk_cmbx->mbxatr & TA_MPRI)
|
||||
the_mailbox->do_message_priority = TRUE;
|
||||
else
|
||||
the_mailbox->do_message_priority = FALSE;
|
||||
|
||||
if (pk_cmbx->mbxatr & TA_TPRI)
|
||||
the_mailbox_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_PRIORITY;
|
||||
else
|
||||
the_mailbox_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_FIFO;
|
||||
|
||||
if ( !_CORE_message_queue_Initialize(
|
||||
&the_mailbox->message_queue,
|
||||
OBJECTS_ITRON_MAILBOXES,
|
||||
&the_mailbox_attributes,
|
||||
the_mailbox->count,
|
||||
sizeof(T_MSG *),
|
||||
NULL ) ) { /* Multiprocessing not supported */
|
||||
_ITRON_Mailbox_Free(the_mailbox);
|
||||
_ITRON_return_errorno( E_OBJ );
|
||||
}
|
||||
|
||||
_ITRON_Objects_Open( &_ITRON_Mailbox_Information, &the_mailbox->Object );
|
||||
|
||||
/*
|
||||
* If multiprocessing were supported, this is where we would announce
|
||||
* the existence of the semaphore to the rest of the system.
|
||||
*/
|
||||
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
#endif
|
||||
|
||||
_ITRON_return_errorno( E_OK );
|
||||
}
|
||||
@@ -1,98 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/semaphore.h>
|
||||
#include <rtems/itron/task.h>
|
||||
#include <rtems/score/tod.h>
|
||||
|
||||
/*
|
||||
* cre_sem - Create Semaphore
|
||||
*
|
||||
* This function implements the ITRON 3.0 cre_sem() service.
|
||||
*/
|
||||
|
||||
ER cre_sem(
|
||||
ID semid,
|
||||
T_CSEM *pk_csem
|
||||
)
|
||||
{
|
||||
CORE_semaphore_Attributes the_semaphore_attributes;
|
||||
ITRON_Semaphore_Control *the_semaphore;
|
||||
|
||||
/*
|
||||
* Bad pointer to the attributes structure
|
||||
*/
|
||||
|
||||
if ( !pk_csem )
|
||||
return E_PAR;
|
||||
|
||||
/*
|
||||
* Bits were set that were note defined.
|
||||
*/
|
||||
|
||||
if ( pk_csem->sematr & _ITRON_SEMAPHORE_UNUSED_ATTRIBUTES )
|
||||
return E_RSATR;
|
||||
|
||||
/*
|
||||
* Initial semaphore count exceeds the maximum.
|
||||
*/
|
||||
|
||||
if ( pk_csem->isemcnt > pk_csem->maxsem )
|
||||
return E_PAR;
|
||||
|
||||
/*
|
||||
* This error is not in the specification but this condition
|
||||
* does not make sense.
|
||||
*/
|
||||
|
||||
if ( pk_csem->maxsem == 0 )
|
||||
return E_PAR;
|
||||
|
||||
_Thread_Disable_dispatch(); /* prevents deletion */
|
||||
|
||||
the_semaphore = _ITRON_Semaphore_Allocate( semid );
|
||||
if ( !the_semaphore ) {
|
||||
_Thread_Enable_dispatch();
|
||||
return _ITRON_Semaphore_Clarify_allocation_id_error( semid );
|
||||
}
|
||||
|
||||
if ( pk_csem->sematr & TA_TPRI )
|
||||
the_semaphore_attributes.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
|
||||
else
|
||||
the_semaphore_attributes.discipline = CORE_SEMAPHORE_DISCIPLINES_FIFO;
|
||||
|
||||
the_semaphore_attributes.maximum_count = pk_csem->maxsem;
|
||||
|
||||
_CORE_semaphore_Initialize(
|
||||
&the_semaphore->semaphore,
|
||||
&the_semaphore_attributes,
|
||||
pk_csem->isemcnt
|
||||
);
|
||||
|
||||
_ITRON_Objects_Open( &_ITRON_Semaphore_Information, &the_semaphore->Object );
|
||||
|
||||
/*
|
||||
* If multiprocessing were supported, this is where we would announce
|
||||
* the existence of the semaphore to the rest of the system.
|
||||
*/
|
||||
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
#endif
|
||||
|
||||
_Thread_Enable_dispatch();
|
||||
return E_OK;
|
||||
}
|
||||
@@ -1,124 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
|
||||
/*
|
||||
* cre_tsk - Create Task
|
||||
*/
|
||||
|
||||
ER cre_tsk(
|
||||
ID tskid,
|
||||
T_CTSK *pk_ctsk
|
||||
)
|
||||
{
|
||||
register Thread_Control *the_thread;
|
||||
boolean status;
|
||||
Priority_Control core_priority;
|
||||
|
||||
/*
|
||||
* Validate Parameters.
|
||||
*/
|
||||
|
||||
if ( pk_ctsk == NULL )
|
||||
return E_PAR;
|
||||
|
||||
if ((pk_ctsk->tskatr != TA_ASM ) &&
|
||||
(pk_ctsk->tskatr != TA_HLNG) &&
|
||||
(pk_ctsk->tskatr != TA_COP0) &&
|
||||
(pk_ctsk->tskatr != TA_COP1) &&
|
||||
(pk_ctsk->tskatr != TA_COP2) &&
|
||||
(pk_ctsk->tskatr != TA_COP3) &&
|
||||
(pk_ctsk->tskatr != TA_COP4) &&
|
||||
(pk_ctsk->tskatr != TA_COP5) &&
|
||||
(pk_ctsk->tskatr != TA_COP6) &&
|
||||
(pk_ctsk->tskatr != TA_COP7))
|
||||
return E_RSATR;
|
||||
|
||||
if (( pk_ctsk->itskpri <= 0 ) || ( pk_ctsk->itskpri >= 256 ))
|
||||
return E_PAR;
|
||||
if ( pk_ctsk->task == NULL )
|
||||
return E_PAR;
|
||||
if ( pk_ctsk->stksz < 0 )
|
||||
return E_PAR;
|
||||
|
||||
/*
|
||||
* Disable dispatching.
|
||||
*/
|
||||
|
||||
_Thread_Disable_dispatch();
|
||||
|
||||
/*
|
||||
* allocate the thread.
|
||||
*/
|
||||
|
||||
the_thread = _ITRON_Task_Allocate( tskid );
|
||||
if ( !the_thread )
|
||||
_ITRON_return_errorno( _ITRON_Task_Clarify_allocation_id_error( tskid ) );
|
||||
|
||||
/*
|
||||
* Initialize the core thread for this task.
|
||||
*/
|
||||
|
||||
core_priority = _ITRON_Task_Priority_to_Core( pk_ctsk->itskpri );
|
||||
status = _Thread_Initialize(
|
||||
&_ITRON_Task_Information,
|
||||
the_thread,
|
||||
NULL,
|
||||
pk_ctsk->stksz,
|
||||
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )
|
||||
TRUE, /* XXX - All tasks FP (if the HW supports it) for now */
|
||||
#else
|
||||
FALSE,
|
||||
#endif
|
||||
core_priority,
|
||||
TRUE, /* preemptible */
|
||||
THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE,
|
||||
NULL, /* no budget algorithm callout */
|
||||
0,
|
||||
NULL
|
||||
);
|
||||
|
||||
if ( !status ) {
|
||||
_ITRON_Task_Free( the_thread );
|
||||
_ITRON_return_errorno( E_NOMEM );
|
||||
}
|
||||
|
||||
/*
|
||||
* This insures we evaluate the process-wide signals pending when we
|
||||
* first run.
|
||||
*
|
||||
* NOTE: Since the thread starts with all unblocked, this is necessary.
|
||||
*/
|
||||
|
||||
the_thread->do_post_task_switch_extension = TRUE;
|
||||
|
||||
the_thread->Start.entry_point = (Thread_Entry) pk_ctsk->task;
|
||||
|
||||
_ITRON_return_errorno( E_OK );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
/*
|
||||
* ITRON Message Buffer Manager
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/msgbuffer.h>
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* del_mbf - Delete MessageBuffer
|
||||
*/
|
||||
|
||||
ER del_mbf(
|
||||
ID mbfid
|
||||
)
|
||||
{
|
||||
ITRON_Message_buffer_Control *the_message_buffer;
|
||||
Objects_Locations location;
|
||||
|
||||
the_message_buffer = _ITRON_Message_buffer_Get(mbfid, &location);
|
||||
switch (location) {
|
||||
case OBJECTS_REMOTE:
|
||||
case OBJECTS_ERROR: /* Multiprocessing not supported */
|
||||
return _ITRON_Message_buffer_Clarify_get_id_error(mbfid);
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
_CORE_message_queue_Flush(&the_message_buffer->message_queue);
|
||||
_ITRON_Objects_Close( &_ITRON_Message_buffer_Information,
|
||||
&the_message_buffer->Object);
|
||||
_ITRON_Message_buffer_Free(the_message_buffer);
|
||||
|
||||
/*
|
||||
* If multiprocessing were supported, this is where we would announce
|
||||
* the existence of the semaphore to the rest of the system.
|
||||
*/
|
||||
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
#endif
|
||||
_Thread_Enable_dispatch();
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
return E_OK;
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
/*
|
||||
* ITRON 3.0 Mailbox Manager
|
||||
*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/mbox.h>
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* del_mbx - Delete Mailbox
|
||||
*
|
||||
*
|
||||
* ------Parameters--------------
|
||||
* ID mbxid The Mailbox's ID
|
||||
* ------------------------------
|
||||
*
|
||||
* -----Return Parameters-------
|
||||
* ER ercd Itron Error Code
|
||||
* -----------------------------
|
||||
*
|
||||
* -----C Language Interface----
|
||||
* ER ercd = del_mbx(ID mbxid);
|
||||
* -----------------------------
|
||||
*
|
||||
*/
|
||||
|
||||
ER del_mbx(
|
||||
ID mbxid
|
||||
)
|
||||
{
|
||||
register ITRON_Mailbox_Control *the_mailbox;
|
||||
Objects_Locations location;
|
||||
|
||||
the_mailbox= _ITRON_Mailbox_Get( mbxid, &location );
|
||||
switch ( location ) {
|
||||
case OBJECTS_ERROR:
|
||||
case OBJECTS_REMOTE:
|
||||
return _ITRON_Mailbox_Clarify_get_id_error( mbxid );
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
_Objects_Close( &_ITRON_Mailbox_Information, &the_mailbox->Object );
|
||||
|
||||
_CORE_message_queue_Close(
|
||||
&the_mailbox->message_queue,
|
||||
NULL, /* Multiprocessing not supported */
|
||||
CORE_MESSAGE_QUEUE_STATUS_WAS_DELETED
|
||||
);
|
||||
|
||||
_ITRON_Mailbox_Free(the_mailbox);
|
||||
break;
|
||||
}
|
||||
|
||||
_ITRON_return_errorno( E_OK );
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/semaphore.h>
|
||||
#include <rtems/itron/task.h>
|
||||
#include <rtems/score/tod.h>
|
||||
|
||||
/*
|
||||
* del_sem - Delete Semaphore
|
||||
*
|
||||
* This function implements the ITRON 3.0 del_sem() service.
|
||||
*/
|
||||
|
||||
ER del_sem(
|
||||
ID semid
|
||||
)
|
||||
{
|
||||
ITRON_Semaphore_Control *the_semaphore;
|
||||
Objects_Locations location;
|
||||
|
||||
the_semaphore = _ITRON_Semaphore_Get( semid, &location );
|
||||
switch ( location ) {
|
||||
case OBJECTS_REMOTE: /* Multiprocessing not supported */
|
||||
case OBJECTS_ERROR:
|
||||
return _ITRON_Semaphore_Clarify_get_id_error( semid );
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
_CORE_semaphore_Flush(
|
||||
&the_semaphore->semaphore,
|
||||
NULL, /* Multiprocessing not supported */
|
||||
CORE_SEMAPHORE_WAS_DELETED
|
||||
);
|
||||
|
||||
_ITRON_Objects_Close(
|
||||
&_ITRON_Semaphore_Information,
|
||||
&the_semaphore->Object
|
||||
);
|
||||
|
||||
_ITRON_Semaphore_Free( the_semaphore );
|
||||
|
||||
/*
|
||||
* If multiprocessing were supported, this is where we would announce
|
||||
* the destruction of the semaphore to the rest of the system.
|
||||
*/
|
||||
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
#endif
|
||||
|
||||
_Thread_Enable_dispatch();
|
||||
return E_OK;
|
||||
|
||||
}
|
||||
return E_OK;
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
|
||||
/*
|
||||
* del_tsk - Delete Task
|
||||
*/
|
||||
|
||||
ER del_tsk(
|
||||
ID tskid
|
||||
)
|
||||
{
|
||||
register Thread_Control *the_thread;
|
||||
Objects_Locations location;
|
||||
ER result = E_OK; /* to avoid warning */
|
||||
|
||||
the_thread = _ITRON_Task_Get( tskid, &location );
|
||||
switch ( location ) {
|
||||
case OBJECTS_REMOTE:
|
||||
case OBJECTS_ERROR:
|
||||
return _ITRON_Task_Clarify_get_id_error( tskid );
|
||||
|
||||
case OBJECTS_LOCAL:
|
||||
|
||||
if ( _Thread_Is_executing( the_thread ) )
|
||||
_ITRON_return_errorno( E_OBJ );
|
||||
|
||||
if ( !_States_Is_dormant( the_thread->current_state ) )
|
||||
_ITRON_return_errorno( E_OBJ );
|
||||
|
||||
result = _ITRON_Delete_task( the_thread );
|
||||
break;
|
||||
}
|
||||
|
||||
_ITRON_return_errorno( result );
|
||||
}
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
|
||||
/*
|
||||
* dis_dsp - Disable Dispatch
|
||||
*/
|
||||
|
||||
ER dis_dsp( void )
|
||||
{
|
||||
/*
|
||||
* Disable dispatch for protection
|
||||
*/
|
||||
|
||||
_Thread_Disable_dispatch();
|
||||
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
|
||||
/*
|
||||
* ena_dsp - Enable Dispatch
|
||||
*/
|
||||
|
||||
ER ena_dsp( void )
|
||||
{
|
||||
_Thread_Enable_dispatch();
|
||||
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
@@ -1,160 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
|
||||
#include <rtems/itron/eventflags.h>
|
||||
|
||||
/*
|
||||
* _ITRON_Eventflags_Manager_initialization
|
||||
*
|
||||
* This routine initializes all event flags manager related data structures.
|
||||
*
|
||||
* Input parameters:
|
||||
* maximum_eventflags - maximum configured eventflags
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*/
|
||||
|
||||
void _ITRON_Eventflags_Manager_initialization(
|
||||
unsigned32 maximum_eventflags
|
||||
)
|
||||
{
|
||||
_Objects_Initialize_information(
|
||||
&_ITRON_Eventflags_Information, /* object information table */
|
||||
OBJECTS_ITRON_API, /* object API */
|
||||
OBJECTS_ITRON_EVENTFLAGS, /* object class */
|
||||
maximum_eventflags, /* maximum objects of this class */
|
||||
sizeof( ITRON_Eventflags_Control ),
|
||||
/* size of this object's control block */
|
||||
FALSE, /* TRUE if names for this object are strings */
|
||||
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
||||
#if defined(RTEMS_MULTIPROCESSING)
|
||||
,
|
||||
FALSE, /* TRUE if this is a global object class */
|
||||
NULL /* Proxy extraction support callout */
|
||||
#endif
|
||||
);
|
||||
|
||||
/*
|
||||
* Register the MP Process Packet routine.
|
||||
*
|
||||
* NOTE: No MP Support YET in RTEMS ITRON implementation.
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* cre_flg - Create Eventflag
|
||||
*/
|
||||
|
||||
ER cre_flg(
|
||||
ID flgid,
|
||||
T_CFLG *pk_cflg
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* del_flg - Delete Eventflag
|
||||
*/
|
||||
|
||||
ER del_flg(
|
||||
ID flgid
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* set_flg - Set Eventflag
|
||||
*/
|
||||
|
||||
ER set_flg(
|
||||
ID flgid,
|
||||
UINT setptn
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* clr_flg - Clear Eventflag
|
||||
*/
|
||||
|
||||
ER clr_flg(
|
||||
ID flgid,
|
||||
UINT clrptn
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* wai_flg - Wait on Eventflag
|
||||
*/
|
||||
|
||||
ER wai_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* pol_flg - Wait for Eventflag(Polling)
|
||||
*/
|
||||
|
||||
ER pol_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* twai_flg - Wait on Eventflag with Timeout
|
||||
*/
|
||||
|
||||
ER twai_flg(
|
||||
UINT *p_flgptn,
|
||||
ID flgid,
|
||||
UINT waiptn,
|
||||
UINT wfmode,
|
||||
TMO tmout
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* ref_flg - Reference Eventflag Status
|
||||
*/
|
||||
|
||||
ER ref_flg(
|
||||
T_RFLG *pk_rflg,
|
||||
ID flgid
|
||||
)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
/*
|
||||
* 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.OARcorp.com/rtems/license.html.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <itron.h>
|
||||
#include <assert.h>
|
||||
|
||||
#include <rtems/score/thread.h>
|
||||
#include <rtems/score/userext.h>
|
||||
#include <rtems/score/wkspace.h>
|
||||
#include <rtems/score/apiext.h>
|
||||
#include <rtems/score/sysstate.h>
|
||||
|
||||
#include <rtems/itron/task.h>
|
||||
|
||||
/*
|
||||
* exd_tsk - Exit and Delete Task
|
||||
*/
|
||||
|
||||
void exd_tsk( void )
|
||||
{
|
||||
Objects_Information *the_information;
|
||||
|
||||
_Thread_Disable_dispatch();
|
||||
|
||||
the_information = _Objects_Get_information( _Thread_Executing->Object.id );
|
||||
|
||||
/* This should never happen if _Thread_Get() works right */
|
||||
assert( the_information );
|
||||
|
||||
_Thread_Set_state( _Thread_Executing, STATES_DORMANT );
|
||||
_ITRON_Delete_task( _Thread_Executing );
|
||||
|
||||
_Thread_Enable_dispatch();
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user