@@ -50,26 +50,29 @@ extern "C" {
50
50
#endif
51
51
52
52
#define MBED_ERROR_STATUS_CODE_MASK (0x0000FFFF)
53
+ #define MBED_ERROR_STATUS_CODE_UNSHIFTED_MASK (0x0000FFFF)
53
54
#define MBED_ERROR_STATUS_CODE_POS (0)
54
55
#define MBED_ERROR_STATUS_CODE_FIELD_SIZE (16)
55
56
56
57
#define MBED_ERROR_STATUS_MODULE_MASK (0x00FF0000)
58
+ #define MBED_ERROR_STATUS_MODULE_UNSHIFTED_MASK (0x000000FF)
57
59
#define MBED_ERROR_STATUS_MODULE_POS (16)
58
60
#define MBED_ERROR_STATUS_MODULE_FIELD_SIZE (8)
59
61
60
62
#define MBED_ERROR_STATUS_TYPE_MASK (0x60000000)
63
+ #define MBED_ERROR_STATUS_TYPE_UNSHIFTED_MASK (0x00000003)
61
64
#define MBED_ERROR_STATUS_TYPE_POS (29)
62
65
#define MBED_ERROR_STATUS_TYPE_FIELD_SIZE (2)
63
66
64
67
/* mbed_error_status_t Status Encoding */
65
68
//|31(1 bit) Always Negative|30-29(2 bits) |28-24 | 23-16(8 bits) | 15-0(16 bits) |
66
69
//|-1 |TYPE |(unused/reserved) | MODULE TYPE | ERROR CODE |
67
70
68
- #define MAKE_MBED_ERROR (type , module , error_code ) (mbed_error_status_t) \
69
- ((0x80000000) | \
70
- (MBED_ERROR_STATUS_CODE_MASK & (error_code << MBED_ERROR_STATUS_CODE_POS)) | \
71
- (MBED_ERROR_STATUS_MODULE_MASK & (module << MBED_ERROR_STATUS_MODULE_POS)) | \
72
- (MBED_ERROR_STATUS_TYPE_MASK & (type << MBED_ERROR_STATUS_TYPE_POS) ))
71
+ #define MAKE_MBED_ERROR (type , module , error_code ) (mbed_error_status_t) \
72
+ ((0x80000000) | \
73
+ ((mbed_error_status_t) (error_code & MBED_ERROR_STATUS_CODE_UNSHIFTED_MASK) << MBED_ERROR_STATUS_CODE_POS) | \
74
+ ((mbed_error_status_t) (module & MBED_ERROR_STATUS_MODULE_UNSHIFTED_MASK) << MBED_ERROR_STATUS_MODULE_POS) | \
75
+ ((mbed_error_status_t) (type & MBED_ERROR_STATUS_TYPE_UNSHIFTED_MASK) << MBED_ERROR_STATUS_TYPE_POS))
73
76
74
77
#define MBED_GET_ERROR_TYPE ( error_status ) ((error_status & MBED_ERROR_STATUS_TYPE_MASK) >> MBED_ERROR_STATUS_TYPE_POS)
75
78
#define MBED_GET_ERROR_MODULE ( error_status ) ((error_status & MBED_ERROR_STATUS_MODULE_MASK) >> MBED_ERROR_STATUS_MODULE_POS)
@@ -83,7 +86,7 @@ extern "C" {
83
86
*
84
87
\verbatim
85
88
| 31 Always Negative | 30-29(2 bits) | 28-24 | 23-16(8 bits) | 15-0(16 bits) |
86
- | -1 | TYPE | (unused/reserved) | MODULE TYPE | ERROR CODE |
89
+ | -1 | TYPE | (unused/reserved) | MODULE TYPE | ERROR CODE |
87
90
\endverbatim
88
91
*
89
92
* The error status value range for each error type is as follows:\n
0 commit comments