diff options
Diffstat (limited to 'cpukit/include/rtems.h')
-rw-r--r-- | cpukit/include/rtems.h | 217 |
1 files changed, 57 insertions, 160 deletions
diff --git a/cpukit/include/rtems.h b/cpukit/include/rtems.h index 1b91965563..cda2bd5b24 100644 --- a/cpukit/include/rtems.h +++ b/cpukit/include/rtems.h @@ -1,197 +1,94 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /** * @file - * + * * @ingroup RTEMSAPIClassic * - * the Public Interface to the RTEMS Classic API + * @brief This header file defines the RTEMS Classic API. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* + * Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) + * Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * This file was automatically generated. Do not edit it manually. + * Please have a look at * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * https://docs.rtems.org/branches/master/eng/req/howto.html + * + * for information how to maintain and re-generate this file. */ #ifndef _RTEMS_H #define _RTEMS_H -/** - * @defgroup RTEMSAPIClassic Classic - * - * @ingroup RTEMSAPI - * - * @brief RTEMS Classic API definitions and modules. - */ -/** @{ */ - -#include <rtems/system.h> -#include <rtems/rtems/status.h> -#include <rtems/rtems/types.h> - #include <rtems/config.h> +#include <rtems/extension.h> +#include <rtems/fatal.h> #include <rtems/init.h> -#include <rtems/rtems/options.h> -#include <rtems/rtems/tasks.h> -#include <rtems/rtems/intr.h> +#include <rtems/io.h> #include <rtems/rtems/barrier.h> #include <rtems/rtems/cache.h> #include <rtems/rtems/clock.h> -#include <rtems/extension.h> -#include <rtems/rtems/timer.h> -#include <rtems/rtems/sem.h> -#include <rtems/rtems/message.h> -#include <rtems/rtems/event.h> -#include <rtems/rtems/signal.h> +#include <rtems/rtems/dpmem.h> #include <rtems/rtems/event.h> +#include <rtems/rtems/intr.h> +#include <rtems/rtems/message.h> #include <rtems/rtems/object.h> +#include <rtems/rtems/options.h> #include <rtems/rtems/part.h> -#include <rtems/rtems/region.h> -#include <rtems/rtems/dpmem.h> -#include <rtems/io.h> -#include <rtems/fatal.h> #include <rtems/rtems/ratemon.h> +#include <rtems/rtems/region.h> +#include <rtems/rtems/sem.h> +#include <rtems/rtems/signal.h> +#include <rtems/rtems/status.h> +#include <rtems/rtems/support.h> +#include <rtems/rtems/tasks.h> +#include <rtems/rtems/timer.h> +#include <rtems/rtems/types.h> + #if defined(RTEMS_MULTIPROCESSING) -#include <rtems/rtems/mp.h> + #include <rtems/rtems/mp.h> #endif -#include <rtems/rtems/support.h> -#include <rtems/score/stack.h> - #ifdef __cplusplus extern "C" { #endif /** - * @brief Returns the pointer to the RTEMS copyright notice. - */ -const char *rtems_get_copyright_notice(void); - -/** - * @brief Returns the pointer to the RTEMS version string. - */ -const char *rtems_get_version_string(void); - -/** - * @brief Indicates whether this processor variant has hardware floating point - * support. - */ -#define RTEMS_HAS_HARDWARE_FP CPU_HARDWARE_FP - -/********************************************************************** - * CONSTANTS WHICH MAY BE USED IN OBJECT NAME TO ID SEARCHES - **********************************************************************/ - -/** - * @brief Indicates that a search is across all nodes. - */ -#define RTEMS_SEARCH_ALL_NODES OBJECTS_SEARCH_ALL_NODES - -/** - * @brief Indicates that a search is across all nodes except the one the call - * is made from. - */ -#define RTEMS_SEARCH_OTHER_NODES OBJECTS_SEARCH_OTHER_NODES - -/** - * @brief Indicates that the search is to be restricted to the local node. - */ -#define RTEMS_SEARCH_LOCAL_NODE OBJECTS_SEARCH_LOCAL_NODE - -/** - * @brief Indicates that the caller wants to obtain the name of the currently - * executing thread. - * - * This constant is only meaningful when obtaining the name of a task. - */ -#define RTEMS_WHO_AM_I OBJECTS_WHO_AM_I - -/********************************************************************** - * Parameters and return Id's for _Objects_Get_next - **********************************************************************/ - -/** - * @brief Lowest valid index value for the index portion of an object - * identifier. - */ -#define RTEMS_OBJECT_ID_INITIAL_INDEX OBJECTS_ID_INITIAL_INDEX - -/** - * @brief Maximum valid index value for the index portion of an object - * identifier. - */ -#define RTEMS_OBJECT_ID_FINAL_INDEX OBJECTS_ID_FINAL_INDEX - -/** - * @brief Returns the identifier of the object with the lowest valid index - * value. - * - * The object is specified by the API @a _api, the object class @a _class and - * the node @a _node where the object resides. - */ -#define RTEMS_OBJECT_ID_INITIAL(_api, _class, _node) \ - OBJECTS_ID_INITIAL(_api, _class, _node) - -/** - * @brief Maximum valid object identifier. - */ -#define RTEMS_OBJECT_ID_FINAL OBJECTS_ID_FINAL - -/** - * @brief Minimum stack size which every thread must exceed. - * - * It is the minimum stack size recommended for use on this processor. This - * value is selected by the RTEMS developers conservatively to minimize the - * risk of blown stacks for most user applications. Using this constant when - * specifying the task stack size, indicates that the stack size will be at - * least RTEMS_MINIMUM_STACK_SIZE bytes in size. If the user configured minimum - * stack size is larger than the recommended minimum, then it will be used. - */ -#define RTEMS_MINIMUM_STACK_SIZE STACK_MINIMUM_SIZE - -/** - * @brief Specifies that the task should be created with the configured minimum - * stack size. - * - * Using this constant when specifying the task stack size indicates that this - * task is to be created with a stack size of the minimum stack size that was - * configured by the application. If not explicitly configured by the - * application, the default configured minimum stack size is the processor - * dependent value RTEMS_MINIMUM_STACK_SIZE. Since this uses the configured - * minimum stack size value, you may get a stack size that is smaller or larger - * than the recommended minimum. This can be used to provide large stacks for - * all tasks on complex applications or small stacks on applications that are - * trying to conserve memory. - */ -#define RTEMS_CONFIGURED_MINIMUM_STACK_SIZE 0 - -/** - * @brief Constant for indefinite wait. + * @defgroup RTEMSAPIClassic Classic * - * This is actually an illegal interval value. - */ -#define RTEMS_NO_TIMEOUT ((rtems_interval) WATCHDOG_NO_TIMEOUT) - -/** - * @brief An MPCI must support packets of at least this size. - */ -#define RTEMS_MINIMUM_PACKET_SIZE MP_PACKET_MINIMUM_PACKET_SIZE - -/** - * @brief Defines the count of @c uint32_t numbers in a packet which must be - * converted to native format in a heterogeneous system. + * @ingroup RTEMSAPI * - * In packets longer than this value, some of the extra data may be a user - * message buffer which is not automatically endian swapped. + * @brief This group contains the Classic API groups. */ -#define RTEMS_MINIMUN_HETERO_CONVERSION MP_PACKET_MINIMUN_HETERO_CONVERSION #ifdef __cplusplus } #endif -/** @} */ - -#endif -/* end of include file */ +#endif /* _RTEMS_H */ |