rrc_messages_types.h 4.47 KB
Newer Older
nikaeinn's avatar
nikaeinn committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*******************************************************************************
    OpenAirInterface
    Copyright(c) 1999 - 2014 Eurecom

    OpenAirInterface is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.


    OpenAirInterface is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with OpenAirInterface.The full GNU General Public License is
   included in this distribution in the file called "COPYING". If not,
   see <http://www.gnu.org/licenses/>.

  Contact Information
  OpenAirInterface Admin: openair_admin@eurecom.fr
  OpenAirInterface Tech : openair_tech@eurecom.fr
  OpenAirInterface Dev  : openair4g-devel@eurecom.fr

  Address      : Eurecom, Compus SophiaTech 450, route des chappes, 06451 Biot, France.

*******************************************************************************/

30
31
32
33
/*
 * rrc_messages_types.h
 *
 *  Created on: Oct 24, 2013
nikaeinn's avatar
nikaeinn committed
34
 *      Author: winckel and Navid Nikaein
35
36
37
38
39
 */

#ifndef RRC_MESSAGES_TYPES_H_
#define RRC_MESSAGES_TYPES_H_

winckel's avatar
RRC:    
winckel committed
40
#include "as_message.h"
winckel's avatar
winckel committed
41
#include "rrc_types.h"
42
#include "s1ap_messages_types.h"
winckel's avatar
RRC:    
winckel committed
43
44
45

//-------------------------------------------------------------------------------------------//
// Messages for RRC logging
46
#if defined(DISABLE_ITTI_XER_PRINT)
47
48
49
#include "BCCH-DL-SCH-Message.h"
#include "DL-CCCH-Message.h"
#include "DL-DCCH-Message.h"
50
#include "UE-EUTRA-Capability.h"
51
52
#include "UL-CCCH-Message.h"
#include "UL-DCCH-Message.h"
53

54
55
56
57
58
59
typedef BCCH_DL_SCH_Message_t   RrcDlBcchMessage;
typedef DL_CCCH_Message_t       RrcDlCcchMessage;
typedef DL_DCCH_Message_t       RrcDlDcchMessage;
typedef UE_EUTRA_Capability_t   RrcUeEutraCapability;
typedef UL_CCCH_Message_t       RrcUlCcchMessage;
typedef UL_DCCH_Message_t       RrcUlDcchMessage;
60
#endif
61
62

//-------------------------------------------------------------------------------------------//
winckel's avatar
RRC:    
winckel committed
63
// Defines to access message fields.
winckel's avatar
winckel committed
64
65
#define RRC_STATE_IND(mSGpTR)           (mSGpTR)->ittiMsg.rrc_state_ind

winckel's avatar
winckel committed
66
#define RRC_CONFIGURATION_REQ(mSGpTR)   (mSGpTR)->ittiMsg.rrc_configuration_req
winckel's avatar
winckel committed
67

winckel's avatar
winckel committed
68
69
70
#define NAS_CELL_SELECTION_REQ(mSGpTR)  (mSGpTR)->ittiMsg.nas_cell_selection_req
#define NAS_CONN_ESTABLI_REQ(mSGpTR)    (mSGpTR)->ittiMsg.nas_conn_establi_req
#define NAS_UPLINK_DATA_REQ(mSGpTR)     (mSGpTR)->ittiMsg.nas_ul_data_req
71

winckel's avatar
winckel committed
72
73
74
75
76
77
78
79
80
#define NAS_RAB_ESTABLI_RSP(mSGpTR)     (mSGpTR)->ittiMsg.nas_rab_est_rsp

#define NAS_CELL_SELECTION_CNF(mSGpTR)  (mSGpTR)->ittiMsg.nas_cell_selection_cnf
#define NAS_CELL_SELECTION_IND(mSGpTR)  (mSGpTR)->ittiMsg.nas_cell_selection_ind
#define NAS_PAGING_IND(mSGpTR)          (mSGpTR)->ittiMsg.nas_paging_ind
#define NAS_CONN_ESTABLI_CNF(mSGpTR)    (mSGpTR)->ittiMsg.nas_conn_establi_cnf
#define NAS_CONN_RELEASE_IND(mSGpTR)    (mSGpTR)->ittiMsg.nas_conn_release_ind
#define NAS_UPLINK_DATA_CNF(mSGpTR)     (mSGpTR)->ittiMsg.nas_ul_data_cnf
#define NAS_DOWNLINK_DATA_IND(mSGpTR)   (mSGpTR)->ittiMsg.nas_dl_data_ind
81
82

//-------------------------------------------------------------------------------------------//
winckel's avatar
winckel committed
83
84
85
86
87
typedef struct RrcStateInd_s{
    Rrc_State_t     state;
    Rrc_Sub_State_t sub_state;
} RrcStateInd;

winckel's avatar
winckel committed
88
89
// eNB: ENB_APP -> RRC messages
typedef struct RrcConfigurationReq_s {
90
    uint32_t            cell_identity;
winckel's avatar
winckel committed
91

92
    uint16_t            tac;
winckel's avatar
winckel committed
93

94
95
    uint16_t            mcc;
    uint16_t            mnc;
nikaeinn's avatar
nikaeinn committed
96
    uint8_t             mnc_digit_length;
97
98
99
100

    paging_drx_t        default_drx;

    lte_frame_type_t    frame_type;
101
102
    uint8_t             tdd_config;
    uint8_t             tdd_config_s;
103
    int16_t             eutra_band;
winckel's avatar
winckel committed
104
105
} RrcConfigurationReq;

winckel's avatar
winckel committed
106
107
108
109
110
// UE: NAS -> RRC messages
typedef cell_info_req_t         NasCellSelectionReq;
typedef nas_establish_req_t     NasConnEstabliReq;
typedef ul_info_transfer_req_t  NasUlDataReq;

111
112
typedef rab_establish_rsp_t     NasRabEstRsp;

winckel's avatar
winckel committed
113
114
115
116
117
118
119
120
// UE: RRC -> NAS messages
typedef cell_info_cnf_t         NasCellSelectionCnf;
typedef cell_info_ind_t         NasCellSelectionInd;
typedef paging_ind_t            NasPagingInd;
typedef nas_establish_cnf_t     NasConnEstabCnf;
typedef nas_release_ind_t       NasConnReleaseInd;
typedef ul_info_transfer_cnf_t  NasUlDataCnf;
typedef dl_info_transfer_ind_t  NasDlDataInd;
121
122

#endif /* RRC_MESSAGES_TYPES_H_ */