diff options
Diffstat (limited to 'cpukit/rtems/include/rtems/rtems/status.h')
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/status.h | 263 |
1 files changed, 0 insertions, 263 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/status.h b/cpukit/rtems/include/rtems/rtems/status.h deleted file mode 100644 index c54404ba14..0000000000 --- a/cpukit/rtems/include/rtems/rtems/status.h +++ /dev/null @@ -1,263 +0,0 @@ -/** - * @file rtems/rtems/status.h - * - * @defgroup ClassicStatus Status Codes - * - * @ingroup ClassicRTEMS - * @brief Status Codes Returned from Executive Directives - * - * This include file contains the status codes returned from the - * executive directives. - */ - -/* COPYRIGHT (c) 1989-2013. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifndef _RTEMS_RTEMS_STATUS_H -#define _RTEMS_RTEMS_STATUS_H - -#include <rtems/score/basedefs.h> - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @defgroup ClassicStatus Status Codes - * - * @ingroup ClassicRTEMS - * - * This encapsulates functionality related to the status codes returned - * by Classic API directives. - */ -/**@{*/ - -/** - * @brief Classic API Status - * - * This enumerates the possible status values returned b - * Classic API directives. - */ -typedef enum { - /** - * This is the status to indicate successful completion. - */ - RTEMS_SUCCESSFUL = 0, - /** - * This is the status to indicate that a thread exited. - */ - RTEMS_TASK_EXITTED = 1, - /** - * This is the status to indicate multiprocessing is not configured. - */ - RTEMS_MP_NOT_CONFIGURED = 2, - /** - * This is the status to indicate that the object name was invalid. - */ - RTEMS_INVALID_NAME = 3, - /** - * This is the status to indicate that the object Id was invalid. - */ - RTEMS_INVALID_ID = 4, - /** - * This is the status to indicate you have attempted to create too many - * instances of a particular object class. - */ - RTEMS_TOO_MANY = 5, - /** - * This is the status to indicate that a blocking directive timed out. - */ - RTEMS_TIMEOUT = 6, - /** - * This is the status to indicate the the object was deleted - * while the task was blocked waiting. - */ - RTEMS_OBJECT_WAS_DELETED = 7, - /** - * This is the status to indicate that the specified size was invalid. - */ - RTEMS_INVALID_SIZE = 8, - /** - * This is the status to indicate that the specified address is invalid. - */ - RTEMS_INVALID_ADDRESS = 9, - /** - * This is the status to indicate that the specified number was invalid. - */ - RTEMS_INVALID_NUMBER = 10, - /** - * This is the status to indicate that the item has not been initialized. - */ - RTEMS_NOT_DEFINED = 11, - /** - * This is the status to indicate that the object still has - * resources in use. - */ - RTEMS_RESOURCE_IN_USE = 12, - /** - * This is the status to indicate that the request was not satisfied. - */ - RTEMS_UNSATISFIED = 13, - /** - * This is the status to indicate that a thread is in wrong state - * was in the wrong execution state for the requested operation. - */ - RTEMS_INCORRECT_STATE = 14, - /** - * This is the status to indicate thread was already suspended. - */ - RTEMS_ALREADY_SUSPENDED = 15, - /** - * This is the status to indicate that the operation is illegal - * on calling thread. - */ - RTEMS_ILLEGAL_ON_SELF = 16, - /** - * This is the status to indicate illegal for remote object. - */ - RTEMS_ILLEGAL_ON_REMOTE_OBJECT = 17, - /** - * This is the status to indicate that the operation should not be - * called from from this excecution environment. - */ - RTEMS_CALLED_FROM_ISR = 18, - /** - * This is the status to indicate that an invalid thread priority - * was provided. - */ - RTEMS_INVALID_PRIORITY = 19, - /** - * This is the status to indicate that the specified date/time was invalid. - */ - RTEMS_INVALID_CLOCK = 20, - /** - * This is the status to indicate that the specified node Id was invalid. - */ - RTEMS_INVALID_NODE = 21, - /** - * This is the status to indicate that the directive was not configured. - */ - RTEMS_NOT_CONFIGURED = 22, - /** - * This is the status to indicate that the caller is not the - * owner of the resource. - */ - RTEMS_NOT_OWNER_OF_RESOURCE = 23, - /** - * This is the status to indicate the the directive or requested - * portion of the directive is not implemented. This is a hint - * that you have stumbled across an opportunity to submit code - * to the RTEMS Project. - */ - RTEMS_NOT_IMPLEMENTED = 24, - /** - * This is the status to indicate that an internal RTEMS inconsistency - * was detected. - */ - RTEMS_INTERNAL_ERROR = 25, - /** - * This is the status to indicate that the directive attempted to allocate - * memory but was unable to do so. - */ - RTEMS_NO_MEMORY = 26, - /** - * This is the status to indicate an driver IO error. - */ - RTEMS_IO_ERROR = 27, - /** - * This is the status is used internally to RTEMS when performing - * operations on behalf of remote tasks. This is referred to as - * proxying operations and this status indicates that the operation - * could not be completed immediately and the "proxy is blocking." - * - * @note This status will @b NOT be returned to the user. - */ - RTEMS_PROXY_BLOCKING = 28 -} rtems_status_code; - -/** - * This is the lowest valid value for a Classic API status code. - */ -#define RTEMS_STATUS_CODES_FIRST RTEMS_SUCCESSFUL - -/** - * This is the highest valid value for a Classic API status code. - */ -#define RTEMS_STATUS_CODES_LAST RTEMS_PROXY_BLOCKING - -/** - * @brief Checks if the status code is equal to RTEMS_SUCCESSFUL. - * - * This function returns TRUE if the status code is equal to RTEMS_SUCCESSFUL, - * and FALSE otherwise. - */ -RTEMS_INLINE_ROUTINE bool rtems_is_status_successful( - rtems_status_code code -) -{ - return (code == RTEMS_SUCCESSFUL); -} - -/** - * @brief Checks if the status code1 is equal to code2. - * - * This function returns TRUE if the status code1 is equal to code2, - * and FALSE otherwise. - */ -RTEMS_INLINE_ROUTINE bool rtems_are_statuses_equal( - rtems_status_code code1, - rtems_status_code code2 -) -{ - return (code1 == code2); -} - -/** - * @brief RTEMS Status Code to Errno Mapping Function - * - * This function recieves an RTEMS status code and returns an - * errno error code. The retval values show the mappings between - * rtems_status_codes and errno error codes. - * - * @retval 0 RTEMS_SUCCESSFUL - * @retval EIO RTEMS_TASK_EXITED, RTEMS_MP_NOT_CONFIGURED, RTEMS_INVALID_ID, - * RTEMS_TOO_MANY, RTEMS_OBJECT_WAS_DELETED, RTEMS_INVALID_SIZE, - * RTEMS_INVALID_ADDRESS, RTEMS_NOT_DEFINED, RTEMS_INCORRECT_STATE, - * RTEMS_ILLEGAL_ON_SELF, RTEMS_ILLEGAL_ON_REMOTE_OBJECT, - * RTEMS_CALLED_FROM_ISR, RTEMS_INVALID_PRIORITY, RTEMS_INTERNAL_ERROR, - * RTEMS_IO_ERROR, RTEMS_PROXY_BLOCKING - * @retval EINVAL RTEMS_INVALID_NAME, RTEMS_INVALID_CLOCK, RTEMS_INVALID_NODE - * @retval ETIMEDOUT RTEMS_TIMEOUT - * @retval EBADF RTEMS_INVALID_NUMBER - * @retval EBUSY RTEMS_RESOURCE_IN_USE - * @retval ENODEV RTEMS_UNSATISFIED - * @retval ENOSYS RTEMS_NOT_IMPLEMENTED, RTEMS_NOT_CONFIGURED - * @retval ENOMEM RTEMS_NO_MEMORY - */ -int rtems_status_code_to_errno(rtems_status_code sc); - -/** - * @brief Returns a text for a status code. - * - * The text for each status code is the enumerator constant. - * - * @param[in] code The status code. - * - * @retval text The status code text. - * @retval "?" The passed status code is invalid. - */ -const char *rtems_status_text( rtems_status_code code ); - -/**@}*/ - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ |