| LPCOpen Platform v1.03 LPCOpen Platform for NXP LPC Microcontrollers

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
error.h
Go to the documentation of this file.
1 /*
2 * @brief Error code returned by Boot ROM drivers/library functions
3 * @ingroup Common
4 *
5 * This file contains unified error codes to be used across driver,
6 * middleware, applications, hal and demo software.
7 *
8 *
9 * @note
10 * Copyright(C) NXP Semiconductors, 2012
11 * All rights reserved.
12 *
13 * @par
14 * Software that is described herein is for illustrative purposes only
15 * which provides customers with programming information regarding the
16 * LPC products. This software is supplied "AS IS" without any warranties of
17 * any kind, and NXP Semiconductors and its licensor disclaim any and
18 * all warranties, express or implied, including all implied warranties of
19 * merchantability, fitness for a particular purpose and non-infringement of
20 * intellectual property rights. NXP Semiconductors assumes no responsibility
21 * or liability for the use of the software, conveys no license or rights under any
22 * patent, copyright, mask work right, or any other intellectual property rights in
23 * or to any products. NXP Semiconductors reserves the right to make changes
24 * in the software without notification. NXP Semiconductors also makes no
25 * representation or warranty that such application will be suitable for the
26 * specified use without further testing or modification.
27 *
28 * @par
29 * Permission to use, copy, modify, and distribute this software and its
30 * documentation is hereby granted, under NXP Semiconductors' and its
31 * licensor's relevant copyrights in the software, without fee, provided that it
32 * is used in conjunction with NXP Semiconductors microcontrollers. This
33 * copyright, permission, and disclaimer notice must appear in all copies of
34 * this code.
35 */
36
37 #ifndef __LPC_ERROR_H__
38 #define __LPC_ERROR_H__
39
47 typedef enum
48 { LPC_OK=0, ERR_FAILED = -1,
52 /* ISP related errors */
53 ERR_ISP_BASE = 0x00000000,
54 /*0x00000001*/ ERR_ISP_INVALID_COMMAND = ERR_ISP_BASE + 1,
55 /*0x00000002*/ ERR_ISP_SRC_ADDR_ERROR, /* Source address not on word boundary */
56 /*0x00000003*/ ERR_ISP_DST_ADDR_ERROR, /* Destination address not on word or 256 byte boundary */
57 /*0x00000004*/ ERR_ISP_SRC_ADDR_NOT_MAPPED,
58 /*0x00000005*/ ERR_ISP_DST_ADDR_NOT_MAPPED,
59 /*0x00000006*/ ERR_ISP_COUNT_ERROR, /* Byte count is not multiple of 4 or is not a permitted value */
60 /*0x00000007*/ ERR_ISP_INVALID_SECTOR,
61 /*0x00000008*/ ERR_ISP_SECTOR_NOT_BLANK,
62 /*0x00000009*/ ERR_ISP_SECTOR_NOT_PREPARED_FOR_WRITE_OPERATION,
63 /*0x0000000A*/ ERR_ISP_COMPARE_ERROR,
64 /*0x0000000B*/ ERR_ISP_BUSY, /* Flash programming hardware interface is busy */
65 /*0x0000000C*/ ERR_ISP_PARAM_ERROR, /* Insufficient number of parameters */
66 /*0x0000000D*/ ERR_ISP_ADDR_ERROR, /* Address not on word boundary */
67 /*0x0000000E*/ ERR_ISP_ADDR_NOT_MAPPED,
68 /*0x0000000F*/ ERR_ISP_CMD_LOCKED, /* Command is locked */
69 /*0x00000010*/ ERR_ISP_INVALID_CODE, /* Unlock code is invalid */
70 /*0x00000011*/ ERR_ISP_INVALID_BAUD_RATE,
71 /*0x00000012*/ ERR_ISP_INVALID_STOP_BIT,
72 /*0x00000013*/ ERR_ISP_CODE_READ_PROTECTION_ENABLED,
73
74 /* ROM API related errors */
75 ERR_API_BASE = 0x00010000, ERR_API_INVALID_PARAMS = ERR_API_BASE + 1, ERR_API_INVALID_PARAM1, ERR_API_INVALID_PARAM2, ERR_API_INVALID_PARAM3, ERR_API_MOD_INIT,
82 /* SPIFI API related errors */
83 ERR_SPIFI_BASE = 0x00020000,
84 /*0x00020001*/ ERR_SPIFI_DEVICE_ERROR =ERR_SPIFI_BASE+1,
85 /*0x00020002*/ ERR_SPIFI_INTERNAL_ERROR,
86 /*0x00020003*/ ERR_SPIFI_TIMEOUT,
87 /*0x00020004*/ ERR_SPIFI_OPERAND_ERROR,
88 /*0x00020005*/ ERR_SPIFI_STATUS_PROBLEM,
89 /*0x00020006*/ ERR_SPIFI_UNKNOWN_EXT,
90 /*0x00020007*/ ERR_SPIFI_UNKNOWN_ID,
91 /*0x00020008*/ ERR_SPIFI_UNKNOWN_TYPE,
92 /*0x00020009*/ ERR_SPIFI_UNKNOWN_MFG,
93
94 /* Security API related errors */
95 ERR_SEC_BASE = 0x00030000,
96 /*0x00030001*/ ERR_SEC_AES_WRONG_CMD=ERR_SEC_BASE+1,
97 /*0x00030002*/ ERR_SEC_AES_NOT_SUPPORTED,
98 /*0x00030003*/ ERR_SEC_AES_KEY_ALREADY_PROGRAMMED,
99
100
101 /* USB device stack related errors */
102 ERR_USBD_BASE = 0x00040000, ERR_USBD_INVALID_REQ = ERR_USBD_BASE + 1, ERR_USBD_UNHANDLED, ERR_USBD_STALL, ERR_USBD_SEND_ZLP, ERR_USBD_SEND_DATA, ERR_USBD_BAD_DESC, ERR_USBD_BAD_CFG_DESC, ERR_USBD_BAD_INTF_DESC, ERR_USBD_BAD_EP_DESC, ERR_USBD_BAD_MEM_BUF, ERR_USBD_TOO_MANY_CLASS_HDLR,
115 /* CGU related errors */
116 ERR_CGU_BASE = 0x00050000,
117 /*0x00050001*/ ERR_CGU_NOT_IMPL=ERR_CGU_BASE+1,
118 /*0x00050002*/ ERR_CGU_INVALID_PARAM,
119 /*0x00050003*/ ERR_CGU_INVALID_SLICE,
120 /*0x00050004*/ ERR_CGU_OUTPUT_GEN,
121 /*0x00050005*/ ERR_CGU_DIV_SRC,
122 /*0x00050006*/ ERR_CGU_DIV_VAL,
123 /*0x00050007*/ ERR_CGU_SRC
124
125 } ErrorCode_t;
126
127
128
129 //#define offsetof(s,m) (int)&(((s *)0)->m)
130 #define COMPILE_TIME_ASSERT(pred) switch(0){case 0:case pred:;}
131
132 #endif /* __LPC_ERROR_H__ */