From d2e42029ec04c3f224580f8007cdfbbfe0fc47a6 Mon Sep 17 00:00:00 2001 From: Fulup Ar Foll Date: Fri, 26 May 2017 18:45:56 +0200 Subject: Initial Commit --- ucs2-lib/inc/ucs_ret_pb.h | 141 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 ucs2-lib/inc/ucs_ret_pb.h (limited to 'ucs2-lib/inc/ucs_ret_pb.h') diff --git a/ucs2-lib/inc/ucs_ret_pb.h b/ucs2-lib/inc/ucs_ret_pb.h new file mode 100644 index 0000000..779d80a --- /dev/null +++ b/ucs2-lib/inc/ucs_ret_pb.h @@ -0,0 +1,141 @@ +/*------------------------------------------------------------------------------------------------*/ +/* UNICENS V2.1.0-3491 */ +/* Copyright (c) 2017 Microchip Technology Germany II GmbH & Co. KG. */ +/* */ +/* This program is free software: you can redistribute it and/or modify */ +/* it under the terms of the GNU General Public License as published by */ +/* the Free Software Foundation, either version 2 of the License, or */ +/* (at your option) any later version. */ +/* */ +/* This program is distributed in the hope that it will be useful, */ +/* but WITHOUT ANY WARRANTY; without even the implied warranty of */ +/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ +/* GNU General Public License for more details. */ +/* */ +/* You should have received a copy of the GNU General Public License */ +/* along with this program. If not, see . */ +/* */ +/* You may also obtain this software under a propriety license from Microchip. */ +/* Please contact Microchip for further information. */ +/*------------------------------------------------------------------------------------------------*/ + +/*! + * \file + * \brief This header file contains standard return values used by UNICENS functions + * and methods. + * \addtogroup G_UCS_INIT_AND_SRV_TYPES + * @{ + */ + +#ifndef UCS_RET_H +#define UCS_RET_H + +#ifdef __cplusplus +extern "C" +{ +#endif + +/*------------------------------------------------------------------------------------------------*/ +/* Enumerations */ +/*------------------------------------------------------------------------------------------------*/ +/*! \brief Standard return codes used for synchronous response */ +typedef enum Ucs_Return_ +{ + UCS_RET_SUCCESS = 0x00, /*!< \brief Operation successfully completed */ + UCS_RET_ERR_PARAM = 0x01, /*!< \brief At least one parameter exceeds its + admissible range */ + UCS_RET_ERR_BUFFER_OVERFLOW = 0x02, /*!< \brief Buffer overflow or service busy */ + UCS_RET_ERR_NOT_AVAILABLE = 0x03, /*!< \brief Functionality not available */ + UCS_RET_ERR_NOT_SUPPORTED = 0x04, /*!< \brief This function is not supported by this + derivative of INIC / physical layer / MOST + speed */ + UCS_RET_ERR_INVALID_SHADOW = 0x05, /*!< \brief The requested information is not yet + available */ + UCS_RET_ERR_ALREADY_SET = 0x06, /*!< \brief The value to be set is already set. The + application can therefore be aware that no + message will be send to INIC and no + callback will be called */ + UCS_RET_ERR_API_LOCKED = 0x07, /*!< \brief INIC performs already requested function. */ + UCS_RET_ERR_NOT_INITIALIZED = 0x08 /*!< \brief UNICENS is not initialized */ + +} Ucs_Return_t; + +/*! \brief Result codes used for asynchronous response */ +typedef enum Ucs_Result_ +{ + UCS_RES_SUCCESS = 0x00, /*!< \brief Operation successfully completed */ + UCS_RES_ERR_MOST_STANDARD = 0x01, /*!< \brief MOST standard error occurred */ + UCS_RES_ERR_BUSY = 0x02, /*!< \brief Function currently busy */ + UCS_RES_ERR_PROCESSING = 0x03, /*!< \brief Processing error occurred */ + UCS_RES_ERR_CONFIGURATION = 0x04, /*!< \brief Configuration error occurred */ + UCS_RES_ERR_SYSTEM = 0x05, /*!< \brief System error occurred */ + UCS_RES_ERR_TIMEOUT = 0x06, /*!< \brief Timeout occurred */ + UCS_RES_ERR_TRANSMISSION = 0x07 /*!< \brief Transmission error occurred */ + +} Ucs_Result_t; + +/*! \brief Result values of initialization result callback function */ +typedef enum Ucs_InitResult_ +{ + UCS_INIT_RES_SUCCESS = 0x00U, /*!< \brief Initialization succeeded */ + UCS_INIT_RES_ERR_BUF_OVERFLOW = 0x01U, /*!< \brief No message buffer available */ + UCS_INIT_RES_ERR_INIC_SYNC = 0x02U, /*!< \brief INIC synchronization failed */ + UCS_INIT_RES_ERR_INIC_VERSION = 0x03U, /*!< \brief INIC device version check failed */ + UCS_INIT_RES_ERR_INIC_SYSTEM = 0x04U, /*!< \brief Device attach failed due to an INIC + * system error + */ + UCS_INIT_RES_ERR_DEV_ATT_CFG = 0x05U, /*!< \brief INIC device attach failed due to an + * configuration error + */ + UCS_INIT_RES_ERR_DEV_ATT_PROC = 0x06U, /*!< \brief Device attach failed due to a + * processing error + */ + UCS_INIT_RES_ERR_NET_CFG = 0x07U, /*!< \brief Network Configuration request failed */ + UCS_INIT_RES_ERR_INTERNAL = 0x0AU, /*!< \brief Internal error occurred */ + UCS_INIT_RES_ERR_TIMEOUT = 0x0BU /*!< \brief Initialization timeout occurred */ + +} Ucs_InitResult_t; + +/*------------------------------------------------------------------------------------------------*/ +/* Structures */ +/*------------------------------------------------------------------------------------------------*/ +/*! \brief Standard result structure which provides fields for detailed status and + * error information + */ +typedef struct Ucs_StdResult_ +{ + Ucs_Result_t code; /*!< \brief Result/Error code */ + uint8_t *info_ptr; /*!< \brief INIC error data */ + uint8_t info_size; /*!< \brief Size of the INIC error data in bytes */ + +} Ucs_StdResult_t; + +/*------------------------------------------------------------------------------------------------*/ +/* Types */ +/*------------------------------------------------------------------------------------------------*/ +/*! \brief Function signature used for UNICENS standard result callbacks + * \param result Result of the callback + * \param user_ptr User reference provided in \ref Ucs_InitData_t "Ucs_InitData_t::user_ptr" + */ +typedef void (*Ucs_StdResultCb_t)(Ucs_StdResult_t result, void *user_ptr); + +/*! \brief Function signature used for UNICENS standard result callbacks + * \param result Result of the callback + * \param user_ptr User reference provided in \ref Ucs_InitData_t "Ucs_InitData_t::user_ptr" + */ +typedef void (*Ucs_InitResultCb_t)(Ucs_InitResult_t result, void *user_ptr); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* #ifndef UCS_RET_H */ + +/*! + * @} + */ + +/*------------------------------------------------------------------------------------------------*/ +/* End of file */ +/*------------------------------------------------------------------------------------------------*/ + -- cgit 1.2.3-korg