#ifndef __BKSECAPP_ERROR_H
#define __BKSECAPP_ERROR_H

#define BKERR_CMD_HANDLER_NOTMATCH_REQLEN                   0xE00101FF
#define BKERR_CMD_HANDLER_NULLPOINT_CMD                     0xE00102FF
#define BKERR_CMD_HANDLER_NOTMATCH_RSPLEN                   0xE00103FF
#define BKERR_CMD_HANDLER_NULLPOINT_RSP                     0xE00104FF
#define BKERR_CMD_HANDLER_CMDBUFFER_ALLOC_FAIL              0xE00105FF
#define BKERR_CMD_HANDLER_RSPBUFFER_ALLOC_FAIL              0xE00106FF
#define BKERR_CMD_HANDLER_CMDBUF_SMALL_FOR_CMDID            0xE00107FF
#define BKERR_CMD_HANDLER_BLOCK_WORKING_DUETO_BOOTCOMPLETE  0xE00108FF
#define BKERR_CMD_HANDLER_UNDEFIND_CMDID                    0xE00109FF

#define BKERR_WARRNATY_READ_QFPROM_ERROR                    0xE0021FFF
#define BKERR_WARRNATY_READ_QFPROM_API_ERROR                0xE0022FFF
#define BKERR_WARRNATY_READ_QFPROM_END                      0xE0023FFF

#define BKERR_WARRNATY_WRITE_SUCCESS                        0 
#define BKERR_WARRNATY_WRITE_QFPROM_ERROR                   0xE0031FFF
#define BKERR_WARRNATY_WRITE_QFPROM_API_ERROR               0xE0032FFF

#define BKERR_EK_READ_QFPROM_ERROR                          0xE00401FF
#define BKERR_EK_READ_QFPROM_API_ERROR                      0xE00402FF

#define BKERR_EK_WRITE_SUCCESS                              0
#define BKERR_EK_WRITE_INVALID_INPUT_VALUE                  0xE00501FF
#define BKERR_EK_WRITE_QFPROM_ERROR                         0xE00502FF
#define BKERR_EK_WRITE_QFPROM_API_ERROR                     0xE00503FF

#define BKERR_BOOTCOM_PROCOM_SUCCESS                        0
#define BKERR_BOOTCOM_PROCOM_READ_OEMBUF_FAIL               0xE00601FF
#define BKERR_BOOTCOM_PROCOM_READ_OEMBUF_FAIL2              0xE00602FF
#define BKERR_BOOTCOM_PROCOM_WRITE_OEMBUF_FAIL              0xE00603FF
#define BKERR_BOOTCOM_PROCOM_WRITE_PERM_DENINED             0xE00604FF
#define BKERR_BOOTCOM_PROCOM_UNNOWN_ACTION                  0xE00605FF
#define BKERR_BOOTCOM_VALUE_UNKNOWN                         0xE00606FF

#define BKERR_WRAP_UNWRAP_SUCCESS                           0
#define BKERR_WRAP_FAILED                                   0xE00701FF
#define BKERR_WRAP_FAILED_INPUT_KEY_LENGTH                  0xE00702FF
#define BKERR_WRAP_INVALID_BUFFER                           0xE00703FF
#define BKERR_WRAP_INPUT_DATA_LENGTH                        0xE00704FF
#define BKERR_WRAP_FAILED_KEY_DERIVE                        0xE00705FF
#define BKERR_WRAP_FAILED_OUTPUT_DATA_LENGTH                0xE00706FF

#define BKERR_UNWRAP_FAILED                                 0xE00801FF
#define BKERR_UNWRAP_FAILED_INPUT_KEY_LENGTH                0xE00802FF
#define BKERR_UNWRAP_INVALID_BUFFER                         0xE00803FF
#define BKERR_UNWRAP_INSUFFICIENT_WRAP_BUFFER               0xE00804FF
#define BKERR_UNWRAP_FAILED_OUTPUT_DATA_LENGTH              0xE00805FF

#define BKERR_AESENC_CIPEHRINIT_FAIL                        0xE00901FF
#define BKERR_AESENC_SETPARAM_KEY_FAIL                      0xE00902FF
#define BKERR_AESENC_SETPARAM_MODE_FAIL                     0xE00903FF
#define BKERR_AESENC_SETPARAM_PAD_FAIL                      0xE00904FF
#define BKERR_AESENC_QSEE_HASH_FAIL                         0xE00905FF
#define BKERR_AESENC_SETPARAM_IV_FAIL                       0xE00906FF
#define BKERR_AESENC_CHPHER_ENCRYPT_FAIL                    0xE00907FF
#define BKERR_AESENC_CHPHER_RESET_FAIL                      0xE00908FF
#define BKERR_AESENC_CHPHER_FREE_FAIL                       0xE00909FF

#define BKERR_AESDEC_CIPEHRINIT_FAIL                        0xE00A01FF
#define BKERR_AESDEC_SETPARAM_KEY_FAIL                      0xE00A02FF
#define BKERR_AESDEC_SETPARAM_MODE_FAIL                     0xE00A03FF
#define BKERR_AESDEC_SETPARAM_PAD_FAIL                      0xE00A04FF
#define BKERR_AESDEC_SETPARAM_IV_FAIL                       0xE00A05FF
#define BKERR_AESDEC_CHPHER_DECRYPT_FAIL                    0xE00A06FF
#define BKERR_AESDEC_QSEE_HASH_FAIL                         0xE00A07FF
#define BKERR_AESDEC_UNWRAP_INTEGRITY_FAIL                  0xE00A08FF
#define BKERR_AESDEC_CHPHER_RESET_FAIL                      0xE00A09FF
#define BKERR_AESDEC_CHPHER_FREE_FAIL                       0xE00A0AFF

#define BKERR_AES_DERKEY_SALT_INVALID                       0xE00B01FF
#define BKERR_AES_DERKEY_ENGKEY_INVALID                     0xE00B02FF
#define BKERR_AES_DERKEY_KDF_FAIL                           0xE00B03FF
#define BKERR_AES_DERKEY_KDF_OVERFLOW_FAIL                  0xE00B04FF

#define BKERR_RPMB_SUCCESS                                  0
#define BKERR_RPMB_FAILURE                                  0xE00C01FF
#define BKERR_RPMB_ADD_OPEN_FAILURE                         0xE00C02FF
#define BKERR_RPMB_NOT_FOUND_CMD                            0xE00C03FF
#define BKERR_RPMB_MISMATCH_STORE_SIZE                      0xE00C04FF

#define BKERR_KDF_CONTEXTLEN_SIZEOVER                       0xE00D01FF
#define BKERR_KDF_API_FAIL                                  0xE00D02FF
#endif
