Kenji Arai / mbed-os_TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers crys_rnd_error.h Source File

crys_rnd_error.h

Go to the documentation of this file.
00001 /**************************************************************************************
00002 * Copyright (c) 2016-2017, ARM Limited or its affiliates. All rights reserved         *
00003 *                                                                                     *
00004 * This file and the related binary are licensed under the following license:          *
00005 *                                                                                     *
00006 * ARM Object Code and Header Files License, v1.0 Redistribution.                      *
00007 *                                                                                     *
00008 * Redistribution and use of object code, header files, and documentation, without     *
00009 * modification, are permitted provided that the following conditions are met:         *
00010 *                                                                                     *
00011 * 1) Redistributions must reproduce the above copyright notice and the                *
00012 *    following disclaimer in the documentation and/or other materials                 *
00013 *    provided with the distribution.                                                  *
00014 *                                                                                     *
00015 * 2) Unless to the extent explicitly permitted by law, no reverse                     *
00016 *    engineering, decompilation, or disassembly of is permitted.                      *
00017 *                                                                                     *
00018 * 3) Redistribution and use is permitted solely for the purpose of                    *
00019 *    developing or executing applications that are targeted for use                   *
00020 *    on an ARM-based product.                                                         *
00021 *                                                                                     *
00022 * DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND                  *
00023 * CONTRIBUTORS "AS IS." ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT             *
00024 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT,        *
00025 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE          *
00026 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,   *
00027 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED            *
00028 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR              *
00029 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF              *
00030 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING                *
00031 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS                  *
00032 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                        *
00033 **************************************************************************************/
00034 
00035 
00036 
00037 
00038 #ifndef CRYS_RND_ERROR_H
00039 #define CRYS_RND_ERROR_H
00040 
00041 #include "crys_error.h"
00042 
00043 #ifdef __cplusplus
00044 extern "C"
00045 {
00046 #endif
00047 
00048 
00049 /*!
00050 @file
00051 @brief This module contains the definitions of the CRYS RND errors.
00052 @defgroup crys_rnd_error CryptoCell RND specific errors
00053 @{
00054 @ingroup crys_rnd
00055 */
00056 
00057 
00058 
00059 /************************ Defines ******************************/
00060 /*! RND module on the CRYS layer base address - 0x00F00C00 */
00061 
00062 /*! Illegal output pointer.*/
00063 #define CRYS_RND_DATA_OUT_POINTER_INVALID_ERROR        (CRYS_RND_MODULE_ERROR_BASE + 0x0UL)
00064 /*! Random generation in range failed .*/
00065 #define CRYS_RND_CAN_NOT_GENERATE_RAND_IN_RANGE        (CRYS_RND_MODULE_ERROR_BASE + 0x1UL)
00066 /*! CPRNGT test failed.*/
00067 #define CRYS_RND_CPRNG_TEST_FAIL_ERROR             (CRYS_RND_MODULE_ERROR_BASE + 0x2UL)
00068 /*! Illegal additional data buffer. */
00069 #define CRYS_RND_ADDITIONAL_INPUT_BUFFER_NULL          (CRYS_RND_MODULE_ERROR_BASE + 0x3UL)
00070 /*! Illegal additional data size. */
00071 #define CRYS_RND_ADDITIONAL_INPUT_SIZE_ERROR           (CRYS_RND_MODULE_ERROR_BASE + 0x4UL)
00072 /*! Data size overflow. */
00073 #define CRYS_RND_DATA_SIZE_OVERFLOW_ERROR          (CRYS_RND_MODULE_ERROR_BASE + 0x5UL)
00074 /*! Illegal vector size. */
00075 #define CRYS_RND_VECTOR_SIZE_ERROR          (CRYS_RND_MODULE_ERROR_BASE + 0x6UL)
00076 /*! Reseed counter overflow - in case this error was returned instantiation or reseeding operation must be called. */
00077 #define CRYS_RND_RESEED_COUNTER_OVERFLOW_ERROR      (CRYS_RND_MODULE_ERROR_BASE + 0x7UL)
00078 /*! Instantiation was not yet called. */
00079 #define CRYS_RND_INSTANTIATION_NOT_DONE_ERROR       (CRYS_RND_MODULE_ERROR_BASE + 0x8UL)
00080 /*! TRNG loss of samples. */
00081 #define CRYS_RND_TRNG_LOSS_SAMPLES_ERROR               (CRYS_RND_MODULE_ERROR_BASE + 0x9UL)
00082 /*! TRNG Time exceeded limitations. */
00083 #define CRYS_RND_TRNG_TIME_EXCEED_ERROR             (CRYS_RND_MODULE_ERROR_BASE + 0xAUL)
00084 /*! TRNG loss of samples and time exceeded limitations. */
00085 #define CRYS_RND_TRNG_LOSS_SAMPLES_AND_TIME_EXCEED_ERROR (CRYS_RND_MODULE_ERROR_BASE + 0xBUL)
00086 /*! RND is in Known Answer Test mode. */
00087 #define CRYS_RND_IS_KAT_MODE_ERROR                     (CRYS_RND_MODULE_ERROR_BASE + 0xCUL)
00088 /*! RND operation not supported. */
00089 #define CRYS_RND_OPERATION_IS_NOT_SUPPORTED_ERROR      (CRYS_RND_MODULE_ERROR_BASE + 0xDUL)
00090 /*! RND validity check failed. */
00091 #define CRYS_RND_STATE_VALIDATION_TAG_ERROR            (CRYS_RND_MODULE_ERROR_BASE + 0xEUL)
00092 /*! RND is not supported. */
00093 #define CRYS_RND_IS_NOT_SUPPORTED                      (CRYS_RND_MODULE_ERROR_BASE + 0xFUL)
00094 
00095 /*! Illegal generate vector function pointer. */
00096 #define CRYS_RND_GEN_VECTOR_FUNC_ERROR                  (CRYS_RND_MODULE_ERROR_BASE + 0x14UL)
00097 
00098 /*! Illegal work buffer pointer. */
00099 #define CRYS_RND_WORK_BUFFER_PTR_INVALID_ERROR          (CRYS_RND_MODULE_ERROR_BASE + 0x20UL)
00100 /*! Illegal AES key size. */
00101 #define CRYS_RND_ILLEGAL_AES_KEY_SIZE_ERROR             (CRYS_RND_MODULE_ERROR_BASE + 0x21UL)
00102 /*! Illegal data pointer. */
00103 #define CRYS_RND_ILLEGAL_DATA_PTR_ERROR                 (CRYS_RND_MODULE_ERROR_BASE + 0x22UL)
00104 /*! Illegal data size. */
00105 #define CRYS_RND_ILLEGAL_DATA_SIZE_ERROR                (CRYS_RND_MODULE_ERROR_BASE + 0x23UL)
00106 /*! Illegal parameter. */
00107 #define CRYS_RND_ILLEGAL_PARAMETER_ERROR                (CRYS_RND_MODULE_ERROR_BASE + 0x24UL)
00108 /*! Illegal RND state pointer. */
00109 #define CRYS_RND_STATE_PTR_INVALID_ERROR                (CRYS_RND_MODULE_ERROR_BASE + 0x25UL)
00110 /*! TRNG errors. */
00111 #define CRYS_RND_TRNG_ERRORS_ERROR                      (CRYS_RND_MODULE_ERROR_BASE + 0x26UL)
00112 /*! Illegal context pointer. */
00113 #define CRYS_RND_CONTEXT_PTR_INVALID_ERROR              (CRYS_RND_MODULE_ERROR_BASE + 0x27UL)
00114 
00115 /*! Illegal output vector pointer. */
00116 #define CRYS_RND_VECTOR_OUT_PTR_ERROR                   (CRYS_RND_MODULE_ERROR_BASE + 0x30UL)
00117 /*! Illegal output vector size. */
00118 #define CRYS_RND_VECTOR_OUT_SIZE_ERROR          (CRYS_RND_MODULE_ERROR_BASE + 0x31UL)
00119 /*! Maximal vector size is too small. */
00120 #define CRYS_RND_MAX_VECTOR_IS_TOO_SMALL_ERROR      (CRYS_RND_MODULE_ERROR_BASE + 0x32UL)
00121 /*! Illegal Known Answer Tests parameters. */
00122 #define CRYS_RND_KAT_DATA_PARAMS_ERROR                  (CRYS_RND_MODULE_ERROR_BASE + 0x33UL)
00123 /*! TRNG Known Answer Test not supported. */
00124 #define CRYS_RND_TRNG_KAT_NOT_SUPPORTED_ERROR           (CRYS_RND_MODULE_ERROR_BASE + 0x34UL)
00125 /*! SRAM memory is not defined. */
00126 #define CRYS_RND_SRAM_NOT_SUPPORTED_ERROR               (CRYS_RND_MODULE_ERROR_BASE + 0x35UL)
00127 /*! AES operation failure. */
00128 #define CRYS_RND_AES_ERROR                              (CRYS_RND_MODULE_ERROR_BASE + 0x36UL)
00129 
00130 
00131 /************************ Enums ********************************/
00132 
00133 
00134 /************************ Typedefs  ****************************/
00135 
00136 
00137 /************************ Structs  ******************************/
00138 
00139 
00140 /************************ Public Variables **********************/
00141 
00142 
00143 /************************ Public Functions **********************/
00144 
00145 #ifdef __cplusplus
00146 }
00147 #endif
00148 /**
00149 @}
00150  */
00151 #endif
00152 
00153