rjw | 6c1fd8f | 2022-11-30 14:33:01 +0800 | [diff] [blame] | 1 | /***************************************************************************** |
| 2 | * Copyright Statement: |
| 3 | * -------------------- |
| 4 | * This software is protected by Copyright and the information contained |
| 5 | * herein is confidential. The software may not be copied and the information |
| 6 | * contained herein may not be used or disclosed except with the written |
| 7 | * permission of MediaTek Inc. (C) 2012 |
| 8 | * |
| 9 | * BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES |
| 10 | * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE") |
| 11 | * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON |
| 12 | * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES, |
| 13 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF |
| 14 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. |
| 15 | * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE |
| 16 | * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR |
| 17 | * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH |
| 18 | * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO |
| 19 | * NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S |
| 20 | * SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM. |
| 21 | * |
| 22 | * BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE |
| 23 | * LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE, |
| 24 | * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE, |
| 25 | * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO |
| 26 | * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. |
| 27 | * |
| 28 | * THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE |
| 29 | * WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF |
| 30 | * LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND |
| 31 | * RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER |
| 32 | * THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC). |
| 33 | * |
| 34 | *****************************************************************************/ |
| 35 | |
| 36 | /***************************************************************************** |
| 37 | * |
| 38 | * Filename: |
| 39 | * --------- |
| 40 | * errc_erlcul_msg.h |
| 41 | * |
| 42 | * Project: |
| 43 | * -------- |
| 44 | * MOLY |
| 45 | * |
| 46 | * Description: |
| 47 | * ------------ |
| 48 | * ERRC-ERLCUL SAP file |
| 49 | * This file defines the structures and enumerations for the SAP between ERRC and ERLCUL |
| 50 | * |
| 51 | * Author: |
| 52 | * ------- |
| 53 | * ------- |
| 54 | * |
| 55 | * ========================================================================== |
| 56 | * $Log$ |
| 57 | * |
| 58 | * 04 15 2020 lien-chih.hsu |
| 59 | * [MOLY00505240] [6297] EN-DC gaming HO enhancement |
| 60 | * |
| 61 | * [Gen97][R3MP][CHM] Gaming - Bring (earfcn,pci) in rlcul_config_req |
| 62 | * |
| 63 | * 12 04 2019 sh.pan |
| 64 | * [MOLY00462979] [Gen97]MOB/MEAS/NL1MOB 1001DEV to VMOLY patch back |
| 65 | * |
| 66 | * . |
| 67 | * |
| 68 | * 11 13 2019 tsung-ming.lee |
| 69 | * [MOLY00441387] [Gen97][ERRC][MOB] NSA& LTE Gaming cell list for mobility enhancement |
| 70 | * |
| 71 | * -new gaming proposal. |
| 72 | * |
| 73 | * 09 19 2019 tsung-ming.lee |
| 74 | * [MOLY00441387] [Gen97][ERRC][MOB] NSA& LTE Gaming cell list for mobility enhancement |
| 75 | * [NSA]Gaming cell offset. |
| 76 | * |
| 77 | * 07 24 2018 slifer.hsueh |
| 78 | * [MOLY00341790] [MT6295] UDC feature patch back |
| 79 | * Add udc_en field in errc_erlcul_rb_cfg_struct |
| 80 | * |
| 81 | * 02 06 2017 peter.yu |
| 82 | * [MOLY00207733] [MT6293][EL2] ERLCDL development |
| 83 | * [M-SIM] Sync R-SIM related interfaces, remove redundant message IDs related to ERLC. |
| 84 | * |
| 85 | * 09 26 2016 slifer.hsueh |
| 86 | * [MOLY00205085] [MT6293][EL2] ERLC source codes integration from DEV to TRUNK |
| 87 | * ERLC source codes integration from DEV to TRUNK |
| 88 | * |
| 89 | * 08 04 2016 wei.liao |
| 90 | * [MOLY00194969] [MT6293][EL2] ERLC-UL source codes integration from LTE to RD domain |
| 91 | * 1.Bug fix: Setup function ptr for retx port. |
| 92 | * 2.Bug fix: Fix lsf/rf info registeration for nack. |
| 93 | * 3.Add timer enum and config setting in ERLCUL for R13 |
| 94 | * 4.Init D_ADDR=NULL to prevent the case first desc is normal |
| 95 | * (original queue encounter CLDMBA buffer shortage and stop processing)g |
| 96 | * |
| 97 | * 07 27 2016 jeremy.chen |
| 98 | * [MOLY00190683] [UMOLYA][6293] EL2 merge back to UMOLYA TRUNK & PS DEV |
| 99 | * [EL2][RD domain] Sync latest EL2 from LTE domain |
| 100 | * |
| 101 | * 01 04 2016 tero.miettinen |
| 102 | * [MOLY00155820] ERRC UMOLY updates |
| 103 | * NVRAM IF, ERRC - EL2 IF and ERRC update for 15 bit RLC LI field length. |
| 104 | * |
| 105 | * 07 03 2015 chi-chung.lin |
| 106 | * [MOLY00123918] [MT6291] Modify CHM code to provide eps_br_id in errc_erlcdl_rb_cfg_struct/errc_erlcul_rb_cfg_struct and fix compile warning |
| 107 | * [CHM] Code sync. from TK6291_DEV |
| 108 | * |
| 109 | * 04 08 2015 katie.tseng |
| 110 | * [MOLY00104186] [UMOLY] UMOLY code maintenance. |
| 111 | * 1. March 2015 MOLY CR sync on ERLC-DL: (1) VoLTE early RLF (2) log reduction |
| 112 | * 2. RLC gtest UT fix: set/reset gERLC_Trap_Msg_EN at setup() and teardown() |
| 113 | * |
| 114 | * 01 22 2014 jeremy.chen |
| 115 | * [MOLY00054589] [MT6290E2] add RLF indication from ERLC-DL |
| 116 | * rename ERRC_ERLCUL_STATUS_IND to ERRC_ERLC_RLF_IND and modify the interface for both ERLC-UL and ERLC-DL use |
| 117 | * |
| 118 | * 02 18 2013 jeremy.chen |
| 119 | * [MOLY00007127] [MT7208] EL2 enhancement in MOLY |
| 120 | * update the comments. |
| 121 | ****************************************************************************/ |
| 122 | |
| 123 | /// @author mtk01733 |
| 124 | /// @date 08/10/11 |
| 125 | |
| 126 | #ifndef _MTK_LTE_ERRC_ERLCUL_SAP_H_ |
| 127 | #define _MTK_LTE_ERRC_ERLCUL_SAP_H_ |
| 128 | |
| 129 | |
| 130 | #include "el2_sap_common.h" |
| 131 | |
| 132 | |
| 133 | /*-------------------------------------------------------------------------- |
| 134 | * MSG_ID_ERRC_ERLCUL_CONFIG_REQ (enum) |
| 135 | *--------------------------------------------------------------------------*/ |
| 136 | |
| 137 | /// t-PollRetransmit |
| 138 | typedef enum |
| 139 | { |
| 140 | T_POLL_RETX_MS5 = 0x00, |
| 141 | T_POLL_RETX_MS10 = 0x01, |
| 142 | T_POLL_RETX_MS15 = 0x02, |
| 143 | T_POLL_RETX_MS20 = 0x03, |
| 144 | T_POLL_RETX_MS25 = 0x04, |
| 145 | T_POLL_RETX_MS30 = 0x05, |
| 146 | T_POLL_RETX_MS35 = 0x06, |
| 147 | T_POLL_RETX_MS40 = 0x07, |
| 148 | T_POLL_RETX_MS45 = 0x08, |
| 149 | T_POLL_RETX_MS50 = 0x09, |
| 150 | T_POLL_RETX_MS55 = 0x0A, |
| 151 | T_POLL_RETX_MS60 = 0x0B, |
| 152 | T_POLL_RETX_MS65 = 0x0C, |
| 153 | T_POLL_RETX_MS70 = 0x0D, |
| 154 | T_POLL_RETX_MS75 = 0x0E, |
| 155 | T_POLL_RETX_MS80 = 0x0F, |
| 156 | T_POLL_RETX_MS85 = 0x10, |
| 157 | T_POLL_RETX_MS90 = 0x11, |
| 158 | T_POLL_RETX_MS95 = 0x12, |
| 159 | T_POLL_RETX_MS100 = 0x13, |
| 160 | T_POLL_RETX_MS105 = 0x14, |
| 161 | T_POLL_RETX_MS110 = 0x15, |
| 162 | T_POLL_RETX_MS115 = 0x16, |
| 163 | T_POLL_RETX_MS120 = 0x17, |
| 164 | T_POLL_RETX_MS125 = 0x18, |
| 165 | T_POLL_RETX_MS130 = 0x19, |
| 166 | T_POLL_RETX_MS135 = 0x1A, |
| 167 | T_POLL_RETX_MS140 = 0x1B, |
| 168 | T_POLL_RETX_MS145 = 0x1C, |
| 169 | T_POLL_RETX_MS150 = 0x1D, |
| 170 | T_POLL_RETX_MS155 = 0x1E, |
| 171 | T_POLL_RETX_MS160 = 0x1F, |
| 172 | T_POLL_RETX_MS165 = 0x20, |
| 173 | T_POLL_RETX_MS170 = 0x21, |
| 174 | T_POLL_RETX_MS175 = 0x22, |
| 175 | T_POLL_RETX_MS180 = 0x23, |
| 176 | T_POLL_RETX_MS185 = 0x24, |
| 177 | T_POLL_RETX_MS190 = 0x25, |
| 178 | T_POLL_RETX_MS195 = 0x26, |
| 179 | T_POLL_RETX_MS200 = 0x27, |
| 180 | T_POLL_RETX_MS205 = 0x28, |
| 181 | T_POLL_RETX_MS210 = 0x29, |
| 182 | T_POLL_RETX_MS215 = 0x2A, |
| 183 | T_POLL_RETX_MS220 = 0x2B, |
| 184 | T_POLL_RETX_MS225 = 0x2C, |
| 185 | T_POLL_RETX_MS230 = 0x2D, |
| 186 | T_POLL_RETX_MS235 = 0x2E, |
| 187 | T_POLL_RETX_MS240 = 0x2F, |
| 188 | T_POLL_RETX_MS245 = 0x30, |
| 189 | T_POLL_RETX_MS250 = 0x31, |
| 190 | T_POLL_RETX_MS300 = 0x32, |
| 191 | T_POLL_RETX_MS350 = 0x33, |
| 192 | T_POLL_RETX_MS400 = 0x34, |
| 193 | T_POLL_RETX_MS450 = 0x35, |
| 194 | T_POLL_RETX_MS500 = 0x36, |
| 195 | T_POLL_RETX_MS800 = 0x37, |
| 196 | T_POLL_RETX_MS1000 = 0x38, |
| 197 | T_POLL_RETX_MS2000 = 0x39, |
| 198 | T_POLL_RETX_MS4000 = 0x3A |
| 199 | |
| 200 | } errc_erlcul_t_pollretx_enum; |
| 201 | |
| 202 | /// Poll PDU counter |
| 203 | typedef enum |
| 204 | { |
| 205 | POLL_PDU_P4 = 0x00, |
| 206 | POLL_PDU_P8 = 0x01, |
| 207 | POLL_PDU_P16 = 0x02, |
| 208 | POLL_PDU_P32 = 0x03, |
| 209 | POLL_PDU_P64 = 0x04, |
| 210 | POLL_PDU_P128 = 0x05, |
| 211 | POLL_PDU_P256 = 0x06, |
| 212 | POLL_PDU_PINF = 0x07 |
| 213 | } errc_erlcul_poll_pdu_enum; |
| 214 | |
| 215 | |
| 216 | /// Poll byte counter |
| 217 | typedef enum |
| 218 | { |
| 219 | POLL_BYTE_KB25 = 0x00, |
| 220 | POLL_BYTE_KB50 = 0x01, |
| 221 | POLL_BYTE_KB75 = 0x02, |
| 222 | POLL_BYTE_KB100 = 0x03, |
| 223 | POLL_BYTE_KB125 = 0x04, |
| 224 | POLL_BYTE_KB250 = 0x05, |
| 225 | POLL_BYTE_KB375 = 0x06, |
| 226 | POLL_BYTE_KB500 = 0x07, |
| 227 | POLL_BYTE_KB750 = 0x08, |
| 228 | POLL_BYTE_KB1000 = 0x09, |
| 229 | POLL_BYTE_KB1250 = 0x0A, |
| 230 | POLL_BYTE_KB1500 = 0x0B, |
| 231 | POLL_BYTE_KB2000 = 0x0C, |
| 232 | POLL_BYTE_KB3000 = 0x0D, |
| 233 | POLL_BYTE_KBINF = 0x0E |
| 234 | |
| 235 | } errc_erlcul_poll_byte_enum; |
| 236 | |
| 237 | |
| 238 | /// maximum retranmsission threshold |
| 239 | typedef enum |
| 240 | { |
| 241 | MAX_RETX_T1 = 0x00, |
| 242 | MAX_RETX_T2 = 0x01, |
| 243 | MAX_RETX_T3 = 0x02, |
| 244 | MAX_RETX_T4 = 0x03, |
| 245 | MAX_RETX_T6 = 0x04, |
| 246 | MAX_RETX_T8 = 0x05, |
| 247 | MAX_RETX_T16 = 0x06, |
| 248 | MAX_RETX_T32 = 0x07 |
| 249 | |
| 250 | } errc_erlcul_max_retx_enum; |
| 251 | |
| 252 | |
| 253 | |
| 254 | /// PDCP SN length |
| 255 | typedef enum |
| 256 | { |
| 257 | PDCP_SN_LEN_05 = 05, // PDCP SN length = 05 bits (SRB) |
| 258 | PDCP_SN_LEN_07 = 07, // PDCP SN length = 07 bits (DRB UM) |
| 259 | PDCP_SN_LEN_12 = 12, // PDCP SN length = 12 bits (DRB AM or UM) |
| 260 | PDCP_SN_LEN_15 = 15, // PDCP SN length = 15 bits (DRB AM) |
| 261 | // PDCP_SN_LEN_18 = 18, // PDCP SN length = 18 bits (DRB AM) |
| 262 | |
| 263 | } errc_erlcul_pdcp_sn_len_enum; |
| 264 | |
| 265 | typedef enum |
| 266 | { |
| 267 | CELL_STATUS_INVALID = 0, |
| 268 | CELL_STATUS_NEW = 1, |
| 269 | CELL_STATUS_LONG_GOOD = 2, |
| 270 | CELL_STATUS_GOOD = 3, |
| 271 | CELL_STATUS_BAD = 4, |
| 272 | CELL_STATUS_VERY_BAD = 5, |
| 273 | CELL_STATUS_LONG_VERY_BAD = 6 |
| 274 | } errc_erlcul_gaming_status_enum; |
| 275 | |
| 276 | /*-------------------------------------------------------------------------- |
| 277 | * MSG_ID_ERRC_ERLCUL_CONFIG_REQ (struct) |
| 278 | *--------------------------------------------------------------------------*/ |
| 279 | |
| 280 | /// configuration AM entity (transmitting side) |
| 281 | typedef struct |
| 282 | { |
| 283 | errc_erlcul_t_pollretx_enum t_pollretx; |
| 284 | errc_erlcul_poll_pdu_enum poll_pdu; |
| 285 | errc_erlcul_poll_byte_enum poll_byte; |
| 286 | errc_erlcul_max_retx_enum max_retx; |
| 287 | kal_bool li_field_len_15_bit; |
| 288 | } errc_erlcul_am_struct; |
| 289 | |
| 290 | |
| 291 | /// configuration for UL UM entity |
| 292 | typedef struct |
| 293 | { |
| 294 | errc_erlc_sn_field_len_enum snf_len; |
| 295 | |
| 296 | } errc_erlcul_um_struct; |
| 297 | |
| 298 | |
| 299 | /// UL RB configuration (for RB establish/re-establish/re-configure) |
| 300 | typedef struct |
| 301 | { |
| 302 | errc_el2_rbid_enum rbid; |
| 303 | kal_uint8 lcid; |
| 304 | kal_uint8 rb_idx; |
| 305 | |
| 306 | // implementation note |
| 307 | // -------------------------------------------------------- |
| 308 | // In MT6293, ERLCUL will assign PDCP SN for PDCP data PDU. |
| 309 | // Therefore, ERLCUL must obtain PDCP SN length from configuration. |
| 310 | // ---------------------------------------------------------------- |
| 311 | // pdcp_sn_len = PDCP_SN_LEN_05/07/12/15 |
| 312 | |
| 313 | errc_erlcul_pdcp_sn_len_enum pdcp_sn_len; |
| 314 | |
| 315 | // implementation note |
| 316 | // ---------------------------------------------------------------- |
| 317 | // In MT6293, ERLCUL will describe PDCP data PDU depending on ROHC. |
| 318 | // Therefore, ERLCUL must identify ROHC enable status from configuration. |
| 319 | // ---------------------------------------------------------------------- |
| 320 | // rohc_en = ROHC enable? KAL_TRUE: KAL_FALSE |
| 321 | |
| 322 | kal_bool rohc_en; |
| 323 | |
| 324 | errc_erlc_rb_mode_enum mode; |
| 325 | errc_erlc_rb_type_enum type; |
| 326 | |
| 327 | /// RLC configuration |
| 328 | union { |
| 329 | errc_erlcul_am_struct am_cfg; |
| 330 | errc_erlcul_um_struct um_cfg; |
| 331 | } am_um_cfg; |
| 332 | |
| 333 | /// logical channel configuration |
| 334 | errc_el2_lch_cfg lch_cfg; |
| 335 | |
| 336 | /// eps bearer id, valid only when DRB and ERLC_MODE_EST/REEST/RECFG |
| 337 | kal_uint8 eps_br_id; |
| 338 | |
| 339 | // implementation note |
| 340 | // ---------------------------------------------------------------- |
| 341 | // In MT6293, ERLCUL will describe PDCP data PDU depending on UDC. |
| 342 | // Therefore, ERLCUL must identify such enable status from configuration. |
| 343 | // ---------------------------------------------------------------------- |
| 344 | // udc_en = UDC enable? KAL_TRUE: KAL_FALSE |
| 345 | |
| 346 | kal_bool udc_en; |
| 347 | |
| 348 | kal_uint16 rsvd_2; |
| 349 | |
| 350 | } errc_erlcul_rb_cfg_struct; |
| 351 | |
| 352 | |
| 353 | /// UL RB configuration (for RB release) |
| 354 | typedef struct |
| 355 | { |
| 356 | kal_uint8 rb_idx; ///< RB index |
| 357 | errc_el2_rbid_enum rbid; ///< RBID |
| 358 | kal_bool ho_failure; ///< if HO failure, remove the new RB. |
| 359 | kal_uint8 rsvd; |
| 360 | |
| 361 | } errc_erlcul_rb_rel_struct; |
| 362 | |
| 363 | |
| 364 | /// MSG_ID_ERRC_ERLCDL_CONFIG_REQ structure |
| 365 | typedef struct |
| 366 | { |
| 367 | LOCAL_PARA_HDR |
| 368 | |
| 369 | kal_uint8 n_est_rb; // the number of RBs to be established |
| 370 | kal_uint8 n_mod_rb; // the number of RBs to be modified |
| 371 | kal_uint8 n_rel_rb; // the number of RBs to be released |
| 372 | kal_uint8 rsvd; |
| 373 | |
| 374 | /** RB configurations for the RB to be established */ |
| 375 | errc_erlcul_rb_cfg_struct est_rb[MAX_NUM_RLC_CONFIG_RB]; |
| 376 | |
| 377 | /** RB configurations for the RB to be modified */ |
| 378 | errc_erlcul_rb_cfg_struct mod_rb[MAX_NUM_RLC_CONFIG_RB]; |
| 379 | |
| 380 | /** RB configurations for the RB to be released */ |
| 381 | errc_erlcul_rb_rel_struct rel_rb[MAX_NUM_RLC_CONFIG_RB]; |
| 382 | |
| 383 | kal_uint16 pci; |
| 384 | kal_uint32 earfcn; |
| 385 | |
| 386 | } errc_erlcul_config_req_struct; |
| 387 | |
| 388 | |
| 389 | |
| 390 | /*-------------------------------------------------------------------------- |
| 391 | * MSG_ID_ERRC_ERLCUL_CONFIG_CNF |
| 392 | *--------------------------------------------------------------------------*/ |
| 393 | |
| 394 | typedef struct |
| 395 | { |
| 396 | LOCAL_PARA_HDR |
| 397 | |
| 398 | errc_el2_cfg_result_enum result; |
| 399 | |
| 400 | } errc_erlcul_config_cnf_struct; |
| 401 | |
| 402 | |
| 403 | |
| 404 | /*-------------------------------------------------------------------------- |
| 405 | * MSG_ID_ERRC_ERLCUL_SRB1_ACK_REQ |
| 406 | *--------------------------------------------------------------------------*/ |
| 407 | |
| 408 | typedef struct |
| 409 | { |
| 410 | LOCAL_PARA_HDR |
| 411 | |
| 412 | /// report control flag |
| 413 | /// - KAL_TRUE: start report |
| 414 | /// - KAL_FALSE: stop report |
| 415 | kal_bool report; |
| 416 | |
| 417 | kal_uint8 rsvd_1; |
| 418 | kal_uint16 rsvd_2; |
| 419 | |
| 420 | } errc_erlcul_srb1_ack_req_struct; |
| 421 | |
| 422 | |
| 423 | /*-------------------------------------------------------------------------- |
| 424 | * MSG_ID_ERLCUL_ERRC_SRB1_ACK_CNF |
| 425 | *--------------------------------------------------------------------------*/ |
| 426 | // no local parameters |
| 427 | |
| 428 | |
| 429 | /*-------------------------------------------------------------------------- |
| 430 | * MSG_ID_ERRC_ERLCUL_SWITCH_VIRTUAL_CONNECTED_REQ |
| 431 | *--------------------------------------------------------------------------*/ |
| 432 | typedef struct |
| 433 | { |
| 434 | LOCAL_PARA_HDR |
| 435 | errc_el2_switch_virtual_connected_enum status; |
| 436 | |
| 437 | } errc_erlcul_switch_virtual_connected_req_struct; |
| 438 | |
| 439 | /*-------------------------------------------------------------------------- |
| 440 | * MSG_ID_ERRC_ERLCUL_SWITCH_VIRTUAL_CONNECTED_CNF |
| 441 | *--------------------------------------------------------------------------*/ |
| 442 | |
| 443 | //no contents in this CNF, success only |
| 444 | |
| 445 | /*-------------------------------------------------------------------------- |
| 446 | * MSG_ID_ERRC_ERLCUL_GAMING_CELL_INFO_NTF |
| 447 | *--------------------------------------------------------------------------*/ |
| 448 | |
| 449 | #define MAX_REPORTED_CELL_NUM (10) |
| 450 | |
| 451 | typedef struct |
| 452 | { |
| 453 | kal_uint16 pci; |
| 454 | kal_uint16 rsvd; |
| 455 | kal_uint32 earfcn; |
| 456 | errc_erlcul_gaming_status_enum cell_status; |
| 457 | |
| 458 | } errc_erlcul_gaming_cell_info_struct; |
| 459 | |
| 460 | typedef struct |
| 461 | { |
| 462 | LOCAL_PARA_HDR |
| 463 | |
| 464 | kal_uint16 cell_num; |
| 465 | kal_uint16 rsvd; |
| 466 | errc_erlcul_gaming_cell_info_struct cell_info[MAX_REPORTED_CELL_NUM]; |
| 467 | |
| 468 | } errc_erlcul_gaming_cell_info_ntf_struct; |
| 469 | |
| 470 | #endif |