112 lines
3.7 KiB
C
112 lines
3.7 KiB
C
/**
|
|
* \file
|
|
*
|
|
* \brief Status code definitions.
|
|
*
|
|
* This file defines various status codes returned by functions,
|
|
* indicating success or failure as well as what kind of failure.
|
|
*
|
|
* Copyright (c) 2009-2018 Microchip Technology Inc. and its subsidiaries.
|
|
*
|
|
* \asf_license_start
|
|
*
|
|
* \page License
|
|
*
|
|
* Subject to your compliance with these terms, you may use Microchip
|
|
* software and any derivatives exclusively with Microchip products.
|
|
* It is your responsibility to comply with third party license terms applicable
|
|
* to your use of third party software (including open source software) that
|
|
* may accompany Microchip software.
|
|
*
|
|
* THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
|
|
* WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
|
|
* INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
|
|
* AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
|
|
* LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
|
|
* LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
|
|
* SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
|
|
* POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
|
|
* ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
|
|
* RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
|
|
* THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
|
|
*
|
|
* \asf_license_stop
|
|
*
|
|
*/
|
|
/*
|
|
* Support and FAQ: visit <a href="https://www.microchip.com/support/">Microchip Support</a>
|
|
*/
|
|
#ifndef STATUS_CODES_H_INCLUDED
|
|
#define STATUS_CODES_H_INCLUDED
|
|
|
|
/**
|
|
* \defgroup group_avr32_utils_status_codes Status Codes
|
|
*
|
|
* \ingroup group_avr32_utils
|
|
*
|
|
* \{
|
|
*/
|
|
|
|
/* Note: this is a local workaround to avoid a pre-processor clash due to the
|
|
* lwIP macro ERR_TIMEOUT. */
|
|
#if defined(__LWIP_ERR_H__) && defined(ERR_TIMEOUT)
|
|
#if (ERR_TIMEOUT != -3)
|
|
|
|
/* Internal check to make sure that the later restore of lwIP's ERR_TIMEOUT
|
|
* macro is set to the correct value. Note that it is highly improbable that
|
|
* this value ever changes in lwIP. */
|
|
#error ASF developers: check lwip err.h new value for ERR_TIMEOUT
|
|
#endif
|
|
#undef ERR_TIMEOUT
|
|
#endif
|
|
|
|
/**
|
|
* Status code that may be returned by shell commands and protocol
|
|
* implementations.
|
|
*
|
|
* \note Any change to these status codes and the corresponding
|
|
* message strings is strictly forbidden. New codes can be added,
|
|
* however, but make sure that any message string tables are updated
|
|
* at the same time.
|
|
*/
|
|
enum status_code {
|
|
STATUS_OK = 0, //!< Success
|
|
ERR_IO_ERROR = -1, //!< I/O error
|
|
ERR_FLUSHED = -2, //!< Request flushed from queue
|
|
ERR_TIMEOUT = -3, //!< Operation timed out
|
|
ERR_BAD_DATA = -4, //!< Data integrity check failed
|
|
ERR_PROTOCOL = -5, //!< Protocol error
|
|
ERR_UNSUPPORTED_DEV = -6, //!< Unsupported device
|
|
ERR_NO_MEMORY = -7, //!< Insufficient memory
|
|
ERR_INVALID_ARG = -8, //!< Invalid argument
|
|
ERR_BAD_ADDRESS = -9, //!< Bad address
|
|
ERR_BUSY = -10, //!< Resource is busy
|
|
ERR_BAD_FORMAT = -11, //!< Data format not recognized
|
|
ERR_NO_TIMER = -12, //!< No timer available
|
|
ERR_TIMER_ALREADY_RUNNING = -13, //!< Timer already running
|
|
ERR_TIMER_NOT_RUNNING = -14, //!< Timer not running
|
|
|
|
/**
|
|
* \brief Operation in progress
|
|
*
|
|
* This status code is for driver-internal use when an operation
|
|
* is currently being performed.
|
|
*
|
|
* \note Drivers should never return this status code to any
|
|
* callers. It is strictly for internal use.
|
|
*/
|
|
OPERATION_IN_PROGRESS = -128,
|
|
};
|
|
|
|
typedef enum status_code status_code_t;
|
|
|
|
#if defined(__LWIP_ERR_H__)
|
|
#define ERR_TIMEOUT -3
|
|
#endif
|
|
|
|
/**
|
|
* \}
|
|
*/
|
|
|
|
#endif /* STATUS_CODES_H_INCLUDED */
|