Files
openairinterface5g/openair2/COMMON/platform_constants.h
T
Raymond Knopp b93b7073ca Merge remote-tracking branch 'origin/develop' into develop-nr
Conflicts:
	ci-scripts/Jenkinsfile-gitlab
	ci-scripts/buildOnVM.sh
	ci-scripts/checkCodingFormattingRules.sh
	ci-scripts/createVM.sh
	ci-scripts/destroyAllRunningVM.sh
	ci-scripts/reportBuildLocally.sh
	cmake_targets/CMakeLists.txt
	cmake_targets/build_oai
	cmake_targets/tools/build_helper
	common/utils/LOG/log.h
	openair1/PHY/LTE_ESTIMATION/lte_sync_timefreq.c
	openair1/PHY/TOOLS/file_output.c
	openair1/PHY/TOOLS/lte_dfts.c
	openair1/PHY/TOOLS/tools_defs.h
	openair1/PHY/defs_eNB.h
	openair1/PHY/impl_defs_lte.h
	openair1/SCHED_UE/phy_procedures_lte_ue.c
	openair2/COMMON/platform_constants.h
	openair2/COMMON/platform_types.h
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/main.c
	openair2/RRC/LTE/L2_interface.c
	openair2/RRC/LTE/MESSAGES/asn1_msg.c
	openair2/RRC/LTE/MESSAGES/asn1_msg_NB_IoT.c
	openair2/RRC/LTE/rrc_UE.c
	openair2/RRC/LTE/rrc_eNB.c
	openair2/RRC/LTE/rrc_eNB_S1AP.c
	openair2/UTIL/LOG/log.c
	openair3/S1AP/s1ap_common.h
	openair3/S1AP/s1ap_eNB.c
	openair3/S1AP/s1ap_eNB_context_management_procedures.c
	openair3/S1AP/s1ap_eNB_decoder.c
	openair3/S1AP/s1ap_eNB_decoder.h
	openair3/S1AP/s1ap_eNB_handlers.c
	openair3/S1AP/s1ap_eNB_nas_procedures.c
	openair3/S1AP/s1ap_eNB_overload.c
	openair3/S1AP/s1ap_eNB_trace.c
	openair3/TEST/EPC_TEST/play_scenario_decode.c
	openair3/TEST/EPC_TEST/play_scenario_s1ap.c
	openair3/TEST/EPC_TEST/play_scenario_s1ap_compare_ie.c
	targets/COMMON/openairinterface5g_limits.h
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.50PRB.usrpb210.conf
	targets/RT/USER/lte-ran.c
	targets/RT/USER/lte-ru.c
	targets/RT/USER/lte-ue.c
	targets/SIMU/USER/oaisim_functions.c
2018-08-25 18:20:44 +02:00

153 lines
4.5 KiB
C

/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
/*
platform_constants.h
-------------------
AUTHOR : Lionel GAUTHIER and Navid Nikaein
COMPANY : EURECOM
EMAIL : Lionel.Gauthier@eurecom.fr
***************************************************************************/
#ifdef CMAKER
#include "asn_constant.h"
#else
#include "RRC/LTE/MESSAGES/asn1_constants.h"
#endif
#ifndef __PLATFORM_CONSTANTS_H__
# define __PLATFORM_CONSTANTS_H__
#ifdef JUMBO_FRAME
#define NL_MAX_PAYLOAD 18000 /* this should cover the max mtu size*/
#else
#define NL_MAX_PAYLOAD 9000 /* this should cover the max mtu size*/
#endif
#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
#ifdef JUMBO_FRAME
# define MAX_IP_PACKET_SIZE 10000 // 9000
#else
# if defined(OAI_NW_DRIVER_TYPE_ETHERNET)
/* SR: When using ethernet network driver the packet size is 1512 :
* 1500 bytes IP packet + 14 bytes ethernet header
*/
# define MAX_IP_PACKET_SIZE 1514
# else
# define MAX_IP_PACKET_SIZE 1500 // 3000
# endif
#endif
// overwrite the previous deinitions
# define MAX_MODULES NB_MODULES_MAX
#ifndef UE_EXPANSION
# ifdef LARGE_SCALE
# define MAX_MOBILES_PER_ENB 128
# define MAX_MOBILES_PER_ENB_NB_IoT 128
# define MAX_MOBILES_PER_GNB 128
# define MAX_eNB 2
# define MAX_gNB 2
#else
# define MAX_MOBILES_PER_ENB 16
# define MAX_MOBILES_PER_ENB_NB_IoT 16
# define MAX_MOBILES_PER_GNB 16
# define MAX_eNB 2
# define MAX_gNB 2
# endif
#else
# define MAX_MOBILES_PER_ENB 256
# define MAX_MOBILES_PER_ENB_NB_IoT 256
# define MAX_eNB 2
# define MAC_eNG 2
#endif
#define MAX_MANAGED_ENB_PER_MOBILE 2
#define MAX_MANAGED_GNB_PER_MOBILE 2
///NB-IOT
#define NB_RB_MAX_NB_IOT (maxDRB_NB_r13 + 3) //MP: NB_IoT --> 2(DRB)+3(SRBs - 2 is not used) = 5
#define DEFAULT_RAB_ID 1
#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 */
#if (RRC_VERSION >= MAKE_VERSION(10, 0, 0))
#define NB_RB_MBMS_MAX (maxSessionPerPMCH*maxServiceCount)
#else
// Do not allocate unused memory
#define NB_RB_MBMS_MAX 1
#endif
#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
// 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
#define UNUSED_PARAM_MBMS_SESSION_ID 0
#define UNUSED_PARAM_MBMS_SERVICE_ID 0
#define printk printf
#define UNUSED_VARIABLE(vARIABLE) (void)(vARIABLE)
#endif /* __PLATFORM_CONSTANTS_H__ */