/* platform_constants.h ------------------- AUTHOR : Lionel GAUTHIER COMPANY : EURECOM EMAIL : Lionel.Gauthier@eurecom.fr ***************************************************************************/ #include "RRC/LITE/MESSAGES/asn1_constants.h" #ifndef __PLATFORM_CONSTANTS_H__ # define __PLATFORM_CONSTANTS_H__ #define NL_MAX_PAYLOAD 4096 /* this should cover the max mtu size*/ #ifdef USER_MODE #ifdef LARGE_SCALE # define NB_MODULES_MAX 128 # define NB_NODE_MAX 128 #else # define NB_MODULES_MAX 32 # define NB_NODE_MAX 32 #endif #else # define NB_MODULES_MAX 1 # define NB_NODE_MAX 1 #endif //PHY_EMUL #ifdef JUMBO_FRAME # define MAX_IP_PACKET_SIZE 9000 #else # if defined(OAI_NW_DRIVER_TYPE_ETHERNET) /* SR: When using ethernet network driver the packet size is 1512 : * 1500 bytes IP packet + 12 bytes ethernet header */ # define MAX_IP_PACKET_SIZE 1512 # else # define MAX_IP_PACKET_SIZE 1500 // 3000 # endif #endif // overwrite the previous deinitions # define MAX_MODULES NB_MODULES_MAX #ifdef LARGE_SCALE # define MAX_MOBILES_PER_RG 128 # define MAX_RG 2 #else # define MAX_MOBILES_PER_RG 16 # define MAX_RG 2 #endif #define MAX_MANAGED_RG_PER_MOBILE 2 #define DEFAULT_RAB_ID 3 #define NB_RB_MAX (maxDRB + 3) /* was 11, now 14, maxDRB comes from asn1_constants.h, + 3 because of 3 SRB, one invisible id 0, then id 1 and 2 */ #define NB_RAB_MAX maxDRB /* was 8, now 11 */ #define RAB_SHIFT1 9 #define RAB_SHIFT2 3 #define RAB_OFFSET 0x0007 #define RAB_OFFSET1 0x7E00 #define RAB_OFFSET2 0x01F8 #define DIR_OFFSET 0x8000 #define DIR_SHIFT 15 #define CH_OFFSET 0x0004 #define CH_SHIFT 2 #ifdef MESH //# define MAX_RB_MOBILE NB_RB_MAX * ( MAX_MANAGED_RG_PER_MOBILE + MAX_MOBILES_PER_RG - 1 ) //# define MAX_RAB_MOBILE NB_RAB_MAX * ( MAX_MANAGED_RG_PER_MOBILE + MAX_MOBILES_PER_RG - 1 ) //# define MAX_RB_RG MAX_RB_MOBILE //NB_RB_MAX * MAX_MOBILES_PER_RG //# define MAX_RAB_RG (NB_RB_MAX+1) * (MAX_MOBILES_PER_RG + 1) //# define MAX_RAB MAX_RAB_RG //# define MAX_RB MAX_RB_RG #else //# define MAX_RB_MOBILE NB_RB_MAX * MAX_MANAGED_RG_PER_MOBILE //# define MAX_RAB_MOBILE NB_RAB_MAX * MAX_MANAGED_RG_PER_MOBILE //# define MAX_RB_RG NB_RB_MAX * MAX_MOBILES_PER_RG //# define MAX_RAB_RG NB_RB_MAX * MAX_MOBILES_PER_RG //# ifdef NODE_RG //# define MAX_RAB MAX_RAB_RG //# define MAX_RB MAX_RB_RG //# else //# // ifdef NODE_MT //# // define MAX_RAB MAX_RAB_MOBILE //# // define MAX_RB MAX_RB_MOBILE //# //else //# //error NODE_RG or NODE_MT must be defined //# //endif //# endif #endif //MESH // RLC_MODE # define RLC_NONE (rlc_mode_t)0 # define RLC_MODE_AM (rlc_mode_t)1 # define RLC_MODE_TM (rlc_mode_t)2 # define RLC_MODE_UM (rlc_mode_t)3 //E_R # define E_R_RLC_ER_RELEASE 1 # define E_R_RLC_ER_MODIFICATION 2 # define E_R_RLC_ER_RE_ESTABLISHMENT 4 # define E_R_RLC_ER_STOP 8 # define E_R_RLC_ER_CONTINUE 16 # define E_R_RLC_ER_NONE 0 // RLC_AM_SEND_MRW # define SEND_MRW_OFF 15 # define SEND_MRW_ON 240 // RLC_SEGMENTATION_INDICATION # define SEGMENTATION_NOT_ALLOWED 0 # define SEGMENTATION_ALLOWED 1 // RLC_DELIVERY_OF_ERRONEOUS_SDU # define DELIVERY_OF_ERRONEOUS_SDU_NO 0 # define DELIVERY_OF_ERRONEOUS_SDU_YES 1 # define DELIVERY_OF_ERRONEOUS_SDU_NO_DETECT 2 // CBA constant #define NUM_MAX_CBA_GROUP 4 # ifndef __cplusplus # ifndef NULL # define NULL 0 # endif # ifndef null # define null 0 # endif # endif #ifdef USER_MODE #define printk printf #endif #define UNUSED_VARIABLE(vARIABLE) (void)(vARIABLE) #endif /* __PLATFORM_CONSTANTS_H__ */