1 /*------------------------------------------------------------------------------------------------*/
2 /* UNICENS V2.1.0-3491 */
3 /* Copyright (c) 2017 Microchip Technology Germany II GmbH & Co. KG. */
5 /* This program is free software: you can redistribute it and/or modify */
6 /* it under the terms of the GNU General Public License as published by */
7 /* the Free Software Foundation, either version 2 of the License, or */
8 /* (at your option) any later version. */
10 /* This program is distributed in the hope that it will be useful, */
11 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
12 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
13 /* GNU General Public License for more details. */
15 /* You should have received a copy of the GNU General Public License */
16 /* along with this program. If not, see <http://www.gnu.org/licenses/>. */
18 /* You may also obtain this software under a propriety license from Microchip. */
19 /* Please contact Microchip for further information. */
20 /*------------------------------------------------------------------------------------------------*/
24 * \brief Header file of the static memory manager plug-in.
25 * \addtogroup G_UCS_AMS
32 /*------------------------------------------------------------------------------------------------*/
34 /*------------------------------------------------------------------------------------------------*/
35 #include "ucs_rules.h"
42 /*------------------------------------------------------------------------------------------------*/
43 /* Default configuration */
44 /*------------------------------------------------------------------------------------------------*/
45 /*! \def UCS_AMS_NUM_RX_MSGS
46 * \brief Defines the number of reserved Rx message objects.
47 * Valid values: 5..255. Default value: 20.
49 #ifndef UCS_AMS_NUM_RX_MSGS
50 # define UCS_AMS_NUM_RX_MSGS 20
52 # if (UCS_AMS_NUM_RX_MSGS < 5) || (UCS_AMS_NUM_RX_MSGS > 255)
53 # error "UCS_AMS_NUM_RX_MSGS is not properly defined. Choose a value between: 10 and 255."
57 /*! \def UCS_AMS_SIZE_RX_MSG
58 * \brief Defines the payload size in bytes which is available for every Rx message object.
59 * Valid values: 45..65535. Default value: 45.
61 #ifndef UCS_AMS_SIZE_RX_MSG
62 # define UCS_AMS_SIZE_RX_MSG 45
64 # if (UCS_AMS_SIZE_RX_MSG >= 45) && (UCS_AMS_SIZE_RX_MSG <= 65535)
65 # if defined(SMM_FOOTPRINT_TINY) && (UCS_AMS_SIZE_RX_MSG != 45)
66 # error Do not define UCS_AMS_SIZE_RX_MSG together with SMM_FOOTPRINT_TINY.
69 # error UCS_AMS_SIZE_RX_MSG is not properly defined. Choose a value between: 45 and 65535.
73 /*! \def UCS_AMS_NUM_TX_MSGS
74 * \brief Defines the number of reserved Tx message objects.
75 * Valid values: 5..255. Default value: 20.
77 #ifndef UCS_AMS_NUM_TX_MSGS
78 # define UCS_AMS_NUM_TX_MSGS 20
80 # if (UCS_AMS_NUM_TX_MSGS < 5) || (UCS_AMS_NUM_TX_MSGS > 255)
81 # error "UCS_AMS_NUM_TX_MSGS is not properly defined. Choose a value between: 10 and 255."
85 /*! \def UCS_AMS_SIZE_TX_MSG
86 * \brief Defines the payload size in bytes which is available for every Tx message object.
87 * Valid values: 45..65535. Default value: 45.
89 #ifndef UCS_AMS_SIZE_TX_MSG
90 # define UCS_AMS_SIZE_TX_MSG 45
92 # if (UCS_AMS_SIZE_TX_MSG >= 45) && (UCS_AMS_SIZE_TX_MSG <= 65535)
93 # if defined(SMM_FOOTPRINT_TINY) && (UCS_AMS_SIZE_TX_MSG != 45)
94 # error "Do not define UCS_AMS_SIZE_TX_MSG together with SMM_FOOTPRINT_TINY."
97 # error "UCS_AMS_SIZE_TX_MSG is not properly defined. Choose a value between: 45 and 65535."
105 #endif /* #ifndef UCS_SMM_API_H */
111 /*------------------------------------------------------------------------------------------------*/
113 /*------------------------------------------------------------------------------------------------*/