FreeCalypso > hg > fc-tourmaline
comparison src/g23m-gsm/alr2/alr_test/alr_steps.cpp @ 2:3a14ee9a9843
src/g23m-gsm: same alr2 & alr3 structure as in Selenite
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Fri, 16 Oct 2020 06:29:12 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1:fa8dc04885d8 | 2:3a14ee9a9843 |
|---|---|
| 1 /* | |
| 2 +------------------------------------------------------------------------------ | |
| 3 | File: alr_steps.cpp | |
| 4 +------------------------------------------------------------------------------ | |
| 5 | Copyright 2003 Texas Instruments | |
| 6 | All rights reserved. | |
| 7 | | |
| 8 | This file is confidential and a trade secret of Texas Instruments. | |
| 9 | The receipt of or possession of this file does not convey | |
| 10 | any rights to reproduce or disclose its contents or to | |
| 11 | manufacture, use, or sell anything it may describe, in | |
| 12 | whole, or in part, without the specific written consent of | |
| 13 | Texas Instruments. | |
| 14 +------------------------------------------------------------------------------ | |
| 15 | Purpose: Contains test steps for alr | |
| 16 | | |
| 17 +------------------------------------------------------------------------------ | |
| 18 */ | |
| 19 #include "alr_constraints.h" | |
| 20 #include "alr_steps.h" | |
| 21 | |
| 22 | |
| 23 | |
| 24 /*------------------------Following is for ALR000------------------------------- | |
| 25 * | |
| 26 * Description: The ALR is configured. | |
| 27 *-------------------------------------------------------------------------------*/ | |
| 28 | |
| 29 T_STEP filter_and_routings_gsm_900__alr000() | |
| 30 { | |
| 31 BEGIN_STEP ("filter_and_routings_gsm_900__alr000") | |
| 32 { | |
| 33 COMMAND("TAP REDIRECT CLEAR"); | |
| 34 COMMAND("PL REDIRECT CLEAR"); | |
| 35 COMMAND("PL REDIRECT RR TAP"); | |
| 36 COMMAND("PL REDIRECT DL TAP"); | |
| 37 COMMAND("PL REDIRECT L1 TAP"); | |
| 38 COMMAND("TAP REDIRECT TAP PL"); | |
| 39 COMMAND("PL CONFIG STD=1"); | |
| 40 #ifdef GPRS | |
| 41 COMMAND("PL REDIRECT GRR TAP"); | |
| 42 #endif // GPRS | |
| 43 SEND ( em_l1_event_req_2() ); | |
| 44 //COMMAND("TAP PARKING "); | |
| 45 | |
| 46 } | |
| 47 } | |
| 48 | |
| 49 /*------------------------Following is for ALR001------------------------------- | |
| 50 * | |
| 51 * Description: RR starts a cell selection with power measurements with interruption. | |
| 52 * Four channels in the | |
| 53 * order 23, 14, 124, 1 have acceptable fieldstrength values. | |
| 54 *--------------------------------------------------------------------------------*/ | |
| 55 | |
| 56 T_STEP initiation_by_rr_4_channels_available_alr001() | |
| 57 { | |
| 58 BEGIN_STEP ("initiation_by_rr_4_channels_available_alr001") | |
| 59 { | |
| 60 filter_and_routings_gsm_900__alr000(); | |
| 61 | |
| 62 SEND ( mph_power_req_1() ); | |
| 63 AWAIT ( mphc_init_l1_req_1() ); | |
| 64 SEND ( mphc_init_l1_con_1() ); | |
| 65 AWAIT ( mphc_rxlev_req() ); | |
| 66 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 67 AWAIT ( mphc_rxlev_req() ); | |
| 68 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 69 AWAIT ( mphc_rxlev_req() ); | |
| 70 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 71 AWAIT ( mphc_rxlev_req() ); | |
| 72 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 73 AWAIT ( mphc_rxlev_req() ); | |
| 74 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 75 AWAIT ( mph_power_cnf_1() ); | |
| 76 } | |
| 77 } | |
| 78 | |
| 79 /*------------------------Following is for ALR002------------------------------- | |
| 80 * | |
| 81 * Description: RR starts a cell selection with power measurements with interruption. | |
| 82 * Eight channels in the | |
| 83 * order 23, 637, 14, 580, 124, 885, 1, 512 have acceptable fieldstrength values. | |
| 84 *--------------------------------------------------------------------------------*/ | |
| 85 | |
| 86 T_STEP initiation_by_rr_8_channels_available_alr002() | |
| 87 { | |
| 88 BEGIN_STEP ("initiation_by_rr_4_channels_available_alr001") | |
| 89 { | |
| 90 filter_and_routings_dualband_gsm_900_dcs_1800__alr600(); | |
| 91 | |
| 92 SEND ( mph_power_req_4() ); | |
| 93 AWAIT ( mphc_init_l1_req_4() ); | |
| 94 SEND ( mphc_init_l1_con_1() ); | |
| 95 AWAIT ( mphc_rxlev_req() ); | |
| 96 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 97 AWAIT ( mphc_rxlev_req() ); | |
| 98 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 99 AWAIT ( mphc_rxlev_req() ); | |
| 100 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 101 AWAIT ( mphc_rxlev_req() ); | |
| 102 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 103 AWAIT ( mphc_rxlev_req() ); | |
| 104 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 105 AWAIT ( mph_power_cnf_5() ); | |
| 106 } | |
| 107 } | |
| 108 | |
| 109 /*------------------------Following is for ALR1018------------------------------- | |
| 110 * | |
| 111 * Description:RR configured for idle mode and recieves measurements | |
| 112 * for the neighbouring cells and serving cell | |
| 113 * | |
| 114 *-------------------------------------------------------------------------------*/ | |
| 115 | |
| 116 T_STEP configuring_ms_for_idle_mode_and_meas() | |
| 117 { | |
| 118 BEGIN_STEP ("configuring_ms_for_idle_mode_and_meas") | |
| 119 { | |
| 120 SEND ( mph_classmark_req_3() ); | |
| 121 SEND ( mph_idle_req_10() ); | |
| 122 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 123 AWAIT ( mphc_start_ccch_req_10() ); | |
| 124 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 125 SEND ( mph_identity_req_1() ); | |
| 126 SEND ( mph_cbch_req_1() ); | |
| 127 SEND ( mph_neighbourcell_req_7A('A') ); | |
| 128 AWAIT ( mphc_rxlev_periodic_req_21() ); | |
| 129 SEND ( mphc_rxlev_periodic_ind_9A(50,40) ); | |
| 130 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_512) ); | |
| 131 SEND ( mphc_ncell_sync_ind(ARFCN_512,FN_OFF_ARFCN_512,TIME_ALIGNMT_512,BSIC_10)); | |
| 132 AWAIT ( mphc_ncell_bcch_req(ARFCN_512,FN_OFF_ARFCN_512,TIME_ALIGNMT_512,BSIC_10)); | |
| 133 SEND ( mphc_rxlev_periodic_ind_9A(50,40) ); | |
| 134 SEND ( mph_meas_rep_req(NC_START_MEAS) ); | |
| 135 SEND ( mphc_rxlev_periodic_ind_9A(40,30) ); | |
| 136 MUTE (10); | |
| 137 SEND ( mphc_rxlev_periodic_ind_9A(50,40) ); | |
| 138 AWAIT ( mph_measurement_ind_36() ); | |
| 139 MUTE (10); | |
| 140 SEND ( mphc_rxlev_periodic_ind_9A(40,30) ); | |
| 141 MUTE (10); | |
| 142 SEND ( mph_meas_rep_req(NC_REPORT_MEAS) ); | |
| 143 AWAIT ( mph_measurement_ind_36() ); | |
| 144 AWAIT ( mph_meas_rep_cnf_sc() ); | |
| 145 SEND ( mph_meas_rep_req(NC_STOP_MEAS) ); | |
| 146 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_512) ); | |
| 147 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_512)); | |
| 148 SEND ( mph_meas_rep_req(NC_START_MEAS) ); | |
| 149 SEND ( mphc_rxlev_periodic_ind_9A(40,30) ); | |
| 150 SEND ( mphc_rxlev_periodic_ind_9A(50,40) ); | |
| 151 AWAIT ( mph_measurement_ind_36() ); | |
| 152 SEND ( mphc_rxlev_periodic_ind_9A(40,30) ); | |
| 153 AWAIT ( mph_unitdata_ind_si3(ARFCN_512) ); | |
| 154 SEND ( mph_meas_rep_req(NC_REPORT_MEAS) ); | |
| 155 AWAIT ( mph_meas_rep_cnf_sc_n1() ); | |
| 156 } | |
| 157 } | |
| 158 | |
| 159 /*------------------------Following is for ALR003------------------------------- | |
| 160 * | |
| 161 * Description: The carrier with the highest fieldstrength (channel 23) is selected | |
| 162 * for synchronizing to frequency correction burst and synchron burst. | |
| 163 *-------------------------------------------------------------------------------*/ | |
| 164 | |
| 165 T_STEP find_bcch_carrier_first_channel_alr003() | |
| 166 { | |
| 167 BEGIN_STEP ("find_bcch_carrier_first_channel_alr003") | |
| 168 { | |
| 169 | |
| 170 SEND ( mph_bsic_req(ARFCN_23_STD_900) ); | |
| 171 AWAIT ( mphc_network_sync_req(ARFCN_23, SM_WIDE_MODE) ); | |
| 172 SEND ( mphc_network_sync_ind_1() ); | |
| 173 AWAIT ( mph_bsic_cnf_1() ); | |
| 174 AWAIT ( mphc_new_scell_req_1() ); | |
| 175 SEND ( mphc_new_scell_con_1() ); | |
| 176 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 177 } | |
| 178 } | |
| 179 | |
| 180 /*------------------------Following is for ALR004------------------------------- | |
| 181 * | |
| 182 * Description: The carrier with the highest fieldstrength (channel 23) is selected for synchronizing to | |
| 183 * frequency correction burst and synchron burst. The attempt failed. A second request is | |
| 184 * started for the next strongest channel (channel 14). | |
| 185 *-------------------------------------------------------------------------------*/ | |
| 186 | |
| 187 T_STEP find_bcch_carrier_first_channel_failed_then_second_channel_alr004() | |
| 188 { | |
| 189 BEGIN_STEP ("find_bcch_carrier_first_channel_failed_then_second_channel_alr004") | |
| 190 { | |
| 191 SEND ( mph_bsic_req(ARFCN_23_STD_900) ); | |
| 192 AWAIT ( mphc_network_sync_req(ARFCN_23, SM_WIDE_MODE) ); | |
| 193 SEND ( mphc_network_sync_ind_failed(ARFCN_23) ); | |
| 194 AWAIT ( mph_bsic_cnf_failed(ARFCN_23_STD_900) ); | |
| 195 SEND ( mph_bsic_req(ARFCN_14_STD_900) ); | |
| 196 AWAIT ( mphc_network_sync_req(ARFCN_14, SM_WIDE_MODE) ); | |
| 197 } | |
| 198 } | |
| 199 | |
| 200 | |
| 201 | |
| 202 /*------------------------Following is for ALR006------------------------------- | |
| 203 * | |
| 204 * Description: The next best channel (channel 14) is selected for synchronizing to frequency correction | |
| 205 * burst and synchron burst. | |
| 206 *-------------------------------------------------------------------------------*/ | |
| 207 | |
| 208 T_STEP find_bcch_carrier_second_channel_alr006() | |
| 209 { | |
| 210 BEGIN_STEP ("find_bcch_carrier_second_channel_alr006") | |
| 211 { | |
| 212 SEND ( mphc_network_sync_ind_6() ); | |
| 213 AWAIT ( mph_bsic_cnf_6() ); | |
| 214 AWAIT ( mphc_new_scell_req_2() ); | |
| 215 SEND ( mphc_new_scell_con_1() ); | |
| 216 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 217 } | |
| 218 } | |
| 219 | |
| 220 | |
| 221 | |
| 222 /*------------------------Following is for ALR007------------------------------- | |
| 223 * | |
| 224 * Description: The BCCH data blocks are read for the channel 23. | |
| 225 *-------------------------------------------------------------------------------*/ | |
| 226 | |
| 227 T_STEP read_bcch_data_alr007() | |
| 228 { | |
| 229 BEGIN_STEP ("read_bcch_data_alr007") | |
| 230 { | |
| 231 SEND ( mphc_data_ind_1() ); | |
| 232 AWAIT ( mph_unitdata_ind_si1(ARFCN_23) ); | |
| 233 SEND ( mphc_data_ind_2() ); | |
| 234 AWAIT ( mph_unitdata_ind_si2(ARFCN_23) ); | |
| 235 SEND ( mphc_data_ind_3() ); | |
| 236 AWAIT ( mph_unitdata_ind_si3(ARFCN_23) ); | |
| 237 SEND ( mphc_data_ind_4() ); | |
| 238 AWAIT ( mph_unitdata_ind_si4(ARFCN_23) ); | |
| 239 } | |
| 240 } | |
| 241 | |
| 242 | |
| 243 /*------------------------Following is for ALR009------------------------------- | |
| 244 * | |
| 245 * Description: RR rejects the BCCH carrier. The next best channel (channel 124) is selected for | |
| 246 * synchronizing to frequency correction burst and synchron burst. | |
| 247 *-------------------------------------------------------------------------------*/ | |
| 248 | |
| 249 T_STEP rr_rejects_bcch_carrier_try_third_channel_alr009() | |
| 250 { | |
| 251 BEGIN_STEP ("rr_rejects_bcch_carrier_try_third_channel_alr009") | |
| 252 { | |
| 253 SEND ( mph_bsic_req(ARFCN_124_STD_900) ); | |
| 254 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 255 AWAIT ( mphc_network_sync_req(ARFCN_124, SM_NARROW_MODE) ); | |
| 256 SEND ( mphc_network_sync_ind_7() ); | |
| 257 AWAIT ( mph_bsic_cnf_7() ); | |
| 258 AWAIT ( mphc_new_scell_req_3() ); | |
| 259 SEND ( mphc_new_scell_con_1() ); | |
| 260 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 261 SEND ( mphc_data_ind_6() ); | |
| 262 AWAIT ( mph_unitdata_ind_si1(ARFCN_124) ); | |
| 263 } | |
| 264 } | |
| 265 | |
| 266 | |
| 267 | |
| 268 /*------------------------Following is for ALR010------------------------------- | |
| 269 * | |
| 270 * Description: RR rejects the BCCH carrier. The next best channel (channel 1) is selected for synchronising | |
| 271 * to frequency correction burst and synchron burst. | |
| 272 *-------------------------------------------------------------------------------*/ | |
| 273 | |
| 274 T_STEP rr_rejects_bcch_carrier_try_fourth_channel_alr010() | |
| 275 { | |
| 276 BEGIN_STEP ("rr_rejects_bcch_carrier_try_fourth_channel_alr010") | |
| 277 { | |
| 278 SEND ( mph_bsic_req(ARFCN_1_STD_900) ); | |
| 279 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 280 AWAIT ( mphc_network_sync_req(ARFCN_1, SM_NARROW_MODE) ); | |
| 281 SEND ( mphc_network_sync_ind_8() ); | |
| 282 AWAIT ( mph_bsic_cnf_8() ); | |
| 283 AWAIT ( mphc_new_scell_req_4() ); | |
| 284 SEND ( mphc_new_scell_con_1() ); | |
| 285 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 286 SEND ( mphc_data_ind_7() ); | |
| 287 AWAIT ( mph_unitdata_ind_si1(ARFCN_1) ); | |
| 288 } | |
| 289 } | |
| 290 | |
| 291 | |
| 292 | |
| 293 /*------------------------Following is for ALR012------------------------------- | |
| 294 * | |
| 295 * Description: RR selects the channel 14 after reading the BCCH carrier. | |
| 296 * Variant A: with neighbourcell list | |
| 297 * Variant B: with empty neighbour cell list | |
| 298 * Variant C: like A, but non-combined CCCH | |
| 299 *-------------------------------------------------------------------------------*/ | |
| 300 | |
| 301 T_STEP rr_select_second_channel_alr012(CHAR variant) | |
| 302 { | |
| 303 BEGIN_STEP ("rr_select_second_channel_alr012") | |
| 304 { | |
| 305 SEND ( mph_classmark_req_1() ); | |
| 306 SEND ( mph_idle_req_1(variant) ); | |
| 307 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 308 SEND ( mphc_stop_scell_bcch_con() ); | |
| 309 AWAIT ( mphc_start_ccch_req_1(variant) ); | |
| 310 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 311 SEND ( mph_identity_req_1() ); | |
| 312 SEND ( mph_cbch_req_1() ); | |
| 313 SEND ( mph_neighbourcell_req_1(variant) ); | |
| 314 AWAIT ( mphc_rxlev_periodic_req_1(variant) ); | |
| 315 } | |
| 316 } | |
| 317 | |
| 318 | |
| 319 | |
| 320 /*------------------------Following is for ALR013------------------------------- | |
| 321 * | |
| 322 * Description: RR selects the channel 23 after reading the BCCH carrier. | |
| 323 *-------------------------------------------------------------------------------*/ | |
| 324 | |
| 325 T_STEP rr_select_first_channel_alr013() | |
| 326 { | |
| 327 BEGIN_STEP ("rr_select_first_channel_alr013") | |
| 328 { | |
| 329 SEND ( mph_classmark_req_1() ); | |
| 330 SEND ( mph_idle_req_2() ); | |
| 331 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 332 AWAIT ( mphc_start_ccch_req_2() ); | |
| 333 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 334 SEND ( mph_identity_req_1() ); | |
| 335 SEND ( mph_cbch_req_1() ); | |
| 336 SEND ( mph_neighbourcell_req_2() ); | |
| 337 AWAIT ( mphc_rxlev_periodic_req_2() ); | |
| 338 } | |
| 339 } | |
| 340 | |
| 341 | |
| 342 T_STEP generating_six_sync_failures() | |
| 343 { | |
| 344 BEGIN_STEP ("rr_select_first_channel_alr013") | |
| 345 { | |
| 346 /* 1st Sync Failure */ | |
| 347 | |
| 348 SEND ( mph_bsic_req(ARFCN_124_STD_900) ); | |
| 349 AWAIT(mphc_stop_scell_bcch_req() ); | |
| 350 AWAIT (mphc_network_sync_req(ARFCN_124, SM_NARROW_MODE)); | |
| 351 SEND ( mphc_network_sync_ind_failed(ARFCN_124) ); | |
| 352 AWAIT ( mph_bsic_cnf_failed(ARFCN_124_STD_900) ); | |
| 353 | |
| 354 /* 2nd Sync Failure */ | |
| 355 | |
| 356 SEND ( mph_bsic_req(ARFCN_23_STD_900) ); | |
| 357 AWAIT (mphc_network_sync_req(ARFCN_23, SM_NARROW_MODE)); | |
| 358 SEND ( mphc_network_sync_ind_failed(ARFCN_23) ); | |
| 359 AWAIT ( mph_bsic_cnf_failed(ARFCN_23_STD_900) ); | |
| 360 | |
| 361 /* 3rd Sync Failure */ | |
| 362 | |
| 363 SEND ( mph_bsic_req(ARFCN_124_STD_900) ); | |
| 364 AWAIT (mphc_network_sync_req(ARFCN_124, SM_NARROW_MODE)); | |
| 365 SEND ( mphc_network_sync_ind_failed(ARFCN_124) ); | |
| 366 AWAIT ( mph_bsic_cnf_failed(ARFCN_124_STD_900) ); | |
| 367 | |
| 368 /* 4th Sync Failure */ | |
| 369 | |
| 370 SEND ( mph_bsic_req(ARFCN_23_STD_900) ); | |
| 371 AWAIT (mphc_network_sync_req(ARFCN_23, SM_NARROW_MODE)); | |
| 372 SEND ( mphc_network_sync_ind_failed(ARFCN_23) ); | |
| 373 AWAIT ( mph_bsic_cnf_failed(ARFCN_23_STD_900) ); | |
| 374 | |
| 375 /* 5th Sync Failure */ | |
| 376 | |
| 377 SEND ( mph_bsic_req(ARFCN_124_STD_900) ); | |
| 378 AWAIT (mphc_network_sync_req(ARFCN_124, SM_NARROW_MODE)); | |
| 379 SEND ( mphc_network_sync_ind_failed(ARFCN_124) ); | |
| 380 AWAIT ( mph_bsic_cnf_failed(ARFCN_124_STD_900) ); | |
| 381 | |
| 382 /* 6th Sync Failure */ | |
| 383 | |
| 384 SEND ( mph_bsic_req(ARFCN_23_STD_900) ); | |
| 385 AWAIT (mphc_network_sync_req(ARFCN_23, SM_NARROW_MODE)); | |
| 386 SEND ( mphc_network_sync_ind_failed(ARFCN_23) ); | |
| 387 AWAIT ( mph_bsic_cnf_failed(ARFCN_23_STD_900) ); | |
| 388 } | |
| 389 } | |
| 390 | |
| 391 | |
| 392 T_STEP sending_error_data_in_sacch() | |
| 393 { | |
| 394 BEGIN_STEP ("sending_error_data_in_sacch") | |
| 395 { | |
| 396 SEND (mphc_data_ind_sacch_error() ); | |
| 397 SEND (mphc_data_ind_sacch_error() ); | |
| 398 SEND (mphc_data_ind_sacch_error() ); | |
| 399 SEND (mphc_data_ind_sacch_error() ); | |
| 400 SEND (mphc_data_ind_sacch_error() ); | |
| 401 SEND (mphc_data_ind_sacch_error() ); | |
| 402 SEND (mphc_data_ind_sacch_error() ); | |
| 403 SEND (mphc_data_ind_sacch_error() ); | |
| 404 SEND (mphc_data_ind_sacch_error() ); | |
| 405 SEND (mphc_data_ind_sacch_error() ); | |
| 406 SEND (mphc_data_ind_sacch_error() ); | |
| 407 SEND (mphc_data_ind_sacch_error() ); | |
| 408 SEND (mphc_data_ind_sacch_error() ); | |
| 409 SEND (mphc_data_ind_sacch_error() ); | |
| 410 SEND (mphc_data_ind_sacch_error() ); | |
| 411 SEND (mphc_data_ind_sacch_error() ); | |
| 412 SEND (mphc_data_ind_sacch_error() ); | |
| 413 SEND (mphc_data_ind_sacch_error() ); | |
| 414 SEND (mphc_data_ind_sacch_error() ); | |
| 415 SEND (mphc_data_ind_sacch_error() ); | |
| 416 SEND (mphc_data_ind_sacch_error() ); | |
| 417 SEND (mphc_data_ind_sacch_error() ); | |
| 418 SEND (mphc_data_ind_sacch_error() ); | |
| 419 SEND (mphc_data_ind_sacch_error() ); | |
| 420 SEND (mphc_data_ind_sacch_error() ); | |
| 421 SEND (mphc_data_ind_sacch_error() ); | |
| 422 } | |
| 423 } | |
| 424 | |
| 425 /*-------------------------------------------------------------------------------- | |
| 426 * | |
| 427 * Description: RR selects the channel 23 after reading the BCCH carrier. | |
| 428 *-------------------------------------------------------------------------------*/ | |
| 429 | |
| 430 T_STEP rr_select_first_channel_alr013_gprs() | |
| 431 { | |
| 432 BEGIN_STEP ("rr_select_first_channel_alr013_gprs") | |
| 433 { | |
| 434 SEND ( mph_classmark_req_1() ); | |
| 435 SEND ( mph_idle_req_1g() ); | |
| 436 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 437 AWAIT ( mphc_start_ccch_req_2() ); | |
| 438 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 439 SEND ( mph_identity_req_1() ); | |
| 440 SEND ( mph_cbch_req_1() ); | |
| 441 SEND ( mph_neighbourcell_req_2() ); | |
| 442 AWAIT ( mphc_rxlev_periodic_req_2() ); | |
| 443 } | |
| 444 } | |
| 445 /*------------------------------------------------------------------------------- | |
| 446 * | |
| 447 * Description: RR selects the channel 23 after reading the BCCH carrier. | |
| 448 * This is a cell with PBCCH. | |
| 449 *-------------------------------------------------------------------------------*/ | |
| 450 | |
| 451 T_STEP rr_select_first_channel_gprs_pbcch(T_VAR_NMO var) | |
| 452 { | |
| 453 BEGIN_STEP ("rr_select_first_channel_alr013_gprs") | |
| 454 { | |
| 455 SEND ( mph_classmark_req_1() ); | |
| 456 SEND ( mph_idle_req_4g() ); | |
| 457 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 458 SEND ( mphc_stop_scell_bcch_con() ); | |
| 459 SEND ( mph_identity_req_1() ); | |
| 460 #if defined GPRS | |
| 461 SEND ( mph_mon_ctrl_req(ENTER_PIM_PBCCH) ); | |
| 462 if(var == VAR_NMO_3) { | |
| 463 SEND ( mph_mon_ctrl_req(START_MON_CCCH) ); | |
| 464 AWAIT ( mphc_start_ccch_req_8() ); | |
| 465 } | |
| 466 #else | |
| 467 AWAIT ( mphc_start_ccch_req_11('A') ); | |
| 468 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 469 SEND ( mphc_data_ind_24('J') ); // paging for an unknown TMSI to change page mode | |
| 470 AWAIT ( mphc_start_ccch_req_8() ); | |
| 471 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 472 SEND ( mph_neighbourcell_req_8() ); | |
| 473 AWAIT ( mphc_rxlev_periodic_req_8() ); | |
| 474 #endif | |
| 475 } | |
| 476 } | |
| 477 /*------------------------Following is for ALR020------------------------------- | |
| 478 * | |
| 479 * Description: The idle mode is configured by RR. Layer 1 is configured with MPHC_START_CCCH_REQ. | |
| 480 *-------------------------------------------------------------------------------*/ | |
| 481 | |
| 482 T_STEP initiation_with_paging_reorganisation_alr020(CHAR variant) | |
| 483 { | |
| 484 BEGIN_STEP ("initiation_with_paging_reorganisation_alr020") | |
| 485 { | |
| 486 SEND ( mph_idle_req_3(variant) ); | |
| 487 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 488 AWAIT ( mphc_start_ccch_req_3(variant) ); | |
| 489 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 490 } | |
| 491 } | |
| 492 | |
| 493 | |
| 494 | |
| 495 /*------------------------Following is for ALR022------------------------------- | |
| 496 * | |
| 497 * Description: The idle mode is configured with Paging Reorganisation. After reception of a new paging | |
| 498 * mode this information is forwarded to PL. The message contain the following page modi: | |
| 499 * Variant A: Extended Paging | |
| 500 * Variant B: Paging Reorganisation | |
| 501 * Variant C: Same as before | |
| 502 * No reaction is expected. | |
| 503 *-------------------------------------------------------------------------------*/ | |
| 504 | |
| 505 T_STEP page_mode_change_paging_reorganisation_alr022(CHAR variant) | |
| 506 { | |
| 507 BEGIN_STEP ("page_mode_change_paging_reorganisation_alr022") | |
| 508 { | |
| 509 SEND ( mphc_data_ind_8(variant) ); | |
| 510 if ( variant == 'A' ) | |
| 511 { | |
| 512 SEND ( mphc_data_ind_9() ); | |
| 513 AWAIT ( mphc_start_ccch_req(BS_PA_MFRMS_7, BS_AG_BLKS_RES_2, COMB_CCCH_COMB, CCCH_GROUP_0, PG_23, PBI_0, PGM_EXTENDED ) ); | |
| 514 } | |
| 515 else | |
| 516 { | |
| 517 MUTE (3000); | |
| 518 } | |
| 519 } | |
| 520 } | |
| 521 | |
| 522 | |
| 523 | |
| 524 /*------------------------Following is for ALR025------------------------------- | |
| 525 * | |
| 526 * Description: The idle mode has been configured for normal paging. After a swap to Paging | |
| 527 * Reorganisation RR re-configures normal paging. | |
| 528 *-------------------------------------------------------------------------------*/ | |
| 529 | |
| 530 T_STEP page_mode_change_back_to_normal_paging_alr025() | |
| 531 { | |
| 532 BEGIN_STEP ("page_mode_change_back_to_normal_paging_alr025") | |
| 533 { | |
| 534 SEND ( mphc_data_ind_11() ); | |
| 535 AWAIT ( mphc_start_ccch_req_6() ); | |
| 536 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 537 } | |
| 538 } | |
| 539 | |
| 540 | |
| 541 | |
| 542 /*------------------------Following is for ALR026------------------------------- | |
| 543 * | |
| 544 * Description: The idle mode is configured with Normal Paging. The messages contain the following page | |
| 545 * modi: | |
| 546 * Variant A: Normal Paging | |
| 547 * Variant B: Same as before. | |
| 548 * No reaction is exspected. | |
| 549 *-------------------------------------------------------------------------------*/ | |
| 550 | |
| 551 T_STEP page_mode_change_normal_paging_alr026(CHAR variant) | |
| 552 { | |
| 553 BEGIN_STEP ("page_mode_change_normal_paging_alr026") | |
| 554 { | |
| 555 SEND ( mphc_data_ind_12(variant) ); | |
| 556 MUTE (3000); | |
| 557 } | |
| 558 } | |
| 559 | |
| 560 | |
| 561 | |
| 562 /*------------------------Following is for ALR027------------------------------- | |
| 563 * | |
| 564 * Description: The idle mode has been configured for normal paging. | |
| 565 * After a swap to Extended Paging this mode is configured a second time. | |
| 566 * Layer 1 does not need to be configured the second time, because | |
| 567 * it´s a continues process in ALR(MPHC). | |
| 568 * Variant A: Extended Paging | |
| 569 * Variant B: Same as before | |
| 570 *-------------------------------------------------------------------------------*/ | |
| 571 | |
| 572 T_STEP page_mode_change_extended_paging_a_second_time_alr027(CHAR variant) | |
| 573 { | |
| 574 BEGIN_STEP ("page_mode_change_extended_paging_a_second_time_alr027") | |
| 575 { | |
| 576 SEND ( mphc_data_ind_9() ); | |
| 577 AWAIT ( mphc_start_ccch_req_4() ); | |
| 578 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 579 SEND ( mphc_data_ind_13(variant) ); | |
| 580 MUTE (3000); | |
| 581 } | |
| 582 } | |
| 583 | |
| 584 | |
| 585 | |
| 586 /*------------------------Following is for ALR030------------------------------- | |
| 587 * | |
| 588 * Description: The idle mode is configured for different multiframe periods. | |
| 589 * Variant A: bs_pa_mfrms = 2 | |
| 590 * Variant B: bs_pa_mfrms = 3 | |
| 591 * Variant C: bs_pa_mfrms = 4 | |
| 592 * Variant D: bs_pa_mfrms = 5 | |
| 593 * Variant E: bs_pa_mfrms = 6 | |
| 594 * Variant F: bs_pa_mfrms = 7 | |
| 595 * Variant G: bs_pa_mfrms = 8 | |
| 596 * Variant H: bs_pa_mfrms = 9 | |
| 597 *-------------------------------------------------------------------------------*/ | |
| 598 | |
| 599 T_STEP measurement_reporting_configuration_alr030(CHAR variant) | |
| 600 { | |
| 601 BEGIN_STEP ("measurement_reporting_configuration_alr030") | |
| 602 { | |
| 603 SEND ( mph_idle_req_4(variant) ); | |
| 604 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 605 AWAIT ( mphc_start_ccch_req_7(variant) ); | |
| 606 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 607 SEND ( mph_neighbourcell_req_3() ); | |
| 608 AWAIT ( mphc_rxlev_periodic_req_3() ); | |
| 609 } | |
| 610 } | |
| 611 | |
| 612 | |
| 613 /*------------------------Following is for ALR9806-------------------------------*/ | |
| 614 | |
| 615 T_STEP measurement_reporting_configuration_alr9806() | |
| 616 { | |
| 617 BEGIN_STEP ("measurement_reporting_configuration_alr9806") | |
| 618 { | |
| 619 SEND ( mph_idle_req_3('B') ); | |
| 620 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 621 AWAIT ( mphc_start_ccch_req_14() ); | |
| 622 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 623 SEND ( mph_neighbourcell_req_3() ); | |
| 624 AWAIT ( mphc_rxlev_periodic_req_3() ); | |
| 625 | |
| 626 /* After Cell Reselection configuring the | |
| 627 * PL with the newly found cell | |
| 628 */ | |
| 629 SEND ( mph_idle_req_resel() ); | |
| 630 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 631 AWAIT ( mphc_stop_ccch_req() ); | |
| 632 AWAIT ( mphc_stop_rxlev_periodic_req() ); | |
| 633 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 634 AWAIT ( mphc_new_scell_req_1 ); | |
| 635 | |
| 636 /* After receiving the SI3 configuring the | |
| 637 * PL with the Paging Group. | |
| 638 */ | |
| 639 SEND ( mph_idle_req_cell_sel() ); | |
| 640 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 641 AWAIT ( mphc_start_ccch_req_14() ); | |
| 642 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 643 AWAIT ( mphc_rxlev_periodic_req_18() ); | |
| 644 } | |
| 645 } | |
| 646 | |
| 647 | |
| 648 | |
| 649 T_STEP measurement_reporting_configuration_nwctrl(CHAR variant) | |
| 650 { | |
| 651 BEGIN_STEP ("measurement_reporting_configuration_nwctrl") | |
| 652 { | |
| 653 SEND ( mph_idle_req_4(variant) ); | |
| 654 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 655 AWAIT ( mphc_start_ccch_req_7(variant) ); | |
| 656 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 657 SEND ( mph_neighbourcell_req_2() ); | |
| 658 AWAIT ( mphc_rxlev_periodic_req_2() ); | |
| 659 SEND ( mphc_rxlev_periodic_ind_9(50,40,30,20) ); | |
| 660 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_1) ); | |
| 661 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 662 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 663 SEND ( mphc_ncell_sync_ind(ARFCN_1,FN_OFF_ARFCN_1,TIME_ALIGNMT_1,BSIC_16)); | |
| 664 SEND ( mphc_ncell_sync_ind(ARFCN_14,FN_OFF_ARFCN_14,TIME_ALIGNMT_14,BSIC_16)); | |
| 665 SEND ( mphc_ncell_sync_ind(ARFCN_124,FN_OFF_ARFCN_124,TIME_ALIGNMT_124,BSIC_1)); | |
| 666 AWAIT ( mphc_ncell_bcch_req(ARFCN_1,FN_OFF_ARFCN_1,TIME_ALIGNMT_1,BSIC_16)); | |
| 667 AWAIT ( mphc_ncell_bcch_req(ARFCN_14,FN_OFF_ARFCN_14,TIME_ALIGNMT_14,BSIC_16)); | |
| 668 AWAIT ( mphc_ncell_bcch_req(ARFCN_124,FN_OFF_ARFCN_124,TIME_ALIGNMT_124,BSIC_1)); | |
| 669 SEND ( mphc_rxlev_periodic_ind_9(50,40,30,20) ); | |
| 670 MUTE(500); | |
| 671 } | |
| 672 } | |
| 673 | |
| 674 /*------------------------Following is for ALR046------------------------------- | |
| 675 * | |
| 676 * Description: RR selects the channel 23 after reading the BCCH carrier. | |
| 677 * Variant A: with neighbourcell list (serving cell not included) | |
| 678 * Variant B: with neighbourcell list (serving cell included) | |
| 679 * Variant C: with empty neighbour cell list. | |
| 680 * Variant D: same like A, but with ncc_permitted = 4 | |
| 681 *-------------------------------------------------------------------------------*/ | |
| 682 | |
| 683 T_STEP definition_of_bcch_allocation_alr046(CHAR variant) | |
| 684 { | |
| 685 BEGIN_STEP ("definition_of_bcch_allocation_alr046") | |
| 686 { | |
| 687 SEND ( mph_classmark_req_1() ); | |
| 688 SEND ( mph_idle_req_5(variant) ); | |
| 689 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 690 AWAIT ( mphc_start_ccch_req_9() ); | |
| 691 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 692 SEND ( mph_identity_req_1() ); | |
| 693 SEND ( mph_cbch_req_1() ); | |
| 694 SEND ( mph_neighbourcell_req_4(variant) ); | |
| 695 AWAIT ( mphc_rxlev_periodic_req_4(variant) ); | |
| 696 } | |
| 697 } | |
| 698 | |
| 699 /*------------------------Following is for ALR055------------------------------- | |
| 700 * | |
| 701 * Description: RR starts the sending of channel request messages. Idle mode is stopped and the access | |
| 702 * mode is started. There is one retransmission configured. | |
| 703 *-------------------------------------------------------------------------------*/ | |
| 704 | |
| 705 T_STEP start_of_sending_channel_request_messages_gsm_900__alr055() | |
| 706 { | |
| 707 BEGIN_STEP ("start_of_sending_channel_request_messages_gsm_900__alr055") | |
| 708 { | |
| 709 SEND ( mph_random_access_req_1() ); | |
| 710 AWAIT ( mphc_stop_rxlev_periodic_req() ); | |
| 711 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 712 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 713 AWAIT ( mphc_ra_req_1() ); | |
| 714 SEND ( mphc_ra_con_1() ); | |
| 715 AWAIT ( mph_random_access_cnf_1() ); | |
| 716 AWAIT ( mphc_ra_req_2() ); | |
| 717 } | |
| 718 } | |
| 719 | |
| 720 | |
| 721 | |
| 722 /*------------------------Following is for ALR056------------------------------- | |
| 723 * | |
| 724 * Description: An immediate assignment for the mobile station receives. Configuration of the dedicated | |
| 725 * mode is processed by RR. This stops the access link mode. | |
| 726 *-------------------------------------------------------------------------------*/ | |
| 727 | |
| 728 T_STEP immediate_assignment_for_the_mobile_station_alr056() | |
| 729 { | |
| 730 BEGIN_STEP ("immediate_assignment_for_the_mobile_station_alr056") | |
| 731 { | |
| 732 SEND ( mphc_data_ind_20() ); | |
| 733 AWAIT ( mph_unitdata_ind_10() ); | |
| 734 SEND ( mph_dedicated_req_1() ); | |
| 735 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 736 AWAIT ( mphc_stop_ccch_req() ); | |
| 737 AWAIT ( mphc_stop_ra_req_1() ); | |
| 738 AWAIT ( mphc_immed_assign_req_1() ); | |
| 739 SEND ( mphc_immed_assign_con_1() ); | |
| 740 AWAIT ( mph_dedicated_cnf_1(DEDI_RES_OK) ); | |
| 741 } | |
| 742 } | |
| 743 | |
| 744 | |
| 745 | |
| 746 /*------------------------Following is for ALR062------------------------------- | |
| 747 * | |
| 748 * Description: The extended measurement procedure according GSM 05.08, section 10.1.5 is started. | |
| 749 * | |
| 750 *-------------------------------------------------------------------------------*/ | |
| 751 | |
| 752 T_STEP extended_measurement_reporting_start_procedure_alr062() | |
| 753 { | |
| 754 BEGIN_STEP ("extended_measurement_reporting_start_procedure_alr062") | |
| 755 { | |
| 756 SEND ( mph_ext_meas_req_1() ); | |
| 757 AWAIT ( mphc_init_l1_req_2() ); | |
| 758 SEND ( mphc_init_l1_con_1() ); | |
| 759 AWAIT ( mphc_rxlev_req() ); | |
| 760 } | |
| 761 } | |
| 762 | |
| 763 | |
| 764 | |
| 765 /*------------------------Following is for ALR063------------------------------- | |
| 766 * | |
| 767 * Description: The extended measurement procedure passes the step of the power measurement. | |
| 768 * | |
| 769 *-------------------------------------------------------------------------------*/ | |
| 770 | |
| 771 T_STEP extended_measurement_reporting_successful_power_measurement_alr063() | |
| 772 { | |
| 773 BEGIN_STEP ("extended_measurement_reporting_successful_power_measurement_alr063") | |
| 774 { | |
| 775 SEND ( mphc_rxlev_ind(RXLEV_IDX_7) ); | |
| 776 | |
| 777 AWAIT ( mphc_rxlev_req() ); | |
| 778 SEND ( mphc_rxlev_ind(RXLEV_IDX_7) ); | |
| 779 | |
| 780 AWAIT ( mphc_rxlev_req() ); | |
| 781 SEND ( mphc_rxlev_ind(RXLEV_IDX_7) ); | |
| 782 | |
| 783 AWAIT ( mphc_rxlev_req() ); | |
| 784 SEND ( mphc_rxlev_ind(RXLEV_IDX_7) ); | |
| 785 | |
| 786 AWAIT ( mphc_rxlev_req() ); | |
| 787 SEND ( mphc_rxlev_ind(RXLEV_IDX_7) ); | |
| 788 | |
| 789 AWAIT ( mph_ext_meas_cnf_1() ); | |
| 790 SEND ( mph_bsic_req(CONST_1023) ); | |
| 791 AWAIT ( mphc_ncell_sync_req_initial(CONST_1023) ); | |
| 792 | |
| 793 /*if page mode = REORG, L1 would not react, | |
| 794 therefore page mode NORMAL is configured and | |
| 795 BCCH reading is reduced*/ | |
| 796 stop_page_mode_reorg_before_hplnm_search_procedure(); | |
| 797 } | |
| 798 } | |
| 799 | |
| 800 | |
| 801 | |
| 802 /*------------------------Following is for ALR071------------------------------- | |
| 803 * | |
| 804 * Description: The MS is in idle mode. It receives a paging message corresponding | |
| 805 * to the actual IMSI or TMSI. A paging indication is forwarded to RR. | |
| 806 * Variant A: IMSI mobile identity 1, any channel needed | |
| 807 * Variant B: IMSI mobile identity 2, any channel needed | |
| 808 * Variant C: TMSI mobile identity 1, TCH/F channel needed | |
| 809 * Variant D: TMSI mobile identity 2, TCH/F channel needed | |
| 810 * Variant E: IMSI mobile identity 1, SDCCH channel needed | |
| 811 * Variant F: IMSI mobile identity 2, SDCCH channel needed | |
| 812 * Variant G: TMSI mobile identity 1, Dual Rate channel needed | |
| 813 * Variant H: TMSI mobile identity 2, Dual Rate channel needed | |
| 814 *-------------------------------------------------------------------------------*/ | |
| 815 | |
| 816 T_STEP paging_req_1_imsi_tmsi_for_ms_alr071(CHAR variant) | |
| 817 { | |
| 818 BEGIN_STEP ("paging_req_1_imsi_tmsi_for_ms_alr071") | |
| 819 { | |
| 820 SEND ( mphc_data_ind_24(variant) ); | |
| 821 AWAIT ( mph_paging_ind_1(variant) ); | |
| 822 AWAIT ( mphc_start_ccch_req_8() ); | |
| 823 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 824 } | |
| 825 } | |
| 826 | |
| 827 | |
| 828 | |
| 829 /*------------------------Following is for ALR072------------------------------- | |
| 830 * | |
| 831 * Description: The MS is in idle mode. It receives paging request type 1 messages. | |
| 832 * The message content is not forwarded to RR, because the message | |
| 833 * content doesn´t match to the MS identities. | |
| 834 * Variant A: wrong IMSI mobile identity 1 | |
| 835 * Variant B: wrong TMSI mobile identity 1 | |
| 836 * Variant C: wrong IMSI mobile identity 2 | |
| 837 * Variant D: wrong TMSI mobile identity 2 | |
| 838 * Variant E: wrong type mobile identity 2 | |
| 839 *-------------------------------------------------------------------------------*/ | |
| 840 | |
| 841 T_STEP paging_req_1_not_for_ms_alr072(CHAR variant) | |
| 842 { | |
| 843 BEGIN_STEP ("paging_req_1_not_for_ms_alr072") | |
| 844 { | |
| 845 SEND ( mphc_data_ind_25(variant) ); | |
| 846 } | |
| 847 } | |
| 848 | |
| 849 | |
| 850 | |
| 851 /*------------------------Following is for ALR073------------------------------- | |
| 852 * | |
| 853 * Description: The MS is in idle mode. It receives a paging message corresponding to the | |
| 854 * actual IMSI or TMSI. A paging indication is forwarded to RR. | |
| 855 * The IMSI is less than 15 digits and the TMSI has only one valid byte, | |
| 856 * but is signalled in different ways by the infrastructure | |
| 857 * Variant A: Short TMSI mobile identity 1, any channel needed, 1 byte length from the network | |
| 858 * Variant B: Short TMSI mobile identity 2, TCH/F needed, 3 bytes length from the network | |
| 859 * Variant C: Short IMSI mobile identity 1, SDCCH needed, 10 digits | |
| 860 * Variant D: Short IMSI mobile identity 2, Dual Rate needed, 10 digits | |
| 861 * Variant E: Short TMSI mobile identity 1, any channel needed, 2 bytes length from the network | |
| 862 * Variant F: Short TMSI mobile identity 2, TCH/F needed, 4 bytes length from the network | |
| 863 *-------------------------------------------------------------------------------*/ | |
| 864 | |
| 865 T_STEP paging_req_1_short_imsi_tmsi_for_ms_alr073(CHAR variant) | |
| 866 { | |
| 867 BEGIN_STEP ("paging_req_1_short_imsi_tmsi_for_ms_alr073") | |
| 868 { | |
| 869 SEND ( mph_identity_req_2() ); | |
| 870 SEND ( mphc_data_ind_26(variant) ); | |
| 871 AWAIT ( mph_paging_ind_2(variant) ); | |
| 872 AWAIT ( mphc_start_ccch_req_8() ); | |
| 873 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 874 } | |
| 875 } | |
| 876 | |
| 877 | |
| 878 | |
| 879 /*------------------------Following is for ALR075------------------------------- | |
| 880 * | |
| 881 * Description: The MS is in idle mode. It receives a paging message corresponding | |
| 882 * to the actual TMSI in the information elements mobile identity 1 or 2. | |
| 883 * A paging indication is forwarded to RR. | |
| 884 * Variant A: TMSI mobile identity 1, any channel needed | |
| 885 * Variant B: TMSI mobile identity 1, SDCCH needed | |
| 886 * Variant C: TMSI mobile identity 1, TCH/F needed | |
| 887 * Variant D: TMSI mobile identity 1, Dual Rate needed | |
| 888 * Variant E: TMSI mobile identity 2, any channel needed | |
| 889 * Variant F: TMSI mobile identity 2, SDCCH needed | |
| 890 * Variant G: TMSI mobile identity 2, TCH/F needed | |
| 891 * Variant H: TMSI mobile identity 2, Dual Rate needed | |
| 892 *-------------------------------------------------------------------------------*/ | |
| 893 | |
| 894 T_STEP paging_req_2_tmsi_for_ms_mobile_identity_1_or_2__alr075(CHAR variant) | |
| 895 { | |
| 896 BEGIN_STEP ("paging_req_2_tmsi_for_ms_mobile_identity_1_or_2__alr075") | |
| 897 { | |
| 898 SEND ( mphc_data_ind_28(variant) ); | |
| 899 AWAIT ( mph_paging_ind_3(variant) ); | |
| 900 AWAIT ( mphc_start_ccch_req_8() ); | |
| 901 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 902 } | |
| 903 } | |
| 904 | |
| 905 | |
| 906 | |
| 907 /*------------------------Following is for ALR077------------------------------- | |
| 908 * | |
| 909 * Description: The MS is in idle mode. It receives a paging request type 2 message | |
| 910 * corresponding to the actual IMSI or TMSI in information element in | |
| 911 * the information element mobile identity 3. A paging indication is | |
| 912 * forwarded to RR. | |
| 913 * Variant A: IMSI mobile identity 3, any channel needed | |
| 914 * Variant B: IMSI mobile identity 3, SDCCH needed | |
| 915 * Variant C: IMSI mobile identity 3, TCH/F needed | |
| 916 * Variant D: IMSI mobile identity 3, Dual Rate needed | |
| 917 * Variant E: IMSI mobile identity 3, no channel indication | |
| 918 * Variant F: TMSI mobile identity 3, any channel needed | |
| 919 * Variant G: TMSI mobile identity 3, SDCCH needed, | |
| 920 * Variant H: TMSI mobile identity 3, TCH/F needed | |
| 921 * Variant I: TMSI mobile identity 3, Dual Rate needed | |
| 922 * Variant J: TMSI mobile identity 3, no channel indication | |
| 923 *-------------------------------------------------------------------------------*/ | |
| 924 | |
| 925 T_STEP paging_req_2_imsi_tmsi_for_ms_mobile_identity_3__alr077(CHAR variant) | |
| 926 { | |
| 927 BEGIN_STEP ("paging_req_2_imsi_tmsi_for_ms_mobile_identity_3__alr077") | |
| 928 { | |
| 929 SEND ( mphc_data_ind_30(variant) ); | |
| 930 AWAIT ( mph_paging_ind_4(variant) ); | |
| 931 AWAIT ( mphc_start_ccch_req_8() ); | |
| 932 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 933 } | |
| 934 } | |
| 935 | |
| 936 | |
| 937 | |
| 938 /*------------------------Following is for ALR078------------------------------- | |
| 939 * | |
| 940 * Description: The MS is in idle mode. It receives a paging request type 2 message | |
| 941 * corresponding to the actual IMSI or TMSI in information element in | |
| 942 * the information element mobile identity 3. A paging indication is | |
| 943 * forwarded to RR. The IMSI is less than 15 digits and the TMSI has only | |
| 944 * one valid byte, but is signalled in different ways by the infrastructure | |
| 945 * Variant A: Short IMSI mobile identity 3, any channel needed, 10 digits | |
| 946 * Variant B: Short TMSI mobile identity 3, SDCCH needed, 1 byte from the network | |
| 947 * Variant C: Short TMSI mobile identity 3, TCH/F needed, 2 bytes from the network | |
| 948 * Variant D: Short TMSI mobile identity 3, Dual Rate needed, 3 bytes from the network | |
| 949 * Variant E: Short TMSI mobile identity 3, No channel indication, 4 bytes from the network | |
| 950 *-------------------------------------------------------------------------------*/ | |
| 951 | |
| 952 T_STEP paging_req_2_short_imsi_tmsi_for_ms_mobile_identity_3__alr078(CHAR variant) | |
| 953 { | |
| 954 BEGIN_STEP ("paging_req_2_short_imsi_tmsi_for_ms_mobile_identity_3__alr078") | |
| 955 { | |
| 956 SEND ( mph_identity_req_2() ); | |
| 957 SEND ( mphc_data_ind_31(variant) ); | |
| 958 AWAIT ( mph_paging_ind_5(variant) ); | |
| 959 AWAIT ( mphc_start_ccch_req_8() ); | |
| 960 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 961 } | |
| 962 } | |
| 963 | |
| 964 | |
| 965 | |
| 966 /*------------------------Following is for ALR080------------------------------- | |
| 967 * | |
| 968 * Description: The MS is in idle mode. It receives a paging message corresponding | |
| 969 * to the actual TMSI in the information elements mobile identity 1 to 4. | |
| 970 * A paging indication is forwarded to RR. | |
| 971 * Variant A: TMSI mobile identity 1, any channel needed | |
| 972 * Variant B: TMSI mobile identity 1, SDCCH needed | |
| 973 * Variant C: TMSI mobile identity 1, TCH/F needed | |
| 974 * Variant D: TMSI mobile identity 1, Dual Rate needed | |
| 975 * Variant E: TMSI mobile identity 2, any channel needed | |
| 976 * Variant F: TMSI mobile identity 2, SDCCH needed | |
| 977 * Variant G: TMSI mobile identity 2, TCH/F needed | |
| 978 * Variant H: TMSI mobile identity 2, Dual Rate needed | |
| 979 * Variant I: TMSI mobile identity 3, any channel needed | |
| 980 * Variant J: TMSI mobile identity 3, SDCCH needed | |
| 981 * Variant K: TMSI mobile identity 3, TCH/F needed | |
| 982 * Variant L: TMSI mobile identity 3, Dual Rate needed | |
| 983 * Variant M: TMSI mobile identity 3, no channel indication | |
| 984 * Variant N: TMSI mobile identity 4, any channel needed | |
| 985 * Variant O: TMSI mobile identity 4, SDCCH needed | |
| 986 * Variant P: TMSI mobile identity 4, TCH/F needed | |
| 987 * Variant Q: TMSI mobile identity 4, Dual Rate needed | |
| 988 * Variant R: TMSI mobile identity 4, no channel indication | |
| 989 *-------------------------------------------------------------------------------*/ | |
| 990 | |
| 991 T_STEP paging_req_3_tmsi_for_ms_alr080(CHAR variant) | |
| 992 { | |
| 993 BEGIN_STEP ("paging_req_3_tmsi_for_ms_alr080") | |
| 994 { | |
| 995 SEND ( mphc_data_ind_33(variant) ); | |
| 996 AWAIT ( mph_paging_ind_6(variant) ); | |
| 997 AWAIT ( mphc_start_ccch_req_8() ); | |
| 998 AWAIT ( mphc_scell_nbcch_req_periodic() ); | |
| 999 } | |
| 1000 } | |
| 1001 | |
| 1002 /*------------------------Following is for ALR088------------------------------- | |
| 1003 * | |
| 1004 * Description: ALR starts ncell measurements for cells 23, 14, 124, 1, | |
| 1005 * then RR requests a full list power measurement. Four channels | |
| 1006 * in the order 23, 14, 124, 1 have acceptable fieldstrength values. | |
| 1007 * Then the non-serving cell carrier with the highest fieldstrength | |
| 1008 * (channel 14) is selected for synchronizing to frequency correction | |
| 1009 * burst and synchron burst. | |
| 1010 *-------------------------------------------------------------------------------*/ | |
| 1011 | |
| 1012 T_STEP find_bcch_carrier_second_channel_alr088() | |
| 1013 { | |
| 1014 BEGIN_STEP ("find_bcch_carrier_second_channel_alr088") | |
| 1015 { | |
| 1016 SEND ( mphc_rxlev_periodic_ind_2() ); | |
| 1017 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 1018 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 1019 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_1) ); | |
| 1020 SEND ( mphc_rxlev_periodic_ind_2() ); | |
| 1021 AWAIT ( mph_measurement_ind_18() ); | |
| 1022 SEND ( mphc_rxlev_periodic_ind_2() ); | |
| 1023 SEND ( mphc_ncell_sync_ind (ARFCN_14) ); | |
| 1024 AWAIT ( mphc_ncell_bcch_req (ARFCN_14) ); | |
| 1025 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_14) ); | |
| 1026 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_14) ); | |
| 1027 SEND ( mphc_ncell_sync_ind(ARFCN_124,FN_OFF_ARFCN_124,TIME_ALIGNMT_124,BSIC_1) ); | |
| 1028 AWAIT ( mphc_ncell_bcch_req (ARFCN_124, FN_OFF_ARFCN_124, TIME_ALIGNMT_124)); | |
| 1029 SEND ( mphc_ncell_sync_ind_3() ); | |
| 1030 AWAIT ( mphc_ncell_bcch_req (ARFCN_1, FN_OFF_ARFCN_1, TIME_ALIGNMT_1)); | |
| 1031 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_124) ); | |
| 1032 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_124) ); | |
| 1033 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_1) ); | |
| 1034 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_1) ); | |
| 1035 SEND ( mphc_rxlev_periodic_ind_2() ); | |
| 1036 AWAIT ( mph_measurement_ind_19() ); | |
| 1037 AWAIT ( mph_unitdata_ind_si3(ARFCN_1) ); | |
| 1038 AWAIT ( mph_unitdata_ind_si3(ARFCN_14) ); | |
| 1039 AWAIT ( mph_unitdata_ind_si3(ARFCN_124) ); | |
| 1040 SEND ( mph_power_req_2() ); | |
| 1041 AWAIT ( mphc_rxlev_req() ); | |
| 1042 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1043 AWAIT ( mphc_rxlev_req() ); | |
| 1044 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1045 AWAIT ( mphc_rxlev_req() ); | |
| 1046 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1047 AWAIT ( mphc_rxlev_req() ); | |
| 1048 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1049 AWAIT ( mphc_rxlev_req() ); | |
| 1050 SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1051 AWAIT ( mph_power_cnf_3() ); | |
| 1052 SEND ( mph_bsic_req(ARFCN_14) ); | |
| 1053 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 1054 | |
| 1055 stop_page_mode_reorg_before_hplnm_search_procedure(); | |
| 1056 } | |
| 1057 } | |
| 1058 | |
| 1059 /*------------------------Following is for ALR091------------------------------- | |
| 1060 * | |
| 1061 * Description: The BCCH data blocks are read for the channel 14. | |
| 1062 *-------------------------------------------------------------------------------*/ | |
| 1063 | |
| 1064 T_STEP read_bcch_data_alr091() | |
| 1065 { | |
| 1066 BEGIN_STEP ("read_bcch_data_alr091") | |
| 1067 { | |
| 1068 SEND ( mphc_ncell_sync_ind (ARFCN_14) ); | |
| 1069 AWAIT ( mph_bsic_cnf_14() ); | |
| 1070 AWAIT ( mphc_ncell_bcch_req (ARFCN_14) ); | |
| 1071 SEND ( mphc_ncell_bcch_ind_si2(ARFCN_14) ); | |
| 1072 AWAIT ( mph_unitdata_ind_si2(ARFCN_14) ); | |
| 1073 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_14) ); | |
| 1074 AWAIT ( mphc_ncell_bcch_req (ARFCN_14) ); | |
| 1075 SEND ( mphc_ncell_bcch_ind_invalid(ARFCN_14) ); | |
| 1076 AWAIT ( mph_error_ind_3() ); | |
| 1077 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_14) ); | |
| 1078 AWAIT ( mphc_ncell_bcch_req (ARFCN_14) ); | |
| 1079 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_14) ); | |
| 1080 AWAIT ( mph_unitdata_ind_si3(ARFCN_14) ); | |
| 1081 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_14) ); | |
| 1082 } | |
| 1083 } | |
| 1084 | |
| 1085 /*------------------------Following is for ALR094------------------------------- | |
| 1086 * | |
| 1087 * Description: RR rejects the BCCH carrier. The next best channel (channel 124) | |
| 1088 * is selected for synchronizing to frequency correction | |
| 1089 * burst and synchron burst. This is also rejedted. The next best | |
| 1090 * channel (channel 1) is selected for synchronising | |
| 1091 * to frequency correction burst and synchron burst. | |
| 1092 *-------------------------------------------------------------------------------*/ | |
| 1093 | |
| 1094 T_STEP rr_rejects_bcch_carrier_try_fourth_channel_alr094() | |
| 1095 { | |
| 1096 BEGIN_STEP ("rr_rejects_bcch_carrier_try_fourth_channel_alr094") | |
| 1097 { | |
| 1098 SEND ( mph_bsic_req(ARFCN_124) ); | |
| 1099 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 1100 SEND ( mphc_ncell_sync_ind(ARFCN_124,FN_OFF_ARFCN_124,TIME_ALIGNMT_124,BSIC_1) ); | |
| 1101 AWAIT ( mph_bsic_cnf_15() ); | |
| 1102 AWAIT ( mphc_ncell_bcch_req (ARFCN_124, FN_OFF_ARFCN_124, TIME_ALIGNMT_124)); | |
| 1103 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_124) ); | |
| 1104 AWAIT ( mph_unitdata_ind_si3(ARFCN_124) ); | |
| 1105 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_124) ); | |
| 1106 SEND ( mph_bsic_req(ARFCN_1) ); | |
| 1107 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_1) ); | |
| 1108 SEND ( mphc_ncell_sync_ind_3() ); | |
| 1109 AWAIT ( mph_bsic_cnf_16() ); | |
| 1110 AWAIT ( mphc_ncell_bcch_req (ARFCN_1, FN_OFF_ARFCN_1, TIME_ALIGNMT_1)); | |
| 1111 SEND ( mphc_ncell_bcch_ind_si2(ARFCN_1) ); | |
| 1112 AWAIT ( mph_unitdata_ind_si2(ARFCN_1) ); | |
| 1113 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_1) ); | |
| 1114 AWAIT ( mphc_ncell_bcch_req (ARFCN_1, FN_OFF_ARFCN_1, TIME_ALIGNMT_1)); | |
| 1115 } | |
| 1116 } | |
| 1117 | |
| 1118 /*------------------------Following is for ALR154------------------------------- | |
| 1119 * | |
| 1120 * Description: A handover is performed. It is checked that the serving cell | |
| 1121 * channel numbers are correctly set. | |
| 1122 * Variant A: AMR not signalled | |
| 1123 * Variant B: AMR signalled | |
| 1124 *-------------------------------------------------------------------------------*/ | |
| 1125 | |
| 1126 T_STEP handover_serving_cell_parameter_alr154(CHAR variant) | |
| 1127 { | |
| 1128 BEGIN_STEP ("handover_serving_cell_parameter_alr154") | |
| 1129 { | |
| 1130 SEND ( mph_dedicated_req_6(variant) ); | |
| 1131 AWAIT ( mphc_async_ho_req_3(variant) ); | |
| 1132 SEND ( mphc_async_ho_con_1() ); | |
| 1133 SEND ( mphc_handover_finished_1(HO_COMPLETE) ); | |
| 1134 AWAIT ( mph_dedicated_cnf_1(DEDI_RES_OK) ); | |
| 1135 } | |
| 1136 } | |
| 1137 | |
| 1138 /*------------------------Following is for ALR155------------------------------- | |
| 1139 * | |
| 1140 * Description: The MS has entered the dedicated mode. The BA list is updated | |
| 1141 * by neighbour cell requests generated by RR from SI 5 | |
| 1142 * Every frequency of the MPH_NEIGHBOURCELL_REQ must occur within | |
| 1143 * the MPHC_UPDATE_BA_LIST plus the serving cell (if not already | |
| 1144 * included). In the MPHC_UPDATE_BA_LIST the first up to 8 | |
| 1145 * frequencies must be in the same order as in the | |
| 1146 * MPH_NEIGHBOURCELL_REQ, the order of the other depends on the | |
| 1147 * replacing policy of ALR. | |
| 1148 *-------------------------------------------------------------------------------*/ | |
| 1149 T_STEP neighbour_cell_in_dedicated_alr155() | |
| 1150 { | |
| 1151 BEGIN_STEP ("neighbour_cell_in_dedicated_alr155") | |
| 1152 { | |
| 1153 SEND ( mph_neighbourcell_req_16() ); | |
| 1154 AWAIT ( mphc_update_ba_list_4() ); | |
| 1155 SEND ( mph_neighbourcell_req_17() ); | |
| 1156 AWAIT ( mphc_update_ba_list_5() ); | |
| 1157 } | |
| 1158 } | |
| 1159 | |
| 1160 /*------------------------Following is for ALR155------------------------------- | |
| 1161 * | |
| 1162 * Description: A handover has been performed. The BA list is updated for the | |
| 1163 * new cell | |
| 1164 * Every frequency of the MPH_NEIGHBOURCELL_REQ must occur within | |
| 1165 * the MPHC_UPDATE_BA_LIST plus the serving cell (if not already | |
| 1166 * included). In the MPHC_UPDATE_BA_LIST the first up to 8 | |
| 1167 * frequencies must be in the same order as in the | |
| 1168 * MPH_NEIGHBOURCELL_REQ, the order of the other depends on the | |
| 1169 * replacing policy of ALR. | |
| 1170 *-------------------------------------------------------------------------------*/ | |
| 1171 T_STEP neighbour_cell_after_ho_alr156() | |
| 1172 { | |
| 1173 BEGIN_STEP ("neighbour_cell_after_ho_alr156") | |
| 1174 { | |
| 1175 SEND ( mph_neighbourcell_req_18() ); | |
| 1176 AWAIT ( mphc_update_ba_list_6() ); | |
| 1177 SEND ( mph_neighbourcell_req_19() ); | |
| 1178 AWAIT ( mphc_update_ba_list_7() ); | |
| 1179 } | |
| 1180 } | |
| 1181 | |
| 1182 /*------------------------Following is for ALR200------------------------------- | |
| 1183 * | |
| 1184 * Description: The ALR is configured for DCS 1800. | |
| 1185 *-------------------------------------------------------------------------------*/ | |
| 1186 | |
| 1187 T_STEP filter_and_routings_dcs_1800__alr200() | |
| 1188 { | |
| 1189 BEGIN_STEP ("filter_and_routings_dcs_1800__alr200") | |
| 1190 { | |
| 1191 //COMMAND("TAP RESET"); | |
| 1192 //COMMAND("PL RESET"); | |
| 1193 COMMAND("TAP REDIRECT CLEAR"); | |
| 1194 COMMAND("PL REDIRECT CLEAR"); | |
| 1195 COMMAND("PL REDIRECT RR TAP"); | |
| 1196 COMMAND("PL REDIRECT DL TAP"); | |
| 1197 COMMAND("PL REDIRECT MMI TAP"); | |
| 1198 COMMAND("PL REDIRECT L1 TAP"); | |
| 1199 COMMAND("TAP REDIRECT TAP PL"); | |
| 1200 COMMAND("PL CONFIG STD=4"); | |
| 1201 SEND ( em_l1_event_req_2() ); | |
| 1202 //COMMAND("TAP PARKING "); | |
| 1203 COMMAND("PL REDIRECT MMI *1111110******** NULL"); | |
| 1204 | |
| 1205 } | |
| 1206 } | |
| 1207 | |
| 1208 | |
| 1209 | |
| 1210 /*------------------------Following is for ALR201------------------------------- | |
| 1211 * | |
| 1212 * Description: RR starts a cell selection. Four channels in the order 637, 580, | |
| 1213 * 885, 512 have acceptable fieldstrength values. | |
| 1214 *-------------------------------------------------------------------------------*/ | |
| 1215 | |
| 1216 T_STEP initiation_by_rr_4_channels_available_alr201() | |
| 1217 { | |
| 1218 BEGIN_STEP ("initiation_by_rr_4_channels_available_alr201") | |
| 1219 { | |
| 1220 filter_and_routings_dcs_1800__alr200(); | |
| 1221 | |
| 1222 SEND ( mph_power_req_3() ); | |
| 1223 AWAIT ( mphc_init_l1_req_3() ); | |
| 1224 SEND ( mphc_init_l1_con_1() ); | |
| 1225 AWAIT ( mphc_rxlev_req() ); | |
| 1226 SEND ( mphc_rxlev_ind(RXLEV_IDX_3_1800) ); | |
| 1227 AWAIT ( mphc_rxlev_req() ); | |
| 1228 SEND ( mphc_rxlev_ind(RXLEV_IDX_3_1800) ); | |
| 1229 AWAIT ( mphc_rxlev_req() ); | |
| 1230 SEND ( mphc_rxlev_ind(RXLEV_IDX_3_1800) ); | |
| 1231 AWAIT ( mphc_rxlev_req() ); | |
| 1232 SEND ( mphc_rxlev_ind(RXLEV_IDX_3_1800) ); | |
| 1233 AWAIT ( mphc_rxlev_req() ); | |
| 1234 SEND ( mphc_rxlev_ind(RXLEV_IDX_3_1800) ); | |
| 1235 AWAIT ( mph_power_cnf_4() ); | |
| 1236 } | |
| 1237 } | |
| 1238 | |
| 1239 | |
| 1240 | |
| 1241 /*------------------------Following is for ALR203------------------------------- | |
| 1242 * | |
| 1243 * Description: The carrier with the highest fieldstrength (channel 637) is | |
| 1244 * selected for synchronizing to frequency correction burst and | |
| 1245 * synchron burst. | |
| 1246 *-------------------------------------------------------------------------------*/ | |
| 1247 | |
| 1248 T_STEP find_bcch_carrier_first_channel_alr203() | |
| 1249 { | |
| 1250 BEGIN_STEP ("find_bcch_carrier_first_channel_alr203") | |
| 1251 { | |
| 1252 SEND ( mph_bsic_req(ARFCN_637_STD_1800) ); | |
| 1253 AWAIT ( mphc_network_sync_req(ARFCN_637, SM_WIDE_MODE) ); | |
| 1254 SEND ( mphc_network_sync_ind_9() ); | |
| 1255 AWAIT ( mph_bsic_cnf_17() ); | |
| 1256 AWAIT ( mphc_new_scell_req_5() ); | |
| 1257 SEND ( mphc_new_scell_con_1() ); | |
| 1258 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1259 } | |
| 1260 } | |
| 1261 | |
| 1262 | |
| 1263 | |
| 1264 /*------------------------Following is for ALR204------------------------------- | |
| 1265 * | |
| 1266 * Description: The carrier with the highest fieldstrength (channel 637) | |
| 1267 * is selected for synchronizing to frequency correction burst and | |
| 1268 * synchron burst. The attempt failed. A second request is started | |
| 1269 * for the next strongest channel (channel 580). | |
| 1270 *-------------------------------------------------------------------------------*/ | |
| 1271 | |
| 1272 T_STEP find_bcch_carrier_first_channel_failed_then_second_channel_alr204() | |
| 1273 { | |
| 1274 BEGIN_STEP ("find_bcch_carrier_first_channel_failed_then_second_channel_alr204") | |
| 1275 { | |
| 1276 SEND ( mph_bsic_req(ARFCN_637_STD_1800) ); | |
| 1277 AWAIT ( mphc_network_sync_req(ARFCN_637, SM_WIDE_MODE) ); | |
| 1278 SEND ( mphc_network_sync_ind_failed(ARFCN_637) ); | |
| 1279 AWAIT ( mph_bsic_cnf_failed(ARFCN_637_STD_1800) ); | |
| 1280 SEND ( mph_bsic_req(ARFCN_580_STD_1800) ); | |
| 1281 AWAIT ( mphc_network_sync_req(ARFCN_580, SM_WIDE_MODE) ); | |
| 1282 } | |
| 1283 } | |
| 1284 | |
| 1285 | |
| 1286 | |
| 1287 /*------------------------Following is for ALR206------------------------------- | |
| 1288 * | |
| 1289 * Description: The next best channel (channel 14) is selected for synchronizing | |
| 1290 * to frequency correction burst and synchron burst. | |
| 1291 *-------------------------------------------------------------------------------*/ | |
| 1292 | |
| 1293 T_STEP find_bcch_carrier_second_channel_alr206() | |
| 1294 { | |
| 1295 BEGIN_STEP ("find_bcch_carrier_second_channel_alr206") | |
| 1296 { | |
| 1297 SEND ( mphc_network_sync_ind_14() ); | |
| 1298 AWAIT ( mph_bsic_cnf_22() ); | |
| 1299 AWAIT ( mphc_new_scell_req_6() ); | |
| 1300 SEND ( mphc_new_scell_con_1() ); | |
| 1301 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1302 } | |
| 1303 } | |
| 1304 | |
| 1305 | |
| 1306 | |
| 1307 /*------------------------Following is for ALR207------------------------------- | |
| 1308 * | |
| 1309 * Description: The BCCH data blocks are read for the channel 23. | |
| 1310 *-------------------------------------------------------------------------------*/ | |
| 1311 | |
| 1312 T_STEP read_bcch_data_alr207() | |
| 1313 { | |
| 1314 BEGIN_STEP ("read_bcch_data_alr207") | |
| 1315 { | |
| 1316 SEND ( mphc_data_ind_42() ); | |
| 1317 AWAIT ( mph_unitdata_ind_si1(ARFCN_637) ); | |
| 1318 SEND ( mphc_data_ind_43() ); | |
| 1319 AWAIT ( mph_unitdata_ind_si2(ARFCN_637) ); | |
| 1320 SEND ( mphc_data_ind_44() ); | |
| 1321 AWAIT ( mph_unitdata_ind_si3(ARFCN_637) ); | |
| 1322 SEND ( mphc_data_ind_45() ); | |
| 1323 AWAIT ( mph_unitdata_ind_si4(ARFCN_637) ); | |
| 1324 } | |
| 1325 } | |
| 1326 | |
| 1327 | |
| 1328 | |
| 1329 /*------------------------Following is for ALR209------------------------------- | |
| 1330 * | |
| 1331 * Description: RR rejects the BCCH carrier. The next best channel (channel 124) | |
| 1332 * is selected for synchronizing to frequency correction burst | |
| 1333 * and synchron burst. | |
| 1334 *-------------------------------------------------------------------------------*/ | |
| 1335 | |
| 1336 T_STEP rr_rejects_bcch_carrier_try_third_channel_alr209() | |
| 1337 { | |
| 1338 BEGIN_STEP ("rr_rejects_bcch_carrier_try_third_channel_alr209") | |
| 1339 { | |
| 1340 SEND ( mph_bsic_req(ARFCN_885_STD_1800) ); | |
| 1341 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1342 AWAIT ( mphc_network_sync_req(ARFCN_885, SM_NARROW_MODE) ); | |
| 1343 SEND ( mphc_network_sync_ind_15() ); | |
| 1344 AWAIT ( mph_bsic_cnf_23() ); | |
| 1345 AWAIT ( mphc_new_scell_req_7() ); | |
| 1346 SEND ( mphc_new_scell_con_1() ); | |
| 1347 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1348 SEND ( mphc_data_ind_47() ); | |
| 1349 AWAIT ( mph_unitdata_ind_si1(ARFCN_885) ); | |
| 1350 } | |
| 1351 } | |
| 1352 | |
| 1353 | |
| 1354 | |
| 1355 /*------------------------Following is for ALR210------------------------------- | |
| 1356 * | |
| 1357 * Description: RR rejects the BCCH carrier. The next best channel (channel 1) | |
| 1358 * is selected for synchronising to frequency correction burst | |
| 1359 * and synchron burst. | |
| 1360 *-------------------------------------------------------------------------------*/ | |
| 1361 | |
| 1362 T_STEP rr_rejects_bcch_carrier_try_fourth_channel_alr210() | |
| 1363 { | |
| 1364 BEGIN_STEP ("rr_rejects_bcch_carrier_try_fourth_channel_alr210") | |
| 1365 { | |
| 1366 SEND ( mph_bsic_req(ARFCN_512_STD_1800) ); | |
| 1367 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1368 AWAIT ( mphc_network_sync_req(ARFCN_512, SM_NARROW_MODE) ); | |
| 1369 SEND ( mphc_network_sync_ind_16() ); | |
| 1370 AWAIT ( mph_bsic_cnf_24() ); | |
| 1371 AWAIT ( mphc_new_scell_req_8() ); | |
| 1372 SEND ( mphc_new_scell_con_1() ); | |
| 1373 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1374 SEND ( mphc_data_ind_48() ); | |
| 1375 AWAIT ( mph_unitdata_ind_si1(ARFCN_512) ); | |
| 1376 } | |
| 1377 } | |
| 1378 | |
| 1379 | |
| 1380 | |
| 1381 /*------------------------Following is for ALR212------------------------------- | |
| 1382 * | |
| 1383 * Description: RR selects the channel 14 after reading the BCCH carrier. | |
| 1384 * Variant A: with neighbourcell list | |
| 1385 * Variant B: with empty neighbour cell list | |
| 1386 * Variant C: like A, but non-combined CCCH | |
| 1387 *-------------------------------------------------------------------------------*/ | |
| 1388 | |
| 1389 T_STEP rr_select_second_channel_alr212(CHAR variant) | |
| 1390 { | |
| 1391 BEGIN_STEP ("rr_select_second_channel_alr212") | |
| 1392 { | |
| 1393 SEND ( mph_classmark_req_2() ); | |
| 1394 SEND ( mph_idle_req_7(variant) ); | |
| 1395 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1396 AWAIT ( mphc_start_ccch_req_11(variant) ); | |
| 1397 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1398 SEND ( mph_identity_req_1() ); | |
| 1399 SEND ( mph_cbch_req_1() ); | |
| 1400 SEND ( mph_neighbourcell_req_5(variant) ); | |
| 1401 AWAIT ( mphc_rxlev_periodic_req_5(variant) ); | |
| 1402 } | |
| 1403 } | |
| 1404 | |
| 1405 /*------------------------Following is for ALR600------------------------------- | |
| 1406 * | |
| 1407 * Description: The ALR is configured for Dualband GSM 900 / DCS 1800. | |
| 1408 *-------------------------------------------------------------------------------*/ | |
| 1409 | |
| 1410 T_STEP filter_and_routings_dualband_gsm_900_dcs_1800__alr600() | |
| 1411 { | |
| 1412 BEGIN_STEP ("filter_and_routings_dualband_gsm_900_dcs_1800__alr600") | |
| 1413 { | |
| 1414 //COMMAND("TAP RESET"); | |
| 1415 //COMMAND("PL RESET"); | |
| 1416 COMMAND("TAP REDIRECT CLEAR"); | |
| 1417 COMMAND("PL REDIRECT CLEAR"); | |
| 1418 COMMAND("PL REDIRECT RR TAP"); | |
| 1419 COMMAND("PL REDIRECT DL TAP"); | |
| 1420 COMMAND("PL REDIRECT MMI TAP"); | |
| 1421 COMMAND("PL REDIRECT L1 TAP"); | |
| 1422 COMMAND("TAP REDIRECT TAP PL"); | |
| 1423 #ifdef GPRS | |
| 1424 COMMAND("PL REDIRECT GRR TAP"); | |
| 1425 #endif // GPRS | |
| 1426 COMMAND("PL CONFIG STD=5"); | |
| 1427 SEND ( em_l1_event_req_2() ); | |
| 1428 //COMMAND("TAP PARKING "); | |
| 1429 COMMAND("PL REDIRECT MMI *1111110******** NULL"); | |
| 1430 | |
| 1431 } | |
| 1432 } | |
| 1433 | |
| 1434 | |
| 1435 | |
| 1436 /*------------------------Following is for ALR601------------------------------- | |
| 1437 * | |
| 1438 * Description: RR starts a cell selection. Eight channels in the order 23, 637, 14, 580, 124, 885, 1, 512 have | |
| 1439 * acceptable fieldstrength values. | |
| 1440 *-------------------------------------------------------------------------------*/ | |
| 1441 | |
| 1442 T_STEP initiation_by_rr_8_channels_available_alr601() | |
| 1443 { | |
| 1444 BEGIN_STEP ("initiation_by_rr_8_channels_available_alr601") | |
| 1445 { | |
| 1446 filter_and_routings_dualband_gsm_900_dcs_1800__alr600(); | |
| 1447 | |
| 1448 SEND ( mph_power_req_4() ); | |
| 1449 AWAIT ( mphc_init_l1_req_4() ); | |
| 1450 SEND ( mphc_init_l1_con_1() ); | |
| 1451 AWAIT ( mphc_rxlev_req() ); | |
| 1452 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 1453 AWAIT ( mphc_rxlev_req() ); | |
| 1454 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 1455 AWAIT ( mphc_rxlev_req() ); | |
| 1456 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 1457 AWAIT ( mphc_rxlev_req() ); | |
| 1458 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 1459 AWAIT ( mphc_rxlev_req() ); | |
| 1460 SEND ( mphc_rxlev_ind(RXLEV_IDX_DUAL) ); | |
| 1461 AWAIT ( mph_power_cnf_5() ); | |
| 1462 } | |
| 1463 } | |
| 1464 | |
| 1465 | |
| 1466 | |
| 1467 /*------------------------Following is for ALR603------------------------------- | |
| 1468 * | |
| 1469 * Description: The carrier with the highest fieldstrength (channel 23) is selected | |
| 1470 * for synchronizing to frequency correction burst and synchron burst. | |
| 1471 *-------------------------------------------------------------------------------*/ | |
| 1472 | |
| 1473 T_STEP find_bcch_carrier_first_channel_alr603() | |
| 1474 { | |
| 1475 BEGIN_STEP ("find_bcch_carrier_first_channel_alr603") | |
| 1476 { | |
| 1477 SEND ( mph_bsic_req(ARFCN_23_STD_DUAL) ); | |
| 1478 AWAIT ( mphc_network_sync_req(ARFCN_23, SM_WIDE_MODE) ); | |
| 1479 SEND ( mphc_network_sync_ind_1() ); | |
| 1480 AWAIT ( mph_bsic_cnf_25() ); | |
| 1481 AWAIT ( mphc_new_scell_req_1() ); | |
| 1482 SEND ( mphc_new_scell_con_1() ); | |
| 1483 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1484 } | |
| 1485 } | |
| 1486 | |
| 1487 /*------------------------Following is for ALR604------------------------------- | |
| 1488 * | |
| 1489 * Description: The carrier with the highest fieldstrength (channel 23) is selected | |
| 1490 * for synchronizing to frequency correction burst and synchron burst. | |
| 1491 * The attempt failed. A second request is started for the next | |
| 1492 * strongest channel (channel 637). | |
| 1493 *-------------------------------------------------------------------------------*/ | |
| 1494 | |
| 1495 T_STEP find_bcch_carrier_first_channel_failed_then_second_channel_alr604() | |
| 1496 { | |
| 1497 BEGIN_STEP ("find_bcch_carrier_first_channel_failed_then_second_channel_alr604") | |
| 1498 { | |
| 1499 SEND ( mph_bsic_req(ARFCN_23_STD_DUAL) ); | |
| 1500 AWAIT ( mphc_network_sync_req(ARFCN_23, SM_WIDE_MODE) ); | |
| 1501 SEND ( mphc_network_sync_ind_failed(ARFCN_23) ); | |
| 1502 AWAIT ( mph_bsic_cnf_failed(ARFCN_23_STD_DUAL) ); | |
| 1503 SEND ( mph_bsic_req(ARFCN_637_STD_DUAL) ); | |
| 1504 AWAIT ( mphc_network_sync_req(ARFCN_637, SM_WIDE_MODE) ); | |
| 1505 } | |
| 1506 } | |
| 1507 | |
| 1508 | |
| 1509 | |
| 1510 /*------------------------Following is for ALR606------------------------------- | |
| 1511 * | |
| 1512 * Description: The next best channel (channel 637) is selected for synchronizing | |
| 1513 * to frequency correction burst and synchron burst. | |
| 1514 *-------------------------------------------------------------------------------*/ | |
| 1515 | |
| 1516 T_STEP find_bcch_carrier_second_channel_alr606() | |
| 1517 { | |
| 1518 BEGIN_STEP ("find_bcch_carrier_second_channel_alr606") | |
| 1519 { | |
| 1520 SEND ( mphc_network_sync_ind_17() ); | |
| 1521 AWAIT ( mph_bsic_cnf_33() ); | |
| 1522 AWAIT ( mphc_new_scell_req_9() ); | |
| 1523 SEND ( mphc_new_scell_con_1() ); | |
| 1524 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1525 } | |
| 1526 } | |
| 1527 | |
| 1528 | |
| 1529 | |
| 1530 /*------------------------Following is for ALR607------------------------------- | |
| 1531 * | |
| 1532 * Description: The BCCH data blocks are read for the channel 23. | |
| 1533 *-------------------------------------------------------------------------------*/ | |
| 1534 | |
| 1535 T_STEP read_bcch_data_alr607() | |
| 1536 { | |
| 1537 BEGIN_STEP ("read_bcch_data_alr607") | |
| 1538 { | |
| 1539 SEND ( mphc_data_ind_1() ); | |
| 1540 AWAIT ( mph_unitdata_ind_si1(ARFCN_23) ); | |
| 1541 SEND ( mphc_data_ind_2() ); | |
| 1542 AWAIT ( mph_unitdata_ind_si2(ARFCN_23) ); | |
| 1543 SEND ( mphc_data_ind_3() ); | |
| 1544 AWAIT ( mph_unitdata_ind_si3(ARFCN_23) ); | |
| 1545 SEND ( mphc_data_ind_4() ); | |
| 1546 AWAIT ( mph_unitdata_ind_si4(ARFCN_23) ); | |
| 1547 } | |
| 1548 } | |
| 1549 | |
| 1550 /*------------------------Following is for ALR612------------------------------- | |
| 1551 * | |
| 1552 * Description: RR selects the channel 637 after reading the BCCH carrier. | |
| 1553 * Variant A: with neighbourcell list | |
| 1554 * Variant B: with empty neighbour cell list | |
| 1555 *-------------------------------------------------------------------------------*/ | |
| 1556 | |
| 1557 T_STEP rr_select_second_channel_alr612(CHAR variant) | |
| 1558 { | |
| 1559 BEGIN_STEP ("rr_select_second_channel_alr612") | |
| 1560 { | |
| 1561 SEND ( mph_classmark_req_3() ); | |
| 1562 SEND ( mph_idle_req_9() ); | |
| 1563 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1564 AWAIT ( mphc_start_ccch_req_10() ); | |
| 1565 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1566 SEND ( mph_identity_req_1() ); | |
| 1567 SEND ( mph_cbch_req_1() ); | |
| 1568 SEND ( mph_neighbourcell_req_7(variant) ); | |
| 1569 AWAIT ( mphc_rxlev_periodic_req_7(variant) ); | |
| 1570 } | |
| 1571 } | |
| 1572 | |
| 1573 /*------------------------Following is for ALR800------------------------------- | |
| 1574 * | |
| 1575 * Description: The CBCH channel is configured. Then MMI requests reading of CBCH | |
| 1576 * for the message identifier 3, 7 and 11 to 13. | |
| 1577 *-------------------------------------------------------------------------------*/ | |
| 1578 | |
| 1579 T_STEP configuration_cbch_followed_by_mmi_request_alr800(CHAR variant) | |
| 1580 { | |
| 1581 BEGIN_STEP ("configuration_cbch_followed_by_mmi_request_alr800") | |
| 1582 { | |
| 1583 SEND ( mph_classmark_req_1() ); | |
| 1584 SEND ( mph_idle_req_14() ); | |
| 1585 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1586 AWAIT ( mphc_start_ccch_req_10() ); | |
| 1587 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1588 SEND ( mph_cbch_req_2(variant) ); | |
| 1589 SEND ( mmi_cbch_req_1() ); | |
| 1590 AWAIT ( mphc_config_cbch_req_1(variant) ); | |
| 1591 AWAIT ( mphc_cbch_schedule_req_1() ); | |
| 1592 AWAIT ( mphc_cbch_schedule_req_2() ); | |
| 1593 } | |
| 1594 } | |
| 1595 | |
| 1596 | |
| 1597 | |
| 1598 /*------------------------Following is for ALR801------------------------------- | |
| 1599 * | |
| 1600 * Description: MMI requests reading of CBCH for the message identifier | |
| 1601 * 3, 7 and 11 to 13. Then the CBCH channel is configured and | |
| 1602 * reading of CBCH starts. | |
| 1603 *-------------------------------------------------------------------------------*/ | |
| 1604 | |
| 1605 T_STEP mmi_request_followed_by_configuration_of_cbch_alr801(CHAR variant) | |
| 1606 { | |
| 1607 BEGIN_STEP ("mmi_request_followed_by_configuration_of_cbch_alr801") | |
| 1608 { | |
| 1609 SEND ( mph_classmark_req_1() ); | |
| 1610 SEND ( mph_idle_req_14() ); | |
| 1611 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1612 AWAIT ( mphc_start_ccch_req_10() ); | |
| 1613 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1614 SEND ( mmi_cbch_req_2(variant) ); | |
| 1615 SEND ( mph_cbch_req_3(variant) ); | |
| 1616 AWAIT ( mphc_config_cbch_req_2(variant) ); | |
| 1617 AWAIT ( mphc_cbch_schedule_req_1() ); | |
| 1618 AWAIT ( mphc_cbch_schedule_req_2() ); | |
| 1619 } | |
| 1620 } | |
| 1621 | |
| 1622 | |
| 1623 | |
| 1624 /*------------------------Following is for ALR803------------------------------- | |
| 1625 * | |
| 1626 * Description: ALR receives an expected CBCH message. The content is forwarded | |
| 1627 * to MMI. | |
| 1628 * Variant A: single message identifier (7) | |
| 1629 * Variant B: message identifier specified by range (11), lower boundary | |
| 1630 * Variant C: message identifier specified by range (12), middle of the range | |
| 1631 * Variant D: message identifier specified by range (13), upper boundary | |
| 1632 * Variant E: single message identifier (7) with update number 2 | |
| 1633 *-------------------------------------------------------------------------------*/ | |
| 1634 | |
| 1635 T_STEP reception_of_expected_cbch_message_alr803(CHAR variant) | |
| 1636 { | |
| 1637 BEGIN_STEP ("reception_of_expected_cbch_message_alr803") | |
| 1638 { | |
| 1639 SEND ( mphc_data_ind_54(variant) ); | |
| 1640 AWAIT ( mphc_cbch_info_req_1() ); | |
| 1641 SEND ( mphc_data_ind_55() ); | |
| 1642 SEND ( mphc_data_ind_56() ); | |
| 1643 SEND ( mphc_data_ind_57() ); | |
| 1644 AWAIT ( mmi_cbch_ind_1(variant) ); | |
| 1645 } | |
| 1646 } | |
| 1647 /*------------------------Following is for ALR808------------------------------- | |
| 1648 * | |
| 1649 * Description: ALR receives an CBCH Schedule message. | |
| 1650 variant a : entry into DRX mode | |
| 1651 variant b : 2nd DRX mode | |
| 1652 *-------------------------------------------------------------------------------*/ | |
| 1653 | |
| 1654 T_STEP reception_of_cbch_schedule_message_alr809(CHAR variant) | |
| 1655 { | |
| 1656 BEGIN_STEP ("reception_of_expected_cbch_message_alr809") | |
| 1657 { | |
| 1658 SEND ( mphc_data_ind_67()); | |
| 1659 AWAIT ( mphc_cbch_info_req_1()); | |
| 1660 SEND ( mphc_data_ind_60()); | |
| 1661 SEND ( mphc_data_ind_61()); | |
| 1662 SEND ( mphc_data_ind_62()); | |
| 1663 AWAIT (mphc_cbch_schedule_req_4(variant)); | |
| 1664 } | |
| 1665 } | |
| 1666 | |
| 1667 | |
| 1668 /*------------------------Following is for ALR960------------------------------- | |
| 1669 * | |
| 1670 * Description: RR selects Channel 23 as serving cell after reading the | |
| 1671 * BCCH carrier. On receipt of a list of neighbour cells | |
| 1672 * (MPH-NEIGHBOURCELL request primitive) followed by | |
| 1673 * the power measurements of these cells | |
| 1674 * (MPHC-RXLEV-PERIODIC indication primitive), ALR starts a 10-second | |
| 1675 * timer and requests Layer 1 to commence synchronization of these cells. | |
| 1676 * On expiry of this timer, ALR requests Layer 1 to stop synchronization | |
| 1677 * of these cells and forwards a list of all synchronized neighbour cells | |
| 1678 * to be measured to Layer 1 (MPHC-NCELL-LIST-SYNC request primitive). | |
| 1679 *-------------------------------------------------------------------------------*/ | |
| 1680 | |
| 1681 T_STEP power_measurement_e_otd_on_idle_mode__alr960() | |
| 1682 { | |
| 1683 BEGIN_STEP ("power_measurement_e_otd_on_idle_mode__alr960") | |
| 1684 { | |
| 1685 SEND ( mph_classmark_req_3() ); | |
| 1686 SEND ( mph_idle_req_22() ); | |
| 1687 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1688 AWAIT ( mphc_start_ccch_req_9() ); | |
| 1689 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1690 SEND ( mph_neighbourcell_req_15() ); | |
| 1691 AWAIT ( mphc_rxlev_periodic_req_20() ); | |
| 1692 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1693 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_637) ); | |
| 1694 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_25) ); | |
| 1695 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 1696 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_512) ); | |
| 1697 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_580) ); | |
| 1698 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_885) ); | |
| 1699 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 1700 SEND ( mphc_ncell_sync_ind_33() ); | |
| 1701 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1702 AWAIT ( mph_measurement_ind_32() ); | |
| 1703 SEND ( mphc_ncell_sync_ind_34() ); | |
| 1704 AWAIT ( mphc_ncell_bcch_req (ARFCN_637) ); | |
| 1705 SEND ( mphc_ncell_sync_ind_35() ); | |
| 1706 AWAIT ( mphc_ncell_bcch_req_30() ); | |
| 1707 SEND ( mphc_ncell_sync_ind_36() ); | |
| 1708 AWAIT ( mphc_ncell_bcch_req_25() ); | |
| 1709 SEND ( mphc_ncell_sync_ind_37() ); | |
| 1710 AWAIT ( mphc_ncell_bcch_req_31() ); | |
| 1711 SEND ( mphc_ncell_sync_ind_38() ); | |
| 1712 AWAIT ( mphc_ncell_bcch_req_32() ); | |
| 1713 SEND ( mphc_ncell_sync_ind_39() ); | |
| 1714 AWAIT ( mphc_ncell_bcch_req_33() ); | |
| 1715 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1716 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_637) ); | |
| 1717 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_637) ); | |
| 1718 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_25) ); | |
| 1719 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_25) ); | |
| 1720 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_14) ); | |
| 1721 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_14) ); | |
| 1722 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_512) ); | |
| 1723 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_512) ); | |
| 1724 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_580) ); | |
| 1725 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_580) ); | |
| 1726 SEND ( mphc_ncell_bcch_ind_si3(ARFCN_885) ); | |
| 1727 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_885) ); | |
| 1728 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1729 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1730 AWAIT ( mph_measurement_ind_33() ); | |
| 1731 AWAIT ( mph_unitdata_ind_si3(ARFCN_14) ); | |
| 1732 AWAIT ( mph_unitdata_ind_si3(ARFCN_25) ); | |
| 1733 AWAIT ( mph_unitdata_ind_si3(ARFCN_512) ); | |
| 1734 AWAIT ( mph_unitdata_ind_si3(ARFCN_580) ); | |
| 1735 AWAIT ( mph_unitdata_ind_si3(ARFCN_637) ); | |
| 1736 AWAIT ( mph_unitdata_ind_si3(ARFCN_885) ); | |
| 1737 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1738 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1739 SEND ( mphc_rxlev_periodic_ind_3() ); | |
| 1740 AWAIT ( mphc_stop_ncell_sync_req_all() ); | |
| 1741 SEND ( mphc_stop_ncell_sync_con() ); | |
| 1742 AWAIT ( mphc_ncell_list_sync_req_3() ); | |
| 1743 AWAIT ( mph_measurement_ind_33() ); | |
| 1744 } | |
| 1745 } | |
| 1746 | |
| 1747 | |
| 1748 | |
| 1749 /*------------------------Following is for ALR970------------------------------- | |
| 1750 * | |
| 1751 * Description: A dedicated channel is assigned in preparation for E-OTD measurement. | |
| 1752 *-------------------------------------------------------------------------------*/ | |
| 1753 | |
| 1754 T_STEP connection_established_e_otd_dedicated_mode__alr970() | |
| 1755 { | |
| 1756 BEGIN_STEP ("connection_established_e_otd_dedicated_mode__alr970") | |
| 1757 { | |
| 1758 SEND ( mph_random_access_req_1() ); | |
| 1759 AWAIT ( mphc_stop_rxlev_periodic_req() ); | |
| 1760 SEND ( mphc_stop_rxlev_periodic_con_1() ); | |
| 1761 AWAIT ( mphc_stop_ncell_sync_req_all() ); | |
| 1762 SEND ( mphc_stop_ncell_sync_con() ); | |
| 1763 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1764 SEND ( mphc_stop_scell_bcch_con() ); | |
| 1765 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1766 AWAIT ( mphc_ra_req_5() ); | |
| 1767 SEND ( mphc_ra_con_1() ); | |
| 1768 AWAIT ( mph_random_access_cnf_1() ); | |
| 1769 AWAIT ( mphc_ra_req_6() ); | |
| 1770 SEND ( mphc_data_ind_20() ); | |
| 1771 AWAIT ( mph_unitdata_ind_10() ); | |
| 1772 SEND ( mph_dedicated_req_1() ); | |
| 1773 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1774 AWAIT ( mphc_stop_ccch_req() ); | |
| 1775 AWAIT ( mphc_stop_ra_req_1() ); | |
| 1776 AWAIT ( mphc_immed_assign_req_1() ); | |
| 1777 SEND ( mphc_immed_assign_con_1() ); | |
| 1778 AWAIT ( mph_dedicated_cnf_1(DEDI_RES_OK) ); | |
| 1779 } | |
| 1780 } | |
| 1781 | |
| 1782 | |
| 1783 | |
| 1784 /*------------------------Following is for ALR972------------------------------- | |
| 1785 * | |
| 1786 * Description: RR requests E-OTD measurement of a list of cells forwarded in the | |
| 1787 * MPH-NCELL-POS request primitive, whereupon ALR forwards this list | |
| 1788 * to Layer 1 (MPHC-NCELL-LIST-SYNC request primitive). | |
| 1789 * Variant A: all cells in the list are current neighbour cells and are thus known to ALR, | |
| 1790 * Variant B: contains two cell (arfcn 516 and 525 respectively) which are unknown. | |
| 1791 *-------------------------------------------------------------------------------*/ | |
| 1792 | |
| 1793 T_STEP e_otd_measurement_started_dedicated_mode__alr972(CHAR variant) | |
| 1794 { | |
| 1795 BEGIN_STEP ("e_otd_measurement_started_dedicated_mode__alr972") | |
| 1796 { | |
| 1797 SEND ( mph_ncell_pos_req_2(variant) ); | |
| 1798 AWAIT ( mphc_ncell_list_sync_req_4(variant) ); | |
| 1799 } | |
| 1800 } | |
| 1801 | |
| 1802 /*------------------------Following is for ALRG007------------------------------- | |
| 1803 * | |
| 1804 * Description: In dedicated mode ALR is suspended during a PDCH Assignment procedure. | |
| 1805 * Reference: TS04.08 V8.10.0, section 3.4.19 Assignment to a Packet Data channel. | |
| 1806 *-------------------------------------------------------------------------------*/ | |
| 1807 | |
| 1808 T_STEP pdch_assignment_alrg007() | |
| 1809 { | |
| 1810 BEGIN_STEP ("pdch_assignment_alrg007") | |
| 1811 { | |
| 1812 | |
| 1813 SEND ( mph_dedicated_req_2g() ); | |
| 1814 AWAIT ( mphc_stop_dedicated_req() ); | |
| 1815 SEND ( mphc_stop_dedicated_con() ); | |
| 1816 AWAIT ( mph_dedicated_cnf_1(DEDI_RES_OK) ); | |
| 1817 //this does not work, but there has to be | |
| 1818 //a CCCH request to enter idle mode before going to PTM. | |
| 1819 /*This needs a implementation check through GRR-RR-ALR*/ | |
| 1820 /*AWAIT ( mphc_start_ccch_req_8() );*/ | |
| 1821 | |
| 1822 } | |
| 1823 } | |
| 1824 | |
| 1825 /*----------------------------------------------------------------------------- | |
| 1826 * | |
| 1827 * Description: Start a MO call while plmn search is active. | |
| 1828 * | |
| 1829 *-------------------------------------------------------------------------------*/ | |
| 1830 | |
| 1831 T_STEP abort_search_due_to_mo_call(T_VAR_ABORT_PLMN_SEARCH var) | |
| 1832 { | |
| 1833 BEGIN_STEP ("abort search due to mo call") | |
| 1834 { | |
| 1835 SEND ( mph_sync_req(CS_STOP_PLMN_SEARCH) ); | |
| 1836 switch (var) | |
| 1837 { | |
| 1838 case VAR_PLMN_POWER_CNF: | |
| 1839 AWAIT ( mphc_stop_rxlev_req() ); | |
| 1840 break; | |
| 1841 case VAR_PLMN_BSIC_CNF: | |
| 1842 AWAIT ( mphc_stop_ncell_sync_req(ARFCN_32) ); | |
| 1843 break; | |
| 1844 case VAR_PLMN_SI: | |
| 1845 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_32) ); | |
| 1846 break; | |
| 1847 } | |
| 1848 | |
| 1849 SEND ( mph_random_access_req_1() ); | |
| 1850 AWAIT ( mphc_stop_rxlev_periodic_req() ); // not necessary | |
| 1851 AWAIT ( mphc_stop_scell_bcch_req() ); // not necessary | |
| 1852 AWAIT ( mphc_start_ccch_req_1('A') ); | |
| 1853 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1854 AWAIT ( mphc_ra_req_1() ); | |
| 1855 } | |
| 1856 } | |
| 1857 | |
| 1858 /*----------------------------------------------------------------------------- | |
| 1859 * | |
| 1860 * Description: GRR leaves Packet Idle Mode, the search is aborted. | |
| 1861 * | |
| 1862 *-------------------------------------------------------------------------------*/ | |
| 1863 T_STEP abort_search_due_to_leaving_pim(T_VAR_ABORT_PLMN_SEARCH var) | |
| 1864 { | |
| 1865 BEGIN_STEP ("abort search due leaving PIM") | |
| 1866 { | |
| 1867 SEND ( mph_sync_req(CS_STOP_PLMN_SEARCH) ); | |
| 1868 switch (var) | |
| 1869 { | |
| 1870 case VAR_PLMN_POWER_CNF: | |
| 1871 AWAIT ( mphc_stop_rxlev_req() ); | |
| 1872 break; | |
| 1873 case VAR_PLMN_BSIC_CNF: | |
| 1874 AWAIT ( mphc_stop_ncell_sync_req(ARFCN_32) ); | |
| 1875 break; | |
| 1876 case VAR_PLMN_SI: | |
| 1877 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_32) ); | |
| 1878 break; | |
| 1879 } | |
| 1880 #if defined GPRS | |
| 1881 SEND ( mph_mon_ctrl_req(LEAVING_PIM_PBCCH) ); | |
| 1882 AWAIT ( mphc_stop_ccch_req() ); | |
| 1883 #endif | |
| 1884 } | |
| 1885 } | |
| 1886 | |
| 1887 /*----------------------------------------------------------------------------- | |
| 1888 * | |
| 1889 * Description: GRR starts a cell reselection, the search is aborted. | |
| 1890 * | |
| 1891 *-------------------------------------------------------------------------------*/ | |
| 1892 T_STEP abort_search_due_to_cell_resel(T_VAR_ABORT_PLMN_SEARCH var) | |
| 1893 { | |
| 1894 BEGIN_STEP ("abort search due to cell reselection") | |
| 1895 { | |
| 1896 SEND ( mph_sync_req(CS_STOP_PLMN_SEARCH) ); | |
| 1897 switch (var) | |
| 1898 { | |
| 1899 case VAR_PLMN_POWER_CNF: | |
| 1900 AWAIT ( mphc_stop_rxlev_req() ); | |
| 1901 break; | |
| 1902 case VAR_PLMN_BSIC_CNF: | |
| 1903 AWAIT ( mphc_stop_ncell_sync_req(ARFCN_32) ); | |
| 1904 break; | |
| 1905 case VAR_PLMN_SI: | |
| 1906 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_32) ); | |
| 1907 break; | |
| 1908 } | |
| 1909 SEND ( mph_idle_req_15g() ); | |
| 1910 AWAIT ( mphc_stop_ccch_req() ); | |
| 1911 AWAIT ( mphc_stop_rxlev_periodic_req() ); // not necessary | |
| 1912 AWAIT ( mphc_stop_scell_bcch_req() ); // not necessary | |
| 1913 AWAIT ( mphc_new_scell_req_10() ); | |
| 1914 } | |
| 1915 } | |
| 1916 | |
| 1917 /*----------------------------------------------------------------------------- | |
| 1918 * | |
| 1919 * Description: GRR requests synchronization for 3 ncells. | |
| 1920 * | |
| 1921 *-------------------------------------------------------------------------------*/ | |
| 1922 T_STEP nc_pbcch_initial_sync() | |
| 1923 { | |
| 1924 BEGIN_STEP ("PBCCH, initial synchronization to 3 ncells") | |
| 1925 { | |
| 1926 SEND ( mph_neighbourcell_req_3g() ); | |
| 1927 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_1) ); | |
| 1928 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 1929 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 1930 SEND ( mphc_ncell_sync_ind (ARFCN_14) ); | |
| 1931 AWAIT ( mph_measurement_ind_1g() ); | |
| 1932 SEND ( mphc_ncell_sync_ind_failed(ARFCN_124) ); | |
| 1933 AWAIT ( mph_measurement_ind_2g() ); | |
| 1934 SEND ( mph_neighbourcell_req_4g() ); | |
| 1935 AWAIT ( mph_measurement_ind_4g() ); | |
| 1936 AWAIT ( mphc_stop_ncell_sync_req(ARFCN_1) ); | |
| 1937 AWAIT ( mphc_ncell_sync_req_4g() ); | |
| 1938 SEND ( mphc_ncell_sync_ind_3g() ); | |
| 1939 AWAIT ( mph_measurement_ind_3g() ); | |
| 1940 } | |
| 1941 } | |
| 1942 | |
| 1943 /*----------------------------------------------------------------------------- | |
| 1944 * | |
| 1945 * Description: GRR starts a cell selection, the search is aborted. | |
| 1946 * | |
| 1947 *-------------------------------------------------------------------------------*/ | |
| 1948 | |
| 1949 T_STEP abort_search_due_to_cell_sel(T_VAR_ABORT_PLMN_SEARCH var) | |
| 1950 { | |
| 1951 BEGIN_STEP ("abort search due to cell selection") | |
| 1952 { | |
| 1953 SEND ( mph_sync_req(CS_STOP_PLMN_SEARCH) ); | |
| 1954 switch (var) | |
| 1955 { | |
| 1956 case VAR_PLMN_POWER_CNF: | |
| 1957 AWAIT ( mphc_stop_rxlev_req() ); | |
| 1958 break; | |
| 1959 case VAR_PLMN_BSIC_CNF: | |
| 1960 AWAIT ( mphc_stop_ncell_sync_req(ARFCN_32) ); | |
| 1961 break; | |
| 1962 case VAR_PLMN_SI: | |
| 1963 AWAIT ( mphc_stop_ncell_bcch_req(ARFCN_32) ); | |
| 1964 break; | |
| 1965 } | |
| 1966 SEND ( mph_power_req_1() ); | |
| 1967 AWAIT ( mphc_stop_ccch_req() ); | |
| 1968 AWAIT ( mphc_stop_rxlev_periodic_req() ); // not necessary | |
| 1969 AWAIT ( mphc_stop_scell_bcch_req() ); // not necessary | |
| 1970 AWAIT ( mphc_init_l1_req_1() ); | |
| 1971 SEND ( mphc_init_l1_con_1() ); | |
| 1972 AWAIT ( mphc_rxlev_req() ); | |
| 1973 //SEND ( mphc_rxlev_ind(RXLEV_IDX_1) ); | |
| 1974 } | |
| 1975 } | |
| 1976 | |
| 1977 #ifdef FF_EGPRS | |
| 1978 T_STEP start_of_sending_channel_request_messages_gsm_900__alr9803() | |
| 1979 { | |
| 1980 BEGIN_STEP ("start_of_sending_channel_request_messages_gsm_900__alr9803") | |
| 1981 { | |
| 1982 SEND ( mph_random_access_req_1() ); | |
| 1983 AWAIT ( mphc_stop_rxlev_periodic_req() ); | |
| 1984 AWAIT (mphc_stop_ncell_bcch_req_emr()); | |
| 1985 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 1986 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 1987 AWAIT ( mphc_ra_req_1() ); | |
| 1988 SEND ( mphc_ra_con_1() ); | |
| 1989 AWAIT ( mph_random_access_cnf_1() ); | |
| 1990 AWAIT ( mphc_ra_req_2() ); | |
| 1991 } | |
| 1992 } | |
| 1993 | |
| 1994 T_STEP rr_cell_selection_emr (char idle_var,char rxlev_var,char emr_var ) | |
| 1995 { | |
| 1996 BEGIN_STEP ("rr_cell_selection_emr") | |
| 1997 { | |
| 1998 int i=15; | |
| 1999 filter_and_routings_dualband_gsm_900_dcs_1800__alr600(); | |
| 2000 initiation_by_rr_4_channels_available_alr001(); | |
| 2001 find_bcch_carrier_first_channel_alr003(); | |
| 2002 read_bcch_data_alr007(); | |
| 2003 | |
| 2004 SEND ( mph_classmark_req_1() ); | |
| 2005 SEND ( mph_idle_req_4(idle_var) ); | |
| 2006 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 2007 AWAIT ( mphc_start_ccch_req_7('H') ); | |
| 2008 | |
| 2009 AWAIT ( mphc_scell_nbcch_req_full() ); /*acquires both N/E BCCH*/ | |
| 2010 SEND ( mph_identity_req_1() ); | |
| 2011 SEND ( mph_identity_req_1() ); | |
| 2012 SEND ( mph_cbch_req_1() ); | |
| 2013 | |
| 2014 if (rxlev_var == 'A') | |
| 2015 { | |
| 2016 SEND ( mph_neighbourcell_req_3() ); | |
| 2017 AWAIT ( mphc_rxlev_periodic_req_3() ); | |
| 2018 SEND ( mphc_rxlev_periodic_ind_1() ); /* 1 */ | |
| 2019 SEND ( mphc_rxlev_periodic_ind_1() ); | |
| 2020 AWAIT ( mph_measurement_ind_emr_1() ); | |
| 2021 SEND ( mphc_rxlev_periodic_ind_1() ); | |
| 2022 } | |
| 2023 else if (rxlev_var == 'B') | |
| 2024 { | |
| 2025 SEND ( mph_neighbourcell_req_3() ); | |
| 2026 AWAIT ( mphc_rxlev_periodic_req_3() ); | |
| 2027 } | |
| 2028 else | |
| 2029 { | |
| 2030 SEND ( mph_neighbourcell_req_emr_1() ); | |
| 2031 AWAIT ( mphc_rxlev_periodic_req_emr_1() ); | |
| 2032 } | |
| 2033 | |
| 2034 if (emr_var != 'Z') | |
| 2035 { | |
| 2036 while ( i) | |
| 2037 { | |
| 2038 SEND (mphc_data_ind_si2quater(L2_CHANNEL_EBCCH) ); | |
| 2039 AWAIT (mph_unitdata_ind_si2q(ARFCN_23) ); | |
| 2040 i--; | |
| 2041 } | |
| 2042 } | |
| 2043 | |
| 2044 if (rxlev_var == 'A') | |
| 2045 { | |
| 2046 SEND ( mphc_rxlev_periodic_ind_1() ); | |
| 2047 AWAIT ( mph_measurement_ind_emr_1() ); | |
| 2048 } | |
| 2049 | |
| 2050 if (emr_var != 'Z') | |
| 2051 { | |
| 2052 SEND (mph_enhpara_update_req_1 (emr_var)); | |
| 2053 SEND (mph_mon_ctrl_req_1(STOP_MON_BCCH,UPDATE_SI2QUATER) ); | |
| 2054 } | |
| 2055 } | |
| 2056 } | |
| 2057 #endif // FF_EGPRS | |
| 2058 /*-------------------For Test Case 1013A-E---------------------------------------------------------- | |
| 2059 * | |
| 2060 * Description: Setting state of ALR in Dedicated for Handovers. | |
| 2061 * | |
| 2062 *-------------------------------------------------------------------------------*/ | |
| 2063 | |
| 2064 T_STEP initial_setting_state_to_dedicated() | |
| 2065 { | |
| 2066 BEGIN_STEP ("initial_setting_state_to_dedicated") | |
| 2067 { | |
| 2068 filter_and_routings_gsm_900__alr000(); | |
| 2069 initiation_by_rr_4_channels_available_alr001(); | |
| 2070 find_bcch_carrier_first_channel_alr003(); | |
| 2071 read_bcch_data_alr007(); | |
| 2072 rr_select_first_channel_alr013(); | |
| 2073 start_of_sending_channel_request_messages_gsm_900__alr055(); | |
| 2074 immediate_assignment_for_the_mobile_station_alr056(); | |
| 2075 neighbour_cell_in_dedicated_alr155(); | |
| 2076 SEND ( mphc_meas_report_4() ); | |
| 2077 AWAIT ( mphc_ncell_sync_req_fn(ARFCN_124) ); | |
| 2078 AWAIT ( mphc_ncell_sync_req_fn(ARFCN_1) ); | |
| 2079 SEND ( mphc_ncell_sync_ind_fn(ARFCN_124)); | |
| 2080 SEND ( mphc_ncell_sync_ind_fn(ARFCN_1)); | |
| 2081 AWAIT(mph_measurement_ind_dummy(ARFCN_23,25)); | |
| 2082 } | |
| 2083 } | |
| 2084 | |
| 2085 | |
| 2086 /*----------------------------------------------------------------------------- | |
| 2087 * | |
| 2088 * Description: After a HPLMN search the paging is configured to REORG, | |
| 2089 * if REORG was set before HPLMN search. | |
| 2090 * | |
| 2091 * Variant: depending on configuration before HPLNM search procedure | |
| 2092 * | |
| 2093 *-------------------------------------------------------------------------------*/ | |
| 2094 | |
| 2095 T_STEP continue_page_mode_reorg_after_hplnm_search_procedure(CHAR variant) | |
| 2096 { | |
| 2097 BEGIN_STEP ("continue page mode reorg after HPLMN search") | |
| 2098 { | |
| 2099 | |
| 2100 switch (variant) | |
| 2101 { | |
| 2102 case 'A': | |
| 2103 AWAIT ( mphc_start_ccch_req_7('H') ); /*Paging REORG */ | |
| 2104 break; | |
| 2105 case 'B':/*not used*/ | |
| 2106 AWAIT ( mphc_start_ccch_req_2() ); /*Paging REORG */ | |
| 2107 break; | |
| 2108 default: | |
| 2109 AWAIT ( mphc_start_ccch_req_14() ); /*SKIP Parameter - actual not used*/ | |
| 2110 } | |
| 2111 | |
| 2112 AWAIT ( mphc_scell_nbcch_req_full() ); /*Read complete BCCH every time*/ | |
| 2113 } | |
| 2114 } | |
| 2115 | |
| 2116 /*----------------------------------------------------------------------------- | |
| 2117 * | |
| 2118 * Description: HPLMN search cannot be performed if page mode REORG is configured. | |
| 2119 * Therefore REORG is stopped as long as HPLNM search procedure needs. | |
| 2120 * | |
| 2121 *-------------------------------------------------------------------------------*/ | |
| 2122 | |
| 2123 T_STEP stop_page_mode_reorg_before_hplnm_search_procedure() | |
| 2124 { | |
| 2125 BEGIN_STEP ("stop page mode reorg before HPLMN search") | |
| 2126 { | |
| 2127 | |
| 2128 AWAIT ( mphc_start_ccch_req_normal() ); /*Paging NORMAL*/ | |
| 2129 AWAIT ( mphc_scell_nbcch_req_periodic() ); /*read BCCH not every time*/ | |
| 2130 } | |
| 2131 } | |
| 2132 | |
| 2133 /*----------------------------------------------------------------------------- | |
| 2134 * | |
| 2135 * Description: Measurement Report is sent by L1. This is followed by sync reading on the strongest | |
| 2136 * 6 cells. Random Access procedure is then started. | |
| 2137 * | |
| 2138 *-------------------------------------------------------------------------------*/ | |
| 2139 | |
| 2140 T_STEP meas_ind_with_start_sync_followed_by_rach_procedure() | |
| 2141 { | |
| 2142 BEGIN_STEP ("meas indiction sync requests followed by rach") | |
| 2143 { | |
| 2144 SEND ( mphc_rxlev_periodic_ind_2() ); | |
| 2145 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_14) ); | |
| 2146 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_124) ); | |
| 2147 AWAIT ( mphc_ncell_sync_req_initial(ARFCN_1) ); | |
| 2148 SEND ( mphc_ncell_sync_ind (ARFCN_14) ); // sync for 14 | |
| 2149 AWAIT ( mphc_ncell_bcch_req (ARFCN_14) ); | |
| 2150 | |
| 2151 SEND ( mph_random_access_req_1() ); | |
| 2152 AWAIT ( mphc_stop_rxlev_periodic_req() ); | |
| 2153 AWAIT ( mphc_stop_ncell_sync_req_1() ); | |
| 2154 AWAIT ( mphc_stop_ncell_bcch_req_1()); | |
| 2155 AWAIT ( mphc_stop_scell_bcch_req() ); | |
| 2156 AWAIT ( mphc_scell_nbcch_req_full() ); | |
| 2157 AWAIT ( mphc_ra_req_1() ); | |
| 2158 | |
| 2159 SEND ( mphc_ra_con_1() ); | |
| 2160 AWAIT ( mph_random_access_cnf_1() ); | |
| 2161 AWAIT ( mphc_ra_req_2() ); | |
| 2162 } | |
| 2163 } | |
| 2164 | |
| 2165 /*----------------------------------------------------------------------------- | |
| 2166 * | |
| 2167 * Description: Rxlevel Measurement based on Search | |
| 2168 * | |
| 2169 *-------------------------------------------------------------------------------*/ | |
| 2170 | |
| 2171 T_STEP rxlevel_measurement_based_on_search_parallel(CHAR search_mode, CHAR rxlev_idx) | |
| 2172 { | |
| 2173 BEGIN_STEP (" Rxlevel Based on Search") | |
| 2174 { | |
| 2175 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2176 SEND ( mphc_init_l1_con_1()); | |
| 2177 switch(search_mode) | |
| 2178 { | |
| 2179 case NORMAL_SEARCH_MODE: | |
| 2180 case FULL_SEARCH_MODE : | |
| 2181 /* Full & Normal Search will do the measurement 5 Times */ | |
| 2182 AWAIT ( mphc_rxlev_req() ); | |
| 2183 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2184 AWAIT ( mphc_rxlev_req() ); | |
| 2185 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2186 AWAIT ( mphc_rxlev_req() ); | |
| 2187 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2188 AWAIT ( mphc_rxlev_req() ); | |
| 2189 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2190 case FAST_SEARCH_MODE : | |
| 2191 case BLACK_LIST_SEARCH_MODE: | |
| 2192 /* FAST & Blacklist Search will do the measurement only once */ | |
| 2193 AWAIT ( mphc_rxlev_req() ); | |
| 2194 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2195 break; | |
| 2196 } | |
| 2197 } | |
| 2198 } | |
| 2199 | |
| 2200 /*----------------------------------------------------------------------------- | |
| 2201 * | |
| 2202 * Description: Rxlevel Measurement based on Search | |
| 2203 * | |
| 2204 *-------------------------------------------------------------------------------*/ | |
| 2205 | |
| 2206 T_STEP rxlevel_measurement_based_on_search_quadband(CHAR search_mode, CHAR rxlev_idx, CHAR pchinterrupt) | |
| 2207 { | |
| 2208 BEGIN_STEP (" Rxlevel Based on Search") | |
| 2209 { | |
| 2210 switch(search_mode) | |
| 2211 { | |
| 2212 case NORMAL_SEARCH_MODE: | |
| 2213 case FULL_SEARCH_MODE : | |
| 2214 /* Full & Normal Search will do the measurement 5 Times */ | |
| 2215 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2216 SEND ( mphc_init_l1_con_1()); | |
| 2217 AWAIT ( mphc_rxlev_req() ); | |
| 2218 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2219 | |
| 2220 AWAIT ( mphc_init_l1_req(STD_DUAL_US)); | |
| 2221 SEND ( mphc_init_l1_con_1()); | |
| 2222 AWAIT ( mphc_rxlev_req() ); | |
| 2223 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2224 | |
| 2225 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2226 SEND ( mphc_init_l1_con_1()); | |
| 2227 AWAIT ( mphc_rxlev_req() ); | |
| 2228 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2229 | |
| 2230 AWAIT ( mphc_init_l1_req(STD_DUAL_US)); | |
| 2231 SEND ( mphc_init_l1_con_1()); | |
| 2232 AWAIT ( mphc_rxlev_req() ); | |
| 2233 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2234 | |
| 2235 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2236 SEND ( mphc_init_l1_con_1()); | |
| 2237 AWAIT ( mphc_rxlev_req() ); | |
| 2238 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2239 | |
| 2240 AWAIT ( mphc_init_l1_req(STD_DUAL_US)); | |
| 2241 SEND ( mphc_init_l1_con_1()); | |
| 2242 AWAIT ( mphc_rxlev_req() ); | |
| 2243 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2244 | |
| 2245 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2246 SEND ( mphc_init_l1_con_1()); | |
| 2247 AWAIT ( mphc_rxlev_req() ); | |
| 2248 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2249 | |
| 2250 AWAIT ( mphc_init_l1_req(STD_DUAL_US)); | |
| 2251 SEND ( mphc_init_l1_con_1()); | |
| 2252 AWAIT ( mphc_rxlev_req() ); | |
| 2253 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2254 case FAST_SEARCH_MODE : | |
| 2255 /* FAST Search will do the measurement only once */ | |
| 2256 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2257 SEND ( mphc_init_l1_con_1()); | |
| 2258 AWAIT ( mphc_rxlev_req() ); | |
| 2259 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2260 | |
| 2261 AWAIT ( mphc_init_l1_req(STD_DUAL_US)); | |
| 2262 SEND ( mphc_init_l1_con_1()); | |
| 2263 AWAIT ( mphc_rxlev_req() ); | |
| 2264 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2265 break; | |
| 2266 case BLACK_LIST_SEARCH_MODE: | |
| 2267 /* Blacklist Search will do the measurement only once */ | |
| 2268 AWAIT ( mphc_init_l1_req(STD_DUAL_EGSM)); | |
| 2269 SEND ( mphc_init_l1_con_1()); | |
| 2270 AWAIT ( mphc_rxlev_req() ); | |
| 2271 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2272 break; | |
| 2273 } | |
| 2274 } | |
| 2275 } | |
| 2276 | |
| 2277 | |
| 2278 /*----------------------------------------------------------------------------- | |
| 2279 * | |
| 2280 * Description: Rxlevel Measurement based on Search | |
| 2281 * | |
| 2282 *-------------------------------------------------------------------------------*/ | |
| 2283 | |
| 2284 T_STEP rxlevel_measurement_based_on_search_american(CHAR search_mode, CHAR band, CHAR rxlev_idx) | |
| 2285 { | |
| 2286 BEGIN_STEP (" Rxlevel Based on Search") | |
| 2287 { | |
| 2288 AWAIT ( mphc_init_l1_req(band) ); | |
| 2289 SEND ( mphc_init_l1_con_1() ); | |
| 2290 switch(search_mode) | |
| 2291 { | |
| 2292 case NORMAL_SEARCH_MODE: | |
| 2293 case FULL_SEARCH_MODE : | |
| 2294 /* Full & Normal Search will do the measurement 5 Times */ | |
| 2295 AWAIT ( mphc_rxlev_req() ); | |
| 2296 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2297 AWAIT ( mphc_rxlev_req() ); | |
| 2298 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2299 AWAIT ( mphc_rxlev_req() ); | |
| 2300 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2301 AWAIT ( mphc_rxlev_req() ); | |
| 2302 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2303 case FAST_SEARCH_MODE : | |
| 2304 case BLACK_LIST_SEARCH_MODE: | |
| 2305 /* FAST & Blacklist Search will do the measurement only once */ | |
| 2306 AWAIT ( mphc_rxlev_req() ); | |
| 2307 SEND ( mphc_rxlev_ind(rxlev_idx) ); | |
| 2308 break; | |
| 2309 } | |
| 2310 } | |
| 2311 } |
