blob: c87f79e5aa52f8a35a05dc04382f044057447322 [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2005
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35/*******************************************************************************
36 * Modification Notice:
37 * --------------------------
38 * This software is modified by MediaTek Inc. and the information contained
39 * herein is confidential. The software may not be copied and the information
40 * contained herein may not be used or disclosed except with the written
41 * permission of MediaTek Inc. (C) 2001
42 *
43 *******************************************************************************/
44/*****************************************************************************
45 *
46 * Filename:
47 * ---------
48 * rr2mpal_struct.h
49 *
50 * Project:
51 * --------
52 * Maui_Software
53 *
54 * Description:
55 * ------------
56 *
57 *
58 * Author:
59 * -------
60 * -------
61 *
62 *
63 *
64 *============================================================================
65 * HISTORY
66 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
67 *------------------------------------------------------------------------------
68 * removed!
69 *
70 * removed!
71 * removed!
72 * removed!
73 * removed!
74 *
75 * removed!
76 * removed!
77 * removed!
78 *
79 * removed!
80 * removed!
81 * removed!
82 * removed!
83 *
84 * removed!
85 * removed!
86 * removed!
87 *
88 * removed!
89 * removed!
90 * removed!
91 *
92 * removed!
93 * removed!
94 * removed!
95 *
96 * removed!
97 * removed!
98 * removed!
99 * removed!
100 *
101 * removed!
102 * removed!
103 * removed!
104 *
105 * removed!
106 * removed!
107 * removed!
108 *
109 * removed!
110 * removed!
111 * removed!
112 *
113 * removed!
114 * removed!
115 * removed!
116 *
117 * removed!
118 * removed!
119 * removed!
120 *
121 * removed!
122 * removed!
123 * removed!
124 *
125 * removed!
126 * removed!
127 * removed!
128 *
129 * removed!
130 * removed!
131 *
132 * removed!
133 * removed!
134 * removed!
135 *
136 * removed!
137 * removed!
138 * removed!
139 *
140 * removed!
141 * removed!
142 * removed!
143 *
144 * removed!
145 * removed!
146 * removed!
147 *
148 * removed!
149 * removed!
150 * removed!
151 *
152 * removed!
153 * removed!
154 * removed!
155 *
156 * removed!
157 * removed!
158 * removed!
159 *
160 * removed!
161 * removed!
162 * removed!
163 *
164 * removed!
165 * removed!
166 * removed!
167 *
168 * removed!
169 * removed!
170 * removed!
171 *
172 * removed!
173 * removed!
174 *
175 * removed!
176 * removed!
177 * removed!
178 *
179 * removed!
180 * removed!
181 * removed!
182 *
183 * removed!
184 * removed!
185 * removed!
186 *
187 * removed!
188 * removed!
189 * removed!
190 *
191 * removed!
192 * removed!
193 * removed!
194 *
195 * removed!
196 * removed!
197 * removed!
198 *
199 * removed!
200 * removed!
201 * removed!
202 *
203 * removed!
204 * removed!
205 * removed!
206 *
207 * removed!
208 * removed!
209 *
210 * removed!
211 * removed!
212 * removed!
213 *
214 * removed!
215 * removed!
216 * removed!
217 *
218 * removed!
219 * removed!
220 * removed!
221 * removed!
222 * removed!
223 * removed!
224 * removed!
225 *
226 * removed!
227 * removed!
228 *
229 * removed!
230 * removed!
231 * removed!
232 *
233 * removed!
234 * removed!
235 * removed!
236 *
237 * removed!
238 * removed!
239 * removed!
240 *
241 * removed!
242 * removed!
243 * removed!
244 *
245 * removed!
246 * removed!
247 * removed!
248 *
249 * removed!
250 * removed!
251 * removed!
252 *
253 * removed!
254 * removed!
255 * removed!
256 *
257 * removed!
258 * removed!
259 * removed!
260 *
261 * removed!
262 * removed!
263 * removed!
264 *
265 * removed!
266 * removed!
267 * removed!
268 *
269 * removed!
270 * removed!
271 * removed!
272 *
273 * removed!
274 * removed!
275 * removed!
276 *
277 * removed!
278 * removed!
279 * removed!
280 *
281 * removed!
282 * removed!
283 * removed!
284 *
285 * removed!
286 * removed!
287 * removed!
288 *
289 * removed!
290 * removed!
291 * removed!
292 *
293 * removed!
294 * removed!
295 * removed!
296 *
297 * removed!
298 * removed!
299 * removed!
300 *
301 * removed!
302 * removed!
303 * removed!
304 *
305 * removed!
306 * removed!
307 * removed!
308 *
309 * removed!
310 * removed!
311 * removed!
312 *
313 * removed!
314 * removed!
315 * removed!
316 *
317 * removed!
318 * removed!
319 * removed!
320 *
321 * removed!
322 * removed!
323 * removed!
324 *
325 * removed!
326 * removed!
327 * removed!
328 *
329 * removed!
330 * removed!
331 * removed!
332 *
333 * removed!
334 * removed!
335 * removed!
336 *
337 * removed!
338 * removed!
339 * removed!
340 *
341 * removed!
342 * removed!
343 * removed!
344 *
345 * removed!
346 * removed!
347 * removed!
348 *
349 * removed!
350 * removed!
351 * removed!
352 *
353 * removed!
354 * removed!
355 * removed!
356 *
357 * removed!
358 * removed!
359 * removed!
360 *
361 * removed!
362 * removed!
363 * removed!
364 *
365 * removed!
366 * removed!
367 * removed!
368 *
369 * removed!
370 * removed!
371 * removed!
372 *
373 * removed!
374 * removed!
375 * removed!
376 *
377 * removed!
378 * removed!
379 * removed!
380 *
381 * removed!
382 * removed!
383 * removed!
384 *
385 * removed!
386 * removed!
387 * removed!
388 *
389 * removed!
390 * removed!
391 * removed!
392 *
393 * removed!
394 * removed!
395 * removed!
396 *
397 * removed!
398 * removed!
399 * removed!
400 *
401 * removed!
402 * removed!
403 * removed!
404 *
405 * removed!
406 * removed!
407 * removed!
408 *
409 * removed!
410 * removed!
411 * removed!
412 *
413 * removed!
414 * removed!
415 * removed!
416 *
417 * removed!
418 * removed!
419 * removed!
420 *
421 * removed!
422 * removed!
423 * removed!
424 *
425 * removed!
426 * removed!
427 * removed!
428 *
429 * removed!
430 * removed!
431 * removed!
432 *
433 * removed!
434 * removed!
435 * removed!
436 *
437 * removed!
438 * removed!
439 * removed!
440 *
441 * removed!
442 * removed!
443 * removed!
444 *
445 * removed!
446 * removed!
447 * removed!
448 *
449 * removed!
450 * removed!
451 * removed!
452 *
453 * removed!
454 * removed!
455 * removed!
456 *
457 * removed!
458 * removed!
459 * removed!
460 *
461 * removed!
462 * removed!
463 * removed!
464 *
465 * removed!
466 * removed!
467 * removed!
468 * removed!
469 * removed!
470 * removed!
471 * removed!
472 * removed!
473 * removed!
474 *
475 *------------------------------------------------------------------------------
476 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
477 *============================================================================
478 ****************************************************************************/
479
480/********************************************************************************
481* Copyright Statement:
482* --------------------
483*
484* This product has been developed using a protocol stack
485* developed by Sasken Communication Technologies Limited.
486*
487********************************************************************************/
488
489
490#ifndef _RR2MPAL_STRUCT_H
491#define _RR2MPAL_STRUCT_H
492
493/*Evelyn: Remove redundant header and file */
494#include "rr_mpal_interface.h"
495#include "l3_inc_enums.h"
496#include "l3_inc_local.h"
497#include "kal_general_types.h"
498#include "gmss_public.h"
499/*Justin: RHR*/
500#ifdef __UMTS_RAT__
501#include "uas_gas_enums.h"
502#endif
503#include "rr_common_def.h"
504#include "gas_eas_enums.h"
505
506#include "rr_common_enums.h"
507
508#include "gas_gise_enum.h"
509#if defined(__UMTS_RAT__) || defined(__LTE_RAT__)
510#include "uas_gas_inter_core_enum.h"
511#include "as_inter_core_struct.h"
512#endif /* defined(__UMTS_RAT__) || defined(__LTE_RAT__) */
513#if defined(__23G_PRI_RESEL_SUPPORT__) || defined(__LTE_RAT__)
514#include "gas_eas_inter_core_enum.h"
515#endif /* defined(__23G_PRI_RESEL_SUPPORT__) || defined(__LTE_RAT__) */
516
517#ifdef __GEMINI__
518#include "rsvas_enum.h"
519#endif /* __GEMINI__ */
520
521#if defined(__UMTS_RAT__) || defined(__LTE_RAT__)
522#define STANDBY_GSM_MEAS_MAX_CELL_NUM (32) // ref to MPH_STANDBY_GSM_MEAS_MAX_CELL_NUM
523#define STANDBY_GSM_MAX_BSIC_NUM (32) // ref to MPH_STANDBY_GSM_MEAS_MAX_CELL_NUM
524#endif /* defined(__UMTS_RAT__) || defined(__LTE_RAT__) */
525
526
527typedef struct {
528 kal_uint8 valid;
529 kal_uint16 t1;
530 kal_uint8 t2;
531 kal_uint8 t3;
532} starting_time_struct;
533
534typedef struct {
535 kal_uint8 is_value_valid;
536 kal_uint8 value;
537} timing_adv_struct;
538
539typedef struct {
540 kal_uint8 is_value_valid;
541 kal_uint8 pwr_ctrl_level;
542} pwr_cmd_struct;
543
544typedef struct {
545 kal_uint8 cipher_mode;
546 kal_uint8 cipher_key[KC_LEN];
547#ifdef __A54_ALGORITHM_SUPPORT__
548 kal_uint8 cipher_key_128[KC128_LEN];
549#endif /* __A54_ALGORITHM_SUPPORT__ */
550} cipher_setting_struct;
551
552typedef struct {
553 kal_uint8 maio;
554 kal_uint8 hsn;
555 kal_uint8 length_of_list;
556 kal_uint16 freq_list[64];
557} hopping_freq_list_struct;
558
559typedef struct {
560 kal_uint16 arfcn;
561 hopping_freq_list_struct hopping_freq_list;
562} freq_comp_struct;
563
564typedef struct {
565 kal_bool is_hopping;
566 kal_uint8 tsc;
567 kal_uint8 tsc_set; /* 0 or 1; only valid in handover_req and dedicated_channel_connect_req */
568 freq_comp_struct freq_comp;
569} freq_params_struct;
570
571typedef struct {
572 kal_uint8 time_slot;
573 channel_type_enum ch_type;
574 channel_mode_enum ch_mode;
575 freq_params_struct freq_params;
576} ch_connect_ctrl_params_struct;
577
578typedef struct {
579 kal_uint8 list_ref;
580 kal_uint8 arfcn_list_len;
581 kal_uint16 arfcn_list[33];
582} bcch_list_struct;
583
584typedef struct {
585 kal_uint8 list_ref;
586 kal_uint16 arfcn_list_len;
587 kal_uint16 arfcn_list[512];
588} stored_bcch_list_struct;
589
590typedef struct {
591 kal_uint16 arfcn;
592 kal_uint8 bsic_valid;
593 kal_int32 frame_offset;
594 kal_int32 ebit_offset;
595 kal_uint8 need_retry;
596 kal_uint8 retry_FB_SB;
597 kal_bool short_FB;
598} neighbor_bsic_acquisition_struct;
599
600typedef struct {
601 kal_uint16 arfcn;
602 kal_uint8 is_need_freq_correction;
603} cell_bsic_acquisition_struct;
604
605typedef struct {
606 kal_uint16 arfcn;
607 kal_uint8 bsic_valid;
608 kal_uint8 bsic;
609 kal_uint16 bcch_mask;
610 kal_int32 frame_offset;
611 kal_int32 ebit_offset;
612 kal_uint8 is_prior_to_acquire;
613 kal_uint8 need_retry;
614 kal_uint8 use_priority_index_order;
615#ifdef __GEMINI__
616 kal_uint16 priority_index; /*maruco20071107,RR may add more priorities for acquiring NBCCH.*/
617#else
618 kal_uint8 priority_index;
619#endif/* end of __GEMINI__*/
620} neighbor_bcch_acquisition_struct;
621
622typedef struct {
623 kal_uint16 arfcn;
624 kal_uint8 bsic;
625 kal_uint16 bcch_mask;
626 kal_int32 frame_offset;
627 kal_int32 ebit_offset;
628 kal_uint8 use_priority_index_order;
629#ifdef __GEMINI__
630 kal_uint16 priority_index; /*maruco20071107,RR may add more priorities for acquiring NBCCH.*/
631#else
632 kal_uint8 priority_index;
633#endif /* end of __GEMINI__*/
634
635#ifdef __GEMINI__
636 /* Maruco20081125,GEMINI MAUI_91553,for BCCH_preempt_peer_PCH */
637 kal_uint8 is_prior_to_acquire;
638#endif /* end of __GEMINI__*/
639} cell_bcch_acquisition_struct;
640
641typedef struct {
642 kal_uint8 is_valid;
643 kal_uint8 gamma;
644} gamma_struct;
645
646typedef struct {
647 kal_uint8 alpha;
648 kal_uint8 pb;
649 kal_uint8 t_avg_w;
650 kal_uint8 pc_meas_chan;
651 kal_uint8 t_avg_t;
652 gamma_struct gamma[8];
653} pwr_ctrl_params_struct;
654
655typedef struct {
656 kal_uint8 is_valid;
657 kal_uint8 value;
658} usf_value_struct;
659
660typedef struct {
661 kal_uint8 is_value_valid;
662 kal_uint8 value;
663 kal_uint8 is_ul_valid;
664 kal_uint8 ul_index;
665 kal_uint8 ul_timeslot_no;
666 kal_uint8 is_dl_valid;
667 kal_uint8 dl_index;
668 kal_uint8 dl_timeslot_no;
669} pkt_timing_adv_struct;
670
671typedef struct {
672 kal_uint8 is_valid;
673 kal_uint8 p0;
674 kal_uint8 bts_pwr_ctrl_mode;
675 kal_uint8 pr_mode;
676} dl_pwr_ctrl_struct;
677
678typedef struct {
679 kal_uint8 blk_or_blk_period;
680 kal_uint8 dl_ctrl_timeslot;
681 kal_uint8 is_repeat_info_valid;
682 kal_uint8 repeat_alloc;
683 kal_uint8 ts_override;
684 kal_uint16 alloc_bitmap_len;
685 kal_uint8 alloc_bitmap[36];
686} rr_fixed_alloc_struct;
687
688typedef struct {
689 kal_uint8 ul_tfi;
690 kal_uint8 ul_timeslot_alloc;
691 rr_fixed_alloc_struct fixed_alloc;
692} ul_alloc_struct;
693
694typedef struct {
695 kal_uint8 dl_tfi;
696 kal_uint8 dl_timeslot_alloc;
697} dl_alloc_struct;
698
699typedef struct {
700 freq_params_struct freq_params;
701#ifdef __PS_SERVICE__
702 ch_connect_ind_enum is_ch_connect_ind_needed;
703#else
704 kal_uint8 is_ch_connect_ind_needed;
705#endif
706 kal_uint8 is_starting_frame_valid;
707 kal_uint32 tbf_starting_frame;
708 pkt_timing_adv_struct pkt_timing_adv;
709 pwr_ctrl_params_struct pwr_ctrl_params;
710 dl_pwr_ctrl_struct dl_pwr_ctrl;
711 ul_alloc_struct ul_alloc;
712 dl_alloc_struct dl_alloc;
713} pdtch_ch_ctrl_struct;
714
715typedef struct {
716 kal_uint32 frame_number;
717 kal_uint8 time_slot;
718#ifdef __GERAN_RTTI__
719 kal_uint8 time_slot_2;
720#endif
721 burst_type_enum burst_type;
722 kal_uint8 no_data;
723#ifdef MCD_PACK_UNPACK
724 kal_uint8 data[23];
725#else
726 kal_uint8 *data;
727#endif
728
729#ifdef __GERAN_FANR__
730 rlc_polling_type_enum polling_type;
731 kal_bool is_pan_valid;
732 kal_uint8 pan[4];
733#endif
734
735} ul_rrbp_block_struct;
736
737typedef struct {
738 kal_uint8 no_data;
739#ifdef MCD_PACK_UNPACK
740 kal_uint8 data[23];
741#else
742 kal_uint8 *data;
743#endif
744} ul_ctrl_block_struct;
745
746typedef struct {
747 kal_uint8 burst_type;
748#ifdef MCD_PACK_UNPACK
749 kal_uint8 data[75];
750#else
751 kal_uint8 *data;
752#endif
753 #ifdef __EGPRS_MODE__
754#ifdef MCD_PACK_UNPACK
755 kal_uint8 data2[75];
756#else
757 kal_uint8 *data2; /* For MCS9~MCS7, there are 2 RLC blocks per radio block*/
758#endif
759 kal_uint8 header[6];
760 kal_uint8 blockDataPS1; // punturing scheme for EGPRS in the first RLC data block of one block
761 kal_uint8 blockDataPS2; // punturing scheme for EGPRS in the second RLC data block of one block
762#endif
763
764} ul_radio_blk_struct;
765
766typedef struct{
767 kal_uint8 transition_id;
768 kal_uint8 is_starting_frame_valid;
769 kal_uint32 tbf_starting_frame;
770 kal_uint8 usf_granularity;
771 usf_value_struct usf[8];
772 kal_uint8 ul_tfi;
773 kal_uint8 ul_timeslot_alloc;
774 kal_uint8 type_of_allocation;
775 /*There is no fix allocation in Rel-6*/
776 #ifndef __REMOVE_FA__
777 rr_fixed_alloc_struct fixed_alloc;
778 #endif /*__REMOVE_FA__*/
779 /* Evelyn: R7 Latency Reducation Development */
780 #ifdef __GERAN_RTTI__
781 kal_uint8 dl_timeslot_pair;
782 tti_config_enum tti_mode;
783 usf_mode_enum usf_mode;
784 #endif
785 #ifdef __GERAN_FANR__
786 kal_bool is_fanr_active;
787 kal_bool tan_type;
788 #endif
789}ul_tbf_params_struct;
790
791typedef struct{
792 kal_uint8 transition_id;
793 kal_uint8 is_starting_frame_valid;
794 kal_uint32 tbf_starting_frame;
795 kal_uint8 dl_tfi;
796 kal_uint8 dl_timeslot_alloc;
797 #ifdef __EGPRS_MODE__
798 kal_bool is_egprs_ackmode;
799 kal_bool is_reset_ir_memory;
800 kal_uint16 egprs_window_size;
801 #endif
802 kal_uint8 type_of_allocation;
803 /* Evelyn: R7 Latency Reducation Development */
804 #ifdef __GERAN_RTTI__
805 tti_config_enum tti_mode;
806 #endif
807 #ifdef __GERAN_FANR__
808 kal_bool is_fanr_activated;
809 kal_bool is_event_based_fanr;
810 #endif
811}dl_tbf_params_struct;
812
813
814#ifdef __GEMINI__
815typedef enum{
816 MPAL_SIM1_ONLY_CONFIG,
817 MPAL_SIM2_ONLY_CONFIG,
818 MPAL_DAUL_SIM_CONFIG
819}mpal_sim_config_status_enum;
820
821typedef enum{
822 MPAL_NO_SIM_INSERTED,
823 MPAL_ONLY_SIM1_INSERTED,
824 MPAL_ONLY_SIM2_INSERTED,
825 MPAL_DUAL_SIM_INSERTED
826}mpal_sim_insert_status_enum;
827#endif /* end of __GEMINI__*/
828
829#if defined (__AMR_SUPPORT__) || defined (__AMRWB_LINK_SUPPORT__)
830typedef enum{
831 AMR_SPEECH_VERSION_1 = 1
832#ifdef __AMRWB_LINK_SUPPORT__
833 ,AMR_SPEECH_VERSION_2 = 2
834#endif //__AMRWB_LINK_SUPPORT_
835}multirate_speech_version_enum;
836#endif /* __AMR_SUPPORT__ || __AMRWB_LINK_SUPPORT__*/
837
838#ifdef __PS_SERVICE__
839#endif /* end of __PS_SERVICE__ */
840#if 0
841/* under construction !*/
842/* under construction !*/
843/* under construction !*/
844/* under construction !*/
845/* under construction !*/
846/* under construction !*/
847/* under construction !*/
848#endif
849typedef struct {
850 LOCAL_PARA_HDR
851 kal_uint8 scan_id;
852 kal_uint8 bands_scan;
853 kal_uint8 bcch_list_valid;
854 kal_uint8 is_for_plmn_list;
855 stored_bcch_list_struct bcch_list;
856#ifdef __GEMINI__
857 kal_uint32 pwr_scan_period_in_virtual; //in frame, 0: invalid, MAX: TBD, MIN: TBD
858 kal_uint32 virtual_mode_num_in_virtual; //in frame, 0: invalid, MAX: TBD, MIN: TBD
859#endif /* __GEMINI__*/
860#ifdef __GEMINI_WCDMA__
861 kal_bool is_plmn_list;
862#endif /* __GEMINI_WCDMA__*/
863 kal_bool is_quick_mcc_search; //plmn search enhancement mcc quick search.
864} rr_mpal_search_rf_req_struct;
865
866typedef struct {
867 LOCAL_PARA_HDR
868 kal_uint8 scan_id;
869} rr_mpal_search_rf_stop_req_struct;
870
871typedef struct {
872 LOCAL_PARA_HDR
873 kal_uint16 arfcn;
874 kal_uint8 is_need_freq_correction;
875#ifdef __LTE_RAT__
876 kal_bool is_srvcc_n_timing_valid;
877 kal_int32 frame_offset;
878 kal_int32 ebit_offset;
879#endif
880} rr_mpal_bsic_sync_req_struct;
881
882typedef struct {
883 LOCAL_PARA_HDR
884 kal_uint16 arfcn_sync;
885 kal_uint8 bsic;
886 kal_int32 frame_offset;
887 kal_int32 ebit_offset;
888} rr_mpal_specific_sync_req_struct;
889
890typedef struct {
891 LOCAL_PARA_HDR
892 kal_uint16 arfcn;
893 kal_uint16 mask;
894#ifdef __GEMINI__
895 /* Maruco20081125,GEMINI MAUI_91553,for BCCH_preempt_peer_PCH */
896 kal_uint8 is_prior_to_acquire;
897#endif /*__GEMINI__*/
898} rr_mpal_serv_bcch_monitor_req_struct;
899
900typedef struct {
901 LOCAL_PARA_HDR
902 kal_uint8 imsi_valid;
903 kal_uint16 imsi_mod_1000;
904 kal_uint8 bs_pa_mfrms;
905 kal_uint8 bs_ag_blks_res;
906 kal_uint8 ccch_conf;
907 rr_mode_enum rr_mode;
908 kal_uint8 alpha; /* Austin: 040709: alpha should not be removed */
909 kal_uint8 t_avg_w;
910 kal_uint8 pc_meas_chan;
911 kal_uint8 t_avg_t;
912 /* Austin: for NMO III, for curcurrent ccch & pccch monitoring */
913 kal_uint8 monitor_required;
914} rr_mpal_ccch_monitor_req_struct;
915
916#ifdef __MONITOR_PAGE_DURING_TRANSFER__
917typedef struct {
918 LOCAL_PARA_HDR
919 kal_uint8 imsi_valid;
920 kal_uint16 imsi_mod_1000;
921 kal_uint8 bs_pa_mfrms;
922 kal_uint8 bs_ag_blks_res;
923 kal_uint8 ccch_conf;
924 kal_uint8 paging_mode;
925 kal_uint8 smart_bs_pa_mfrms;
926 kal_uint8 smart_mfrms_group_offset;
927} rr_mpal_monitor_page_in_ptm_start_req_struct;
928#endif /* __MONITOR_PAGE_DURING_TRANSFER__ */
929
930typedef struct {
931 LOCAL_PARA_HDR
932 kal_uint8 paging_mode;
933 /* Austin: for NMO III, page mode changes of ccch and pccch are handled separately */
934 kal_uint8 page_channel_type;
935} rr_mpal_page_mode_change_req_struct;
936
937typedef struct {
938 LOCAL_PARA_HDR
939 kal_uint8 req_id; /*sequence number for RR to know the ._cnf received is old or new*/
940 burst_type_enum burst_type;
941 rach_req_type_enum req_type;
942 kal_uint16 rach_data;
943 kal_uint16 rand;
944 #ifdef __EGPRS_MODE__
945 ats_type_enum ats_type; /* synch. sequence bits type, TS05.02 clause 5.2.7 */
946 #endif
947} rr_mpal_rach_req_struct;
948
949
950#if defined (__AMR_SUPPORT__) || defined (__AMRWB_LINK_SUPPORT__)
951/***************************************************************************
952* PRIMITIVE STRUCTURE
953* rr_mpal_amr_req_struct
954*
955* DESCRIPTION
956* This struct is sent from RR to MPAL with rr_mpal_dedicated_channel_connect_req_struct
957*
958***************************************************************************/
959typedef struct
960{
961 kal_bool amr_valid; /* the AMR(TRUE) or not(FALSE) */
962// kal_uint32 frame_number;/* the frame number to get RATSCCH messages */
963// kal_uint8 cmip; /* CMI phase */
964
965 /*ZY: add for AMR-WB*/
966 multirate_speech_version_enum mr_ver; /* MultiRate speech VERsion : 001-amr verion 1*/
967
968 kal_bool nscb; /* Noise Supression Control Bit : 0-noise supression is used */
969 kal_bool icmi; /* Initial Codec Mode Indicator : 0-is defined bythe implicit rule */
970 kal_uint8 start_codec_mode; /* Start Codec Mode */
971 kal_uint8 acs; /* AMR Codec Activate Set */
972 kal_uint8 threshold[3]; /* Threshold1/Threshold2/Threshold3 */
973 kal_uint8 hysteresis[3]; /* Hysteresis1/Hysteresis2/Hysteresis3 */
974} rr_mpal_amr_req_struct;
975#endif /* __AMR_SUPPORT__ || __AMRWB_LINK_SUPPORT__*/
976typedef struct {
977 LOCAL_PARA_HDR
978 kal_uint8 req_type;
979 kal_uint8 dtx_allowed;
980 kal_uint8 pwrc;
981 timing_adv_struct timing_advance;
982 pwr_cmd_struct pwr_cmd;
983 starting_time_struct starting_time;
984 kal_uint8 before_time_channel_valid;
985 cipher_setting_struct cipher_set;
986 ch_connect_ctrl_params_struct before_time_channel;
987 ch_connect_ctrl_params_struct after_time_channel;
988#if defined (__AMR_SUPPORT__) || defined (__AMRWB_LINK_SUPPORT__)
989 rr_mpal_amr_req_struct rr_mpal_amr_para;
990#endif /* __AMR_SUPPORT__ || __AMRWB_LINK_SUPPORT__*/
991 kal_uint8 vamos_level; /* To config L1 non-VAMOS, VAMOS1, or VAMOS2 */
992} rr_mpal_dedicated_channel_connect_req_struct;
993
994typedef struct {
995 LOCAL_PARA_HDR
996 kal_uint8 handover_type;
997 handover_atc_enum atc;
998 kal_uint8 dtx_allowed;
999 starting_time_struct starting_time;
1000 timing_adv_struct timing_advance;
1001 pwr_cmd_struct pwr_cmd;
1002 cipher_setting_struct cipher_set;
1003 kal_uint8 before_time_channel_valid;
1004 ch_connect_ctrl_params_struct before_time_channel;
1005 ch_connect_ctrl_params_struct after_time_channel;
1006 kal_uint8 handover_ref;
1007 kal_uint8 rtd_valid;
1008 kal_uint8 rtd;
1009 kal_uint8 ncc;
1010 kal_uint8 bcc;
1011 kal_uint8 nci;
1012 kal_int32 frame_offset;
1013 kal_int32 ebit_offset;
1014 kal_uint16 target_bcch_arfcn;
1015#if defined (__AMR_SUPPORT__) || defined (__AMRWB_LINK_SUPPORT__)
1016 rr_mpal_amr_req_struct rr_mpal_amr_para;
1017#endif /* __AMR_SUPPORT__ || __AMRWB_LINK_SUPPORT__*/
1018#ifdef __BLIND_HANDOVER__
1019 kal_bool is_blind_handover_req;
1020#endif /*__BLIND_HANDOVER__*/
1021#ifdef __PS_L1_DC_ARCH__
1022#ifdef __HO_IMPROVE__
1023 kal_uint8 sabm_data[23]; /* [U3G]: SABM pattern. */
1024#endif /* __HO_IMPROVE__ */
1025#endif /* __PS_L1_DC_ARCH__ */
1026} rr_mpal_handover_req_struct;
1027
1028typedef struct {
1029 LOCAL_PARA_HDR
1030 kal_uint8 timing_advance;
1031} rr_mpal_handover_stop_req_struct;
1032
1033typedef struct {
1034 LOCAL_PARA_HDR
1035 kal_uint8 is_freq_in_one_band;
1036 starting_time_struct starting_time;
1037 freq_params_struct freq_def;
1038} rr_mpal_frequency_redefinition_req_struct;
1039
1040typedef struct {
1041 LOCAL_PARA_HDR
1042 channel_mode_enum ch_mode;
1043 kal_uint8 dtx_allowed;
1044#if defined (__AMR_SUPPORT__) || defined (__AMRWB_LINK_SUPPORT__)
1045 rr_mpal_amr_req_struct rr_mpal_amr_para;
1046#endif /* __AMR_SUPPORT__ || __AMRWB_LINK_SUPPORT__*/
1047} rr_mpal_channel_mode_modify_req_struct;
1048
1049typedef struct {
1050 LOCAL_PARA_HDR
1051 cipher_setting_struct cipher_cmd;
1052} rr_mpal_ciphering_mode_command_req_struct;
1053
1054typedef struct {
1055 LOCAL_PARA_HDR
1056 kal_int8 loopback_type;
1057} rr_mpal_close_tch_loop_req_struct;
1058
1059typedef struct {
1060 LOCAL_PARA_HDR
1061 kal_uint8 device;
1062} rr_mpal_dai_test_req_struct;
1063
1064typedef struct {
1065 LOCAL_PARA_HDR
1066 kal_uint8 dtx_allowed;
1067 kal_uint8 pwrc;
1068} rr_mpal_cell_option_update_req_struct;
1069
1070typedef struct {
1071 LOCAL_PARA_HDR
1072 kal_uint8 cause; /*current no use*/
1073} rr_mpal_dedicated_channel_disconnect_req_struct;
1074
1075typedef struct {
1076 LOCAL_PARA_HDR
1077 kal_int8 gsm450_power_class;
1078 kal_int8 gsm480_power_class;
1079 kal_int8 gsm850_power_class;
1080 kal_int8 gsm900_power_class;
1081 kal_int8 dcs_power_class;
1082 kal_int8 pcs_power_class;
1083 kal_int8 tx_pwr;
1084 kal_int8 tx_pwr_pccch;
1085 change_cause_enum change_cause;
1086 /*Pop 090420 add for support to E2 in 8-PSK*/
1087#ifdef __EPSK_TX__
1088 kal_int8 gsm450_power_class_8psk;
1089 kal_int8 gsm480_power_class_8psk;
1090 kal_int8 gsm850_power_class_8psk;
1091 kal_int8 gsm900_power_class_8psk;
1092 kal_int8 dcs_power_class_8psk;
1093 kal_int8 pcs_power_class_8psk;
1094#endif
1095#ifdef __GERAN_R6__
1096 kal_int8 tx_pwr_LB;
1097 kal_bool LB_valid;
1098#endif /*__GERAN_R6__ */
1099} rr_mpal_power_class_req_struct;
1100
1101typedef struct {
1102 LOCAL_PARA_HDR
1103 bcch_list_struct ext_meas_freq_list;
1104} rr_mpal_extended_meas_req_struct;
1105
1106typedef struct {
1107 LOCAL_PARA_HDR
1108 nbr_meas_mode_enum meas_mode;
1109 kal_uint8 is_ba_list_valid;
1110 bcch_list_struct ba_list;
1111} rr_mpal_neighbor_meas_req_struct;
1112
1113typedef struct {
1114 LOCAL_PARA_HDR
1115 kal_uint8 burst_access_id;
1116#ifdef __PKT_EXT_MEAS__
1117 kal_uint8 is_for_extended_meas;
1118#endif
1119 kal_uint8 list_len;
1120 neighbor_bsic_acquisition_struct neighbor_bsic_acquisition_list[33];
1121
1122#ifdef __GEMINI__
1123 kal_uint32 fb_decode_interval; //used in PLMN List tunning, 0: invalid, other values in frame.
1124#endif /* __GEMINI__*/
1125#ifdef __GEMINI_WCDMA__
1126 kal_bool is_plmn_list;
1127#endif /* __GEMINI_WCDMA__*/
1128} rr_mpal_neighbor_bsic_start_req_struct;
1129
1130typedef struct {
1131 LOCAL_PARA_HDR
1132#ifdef __PKT_EXT_MEAS__
1133 kal_uint8 is_for_extended_meas;
1134#endif
1135 kal_uint8 list_len;
1136 kal_uint16 neighbor_bsic_acquisition_stop_list[33];
1137} rr_mpal_neighbor_bsic_stop_req_struct;
1138
1139typedef struct {
1140 LOCAL_PARA_HDR
1141 neighbor_bcch_acquisition_struct nbcch_acquisition_list[1];
1142 kal_uint8 is_prior_to_pdtch_rx;
1143#ifdef __GEMINI_WCDMA__
1144 kal_bool is_plmn_list;
1145#endif /* __GEMINI_WCDMA__*/
1146} rr_mpal_neighbor_sys_info_read_req_struct;
1147
1148typedef struct {
1149 LOCAL_PARA_HDR
1150 kal_uint8 list_len;
1151 kal_uint16 nbcch_acquisition_stop_list[1];
1152 kal_uint8 manual_list; /* 1: stop the manual list, 0: stop the neighbor list */
1153} rr_mpal_neighbor_sys_info_stop_req_struct;
1154
1155typedef struct {
1156 LOCAL_PARA_HDR
1157 kal_uint8 burst_access_id;
1158 kal_uint8 list_len;
1159 cell_bsic_acquisition_struct cell_bsic_acquisition_list[33];
1160
1161 /* Used in PLMN list and 4G->2G meas/resel in virtual mode */
1162 kal_uint32 fb_decode_interval; //used in PLMN List tunning, 0: invalid, other values in frame.
1163#ifdef __GEMINI_WCDMA__
1164 kal_bool is_plmn_list;
1165#endif /*__GEMINI_WCDMA__*/
1166} rr_mpal_cell_bsic_start_req_struct;
1167
1168typedef struct {
1169 LOCAL_PARA_HDR
1170} rr_mpal_cell_bsic_stop_req_struct;
1171
1172typedef struct {
1173 LOCAL_PARA_HDR
1174 cell_bcch_acquisition_struct cell_bcch_acquisition_list[1];
1175#ifdef __GEMINI_WCDMA__
1176 kal_bool is_plmn_list;
1177#endif /* __GEMINI_WCDMA__*/
1178} rr_mpal_cell_sys_info_read_req_struct;
1179
1180typedef struct {
1181 LOCAL_PARA_HDR
1182 kal_uint8 list_len;
1183 kal_uint16 cell_bcch_acquisition_stop_list[1];
1184} rr_mpal_cell_sys_info_stop_req_struct;
1185
1186/* 2013/1/2 James: new primitive to adjust prority */
1187#ifdef __GEMINI__
1188typedef struct {
1189 LOCAL_PARA_HDR
1190 kal_uint16 arfcn;
1191 kal_uint8 is_prior_to_acquire;
1192} rr_mpal_cell_sys_info_pri_adjust_req_struct;
1193#endif /* __GEMINI__ */
1194
1195typedef struct {
1196 LOCAL_PARA_HDR
1197 kal_uint8 pb;
1198 kal_uint8 timeslot_alloc;
1199 freq_params_struct freq_params;
1200 kal_uint8 bs_pbcch_blks;
1201 kal_uint8 psi1_repeat_period;
1202 kal_uint8 psi_count_hr;
1203#ifdef __PS_SERVICE__
1204 psi_mode_enum psi_reading_mode;
1205#else
1206 kal_uint8 psi_reading_mode;
1207#endif
1208} rr_mpal_monitor_pbcch_req_struct;
1209
1210typedef struct {
1211 LOCAL_PARA_HDR
1212 freq_params_struct freq_params;
1213 kal_uint8 timeslot_alloc;
1214 pwr_ctrl_params_struct pwr_ctrl_params;
1215 kal_uint16 imsi_mod_1000;
1216 kal_uint16 split_pg_cycle;
1217 kal_uint16 kcn;
1218 kal_uint8 bs_pag_blks_res;
1219 kal_uint8 bs_pbcch_blks;
1220} rr_mpal_monitor_pccch_req_struct;
1221
1222
1223typedef struct {
1224 LOCAL_PARA_HDR
1225 kal_uint16 c0_arfcn;
1226 kal_uint8 pb;
1227 kal_uint8 timeslot_alloc;
1228 freq_params_struct freq_params;
1229 kal_uint8 bs_pbcch_blks;
1230 kal_uint8 psi1_repeat_period;
1231#ifdef __PS_SERVICE__
1232 psi_mode_enum psi_reading_mode;
1233#else
1234 kal_uint8 psi_reading_mode;
1235#endif
1236 kal_int32 frame_offset;
1237 kal_int32 ebit_offset;
1238} rr_mpal_ncell_pbcch_req_struct;
1239
1240typedef struct {
1241 LOCAL_PARA_HDR
1242 kal_uint8 nc_reporting_period_i;
1243 kal_uint8 nc_reporting_period_t;
1244} rr_mpal_nc_measurement_req_struct;
1245
1246#ifdef __PKT_EXT_MEAS__
1247typedef struct {
1248 LOCAL_PARA_HDR
1249 kal_uint8 list_len;
1250 kal_uint16 ext_freq_list[32];
1251} rr_mpal_pkt_ext_measurement_req_struct;
1252#endif /*__PKT_EXT_MEAS__*/
1253
1254typedef struct {
1255 LOCAL_PARA_HDR
1256 kal_uint8 carrier_ref;
1257 freq_params_struct freq_params;
1258 kal_uint8 ts_allocation;
1259} rr_mpal_int_measurement_req_struct;
1260
1261
1262 typedef struct {
1263 LOCAL_PARA_HDR
1264 freq_params_struct freq_params;
1265 pkt_timing_adv_struct pkt_timing_adv;
1266 pwr_ctrl_params_struct pwr_ctrl_params;
1267 dl_pwr_ctrl_struct dl_pwr_ctrl;
1268 kal_uint8 is_ptcch_8bit_access;
1269 #ifdef __EGPRS_MODE__
1270 kal_bool is_egprs;
1271 #endif
1272 #ifdef __REL4__
1273 kal_uint8 ext_utbf_nodata; /* 0: PUDCB must be sent (delayed uplink TBF not supported)
1274 1: PUDCB may not be sent (delayed uplink TBF supported) */
1275 #endif /* __REL4__ */
1276 kal_uint8 ul_tbf_bitmap;
1277 kal_uint8 dl_tbf_bitmap;
1278 ul_tbf_params_struct ul_tbf_params[MAX_TBF_NUM];
1279 dl_tbf_params_struct dl_tbf_params[MAX_TBF_NUM];
1280} rr_mpal_pdtch_connect_req_struct;
1281
1282typedef struct {
1283 LOCAL_PARA_HDR
1284 kal_uint8 type_of_allocation;
1285 kal_uint8 identity;
1286 kal_uint8 usf_granularity;
1287 usf_value_struct usf[8];
1288 kal_uint8 is_before_params_valid;
1289 pdtch_ch_ctrl_struct pdtch_chan_params_before;
1290 pdtch_ch_ctrl_struct pdtch_chan_params_after;
1291 kal_uint8 direction;
1292 kal_uint8 is_ul_nw_assign;
1293 kal_uint8 is_dl_nw_assign;
1294 kal_uint8 is_ptcch_8bit_access;
1295} rr_mpal_pdch_assignment_req_struct;
1296
1297#ifdef __EGPRS_MODE__
1298typedef struct {
1299 LOCAL_PARA_HDR
1300 kal_uint8 egprs_loopback_on;
1301 kal_uint8 mode_flag;
1302} rr_mpal_egprs_loop_req_struct;
1303#endif
1304typedef struct {
1305 LOCAL_PARA_HDR
1306 kal_uint8 no_rrbp_blks;
1307 ul_rrbp_block_struct rrbp_blks[4];
1308} rr_mpal_rrbp_req_struct;
1309
1310typedef struct {
1311 LOCAL_PARA_HDR
1312 kal_uint8 no_ctrl_blks;
1313 ul_ctrl_block_struct ctrl_blks[4];
1314} rr_mpal_ctrl_req_struct;
1315
1316typedef struct {
1317 LOCAL_PARA_HDR
1318#ifdef __PS_SERVICE__
1319 block_type_enum type_of_block;
1320#else
1321 kal_uint8 type_of_block;
1322#endif
1323 kal_uint8 no_ul_blks;
1324 ul_radio_blk_struct ul_blks[8];
1325 kal_uint8 tbf_index;
1326} rr_mpal_data_req_struct;
1327
1328typedef struct {
1329 LOCAL_PARA_HDR
1330 kal_uint8 is_timing_adv_valid;
1331 pkt_timing_adv_struct pkt_timing_adv;
1332 kal_uint8 is_ptcch_8bit_access;
1333 kal_uint8 is_pwr_ctrl_valid;
1334 pwr_ctrl_params_struct pwr_ctrl_params;
1335} rr_mpal_pkt_timing_adv_pwr_ctrl_req_struct;
1336
1337typedef struct {
1338 LOCAL_PARA_HDR
1339 kal_uint8 ts_available;
1340 kal_uint8 limit; /* 0: OLD, 1:ALL */
1341} rr_mpal_pdch_release_req_struct;
1342
1343 typedef struct{
1344 LOCAL_PARA_HDR
1345 kal_bool is_all_tbf_rel;
1346 kal_uint8 ul_tbf_bitmap;
1347 kal_uint8 dl_tbf_bitmap;
1348 kal_uint8 identity;/* add identity for L1 */
1349 }rr_mpal_pdtch_disconn_req_struct;
1350
1351typedef struct {
1352 LOCAL_PARA_HDR
1353 ch_connect_ctrl_params_struct ch_desc;
1354} rr_mpal_cbch_config_req_struct;
1355
1356typedef struct {
1357 LOCAL_PARA_HDR
1358 kal_uint8 cbch_mode;
1359 kal_bool high_priority_on_cbch;
1360} rr_mpal_cbch_start_req_struct;
1361
1362typedef struct {
1363 LOCAL_PARA_HDR
1364 kal_uint8 cbch_mode;
1365} rr_mpal_cbch_stop_req_struct;
1366
1367typedef struct {
1368 LOCAL_PARA_HDR
1369 kal_int32 num_skip;
1370 kal_uint8 cbch_mode;
1371} rr_mpal_cbch_skip_req_struct;
1372
1373typedef struct {
1374 LOCAL_PARA_HDR
1375 kal_uint8 status;
1376} rr_mpal_sim_ready_notify_req_struct;
1377
1378#ifdef __EGPRS_MODE__
1379typedef struct {
1380 LOCAL_PARA_HDR
1381 kal_uint8 tbf_resetIR;//the index of TBF to resetIR
1382}rr_mpal_update_ir_reset_req_struct;
1383#endif
1384
1385typedef struct {
1386 LOCAL_PARA_HDR
1387 channel_type_enum ch_type;
1388 kal_uint8 is_bad_frame;
1389#ifdef __REPEATED_ACCH__
1390 kal_bool is_combined;
1391#endif
1392 kal_uint8 data[23];
1393} mpal_rr_dedicated_data_ind_struct;
1394
1395typedef struct {
1396 LOCAL_PARA_HDR
1397 channel_type_enum ch_type;
1398 kal_uint8 is_bad_frame;
1399#ifdef __REPEATED_ACCH__
1400 kal_bool is_combined;
1401#endif
1402 kal_uint8 data[23];
1403} mpal_rr_dedicated_data_callback_ind_struct;
1404
1405#if 0 //__UMTS_TDD128_MODE__
1406/* under construction !*/
1407/* under construction !*/
1408/* under construction !*/
1409/* under construction !*/
1410/* under construction !*/
1411/* under construction !*/
1412#ifdef __REPEATED_ACCH__
1413/* under construction !*/
1414#endif /* __REPEATED_ACCH__ */
1415/* under construction !*/
1416/* under construction !*/
1417/* under construction !*/
1418/* under construction !*/
1419/* under construction !*/
1420/* under construction !*/
1421/* under construction !*/
1422/* under construction !*/
1423#ifdef __REPEATED_ACCH__
1424/* under construction !*/
1425#endif /* __REPEATED_ACCH__ */
1426/* under construction !*/
1427#else
1428typedef struct {
1429 LOCAL_PARA_HDR
1430 kal_uint8 sap_id;
1431 kal_bool is_signalling;
1432 channel_type_enum ch_type;
1433 kal_uint8 tch_type;
1434#ifdef __REPEATED_ACCH__
1435 kal_bool is_repetition;
1436#endif /* __REPEATED_ACCH__ */
1437} rr_mpal_dedicated_data_req_struct;
1438
1439typedef struct {
1440 LOCAL_PARA_HDR
1441 kal_uint8 sap_id;
1442 kal_bool is_signalling;
1443 channel_type_enum ch_type;
1444 kal_uint8 tch_type;
1445#ifdef __REPEATED_ACCH__
1446 kal_bool is_repetition;
1447#endif /* __REPEATED_ACCH__ */
1448} mpal_rr_dedicated_ready_to_send_ind_struct;
1449#endif
1450
1451typedef struct {
1452 LOCAL_PARA_HDR
1453 kal_uint8 sap_id;
1454 channel_mode_enum ch_mode;
1455 channel_type_enum ch_type;
1456 kal_uint8 tch_type;
1457} mpal_rr_dedicated_ready_to_send_callback_ind_struct;
1458
1459typedef struct {
1460 LOCAL_PARA_HDR
1461 kal_bool result;
1462} rr_mpal_detect_paging_block_result_cnf_struct;
1463
1464typedef struct {
1465 LOCAL_PARA_HDR
1466 system_mode_enum system_mode;
1467}rr_mpal_set_rat_service_req_struct;
1468
1469#if defined(__UMTS_RAT__) || defined(__LTE_RAT__)
1470typedef struct {
1471 LOCAL_PARA_HDR
1472 kal_uint8 list_ref;
1473 ts_ir_gsm_cell_list gsm_cell_list;
1474
1475 /* This flag is used to indicate whether measurement period should be reset
1476 * immediately (i.e., GAS measurement will be triggered for the first available
1477 * gap from other RAT). In current design, the following rules should be followed.
1478 * (1)If list_len != 0, this flag will be set as FALSE only if tmeas,gsm measurement
1479 * is triggered when priority measurement is on-going (i.e., one
1480 * of GSM cells hits priority reselection criteria for priority
1481 * based measurement reselection). For other case, this flag should
1482 * be set as TRUE. If any improvement is needed, the usage limitation
1483 * for this flag should be confirmed with GL1's colleague.
1484 * (2) If list_len == 0, this flag will alwyas be set as FALSE;
1485 */
1486 kal_bool is_meas_period_reset;
1487
1488 /* When this flag is set to TRUE, the standby measurement will be performed every T-meas without */
1489 /* multiplying by N layers. So that there will be 2 measurement results within 10s OOS period, which */
1490 /* increases the successful rate of finding a candidate during OOS */
1491 kal_bool prohibit_apply_n_layer;
1492 standby_gsm_meas_req_rat_enum request_rat;
1493 te_ir_urrc_state umts_rrc_state;
1494 te_ir_errc_state lte_rrc_state;
1495#ifdef __TDD_DM_GAP_OPTIMIZATION__
1496 kal_bool is_bsic_gap_valid;
1497#endif /* __TDD_DM_GAP_OPTIMIZATION__ */
1498#ifdef __LTE_RAT__
1499 /*eas configures gas to make use of idle rf to decode bsic in order to speed up srvcc to geran*/
1500 kal_bool is_auto_gap_valid;
1501#endif
1502 kal_int16 b2_threshold_in_qdbm; // pass the B2 threshold to GL1
1503} rr_mpal_standby_gsm_meas_req_struct;
1504
1505#if defined(__23G_PRI_RESEL_SUPPORT__) || defined(__LTE_RAT__)
1506typedef struct {
1507 LOCAL_PARA_HDR
1508 kal_uint8 list_ref;
1509 ts_ir_gsm_cell_list gsm_cell_list;
1510 kal_uint16 period_in_second;
1511 standby_gsm_meas_req_rat_enum request_rat;
1512 te_ir_urrc_state umts_rrc_state;
1513 te_ir_errc_state lte_rrc_state;
1514} rr_mpal_standby_gsm_prio_meas_req_struct;
1515#endif /* defined(__23G_PRI_RESEL_SUPPORT__) || defined(__LTE_RAT__) */
1516
1517typedef struct
1518{
1519 kal_uint16 arfcn;
1520 kal_uint8 bsic_valid;
1521 kal_int32 frame_offset;
1522 kal_int32 ebit_offset;
1523 kal_bool retry_FB_SB;
1524 kal_uint32 time_stamp;
1525 kal_bool is_enh_bsic_verify_used;
1526} mpal_standby_gsm_bsic_read_struct;
1527
1528typedef struct
1529{
1530 LOCAL_PARA_HDR
1531 kal_uint8 list_len; /* The number of valid element in bsic_read_list */
1532 mpal_standby_gsm_bsic_read_struct cell_bsic_list[STADNBY_GSM_MAX_BSIC_NUM]; /* The database for BSIC read */
1533} rr_mpal_standby_gsm_bsic_read_req_struct;
1534
1535typedef struct
1536{
1537 LOCAL_PARA_HDR
1538 kal_uint8 list_len; /* The number of valid element in bsic_stop_list */
1539 kal_uint16 stop_bsic_list[STADNBY_GSM_MAX_BSIC_NUM]; /* The database for BSIC stop */
1540} rr_mpal_standby_gsm_bsic_stop_req_struct;
1541
1542
1543#ifdef __LTE_RAT__
1544typedef struct {
1545 LOCAL_PARA_HDR
1546 kal_uint8 scan_id;
1547 kal_uint16 arfcn;
1548} rr_mpal_standby_gsm_report_cgi_search_rf_req_struct;
1549
1550typedef struct {
1551 LOCAL_PARA_HDR
1552 kal_uint8 scan_id;
1553} rr_mpal_standby_gsm_report_cgi_search_rf_stop_req_struct;
1554
1555typedef struct {
1556 LOCAL_PARA_HDR
1557 kal_uint8 bsic_tid;
1558 kal_uint16 arfcn;
1559} rr_mpal_standby_gsm_report_cgi_bsic_start_req_struct;
1560
1561typedef struct {
1562 LOCAL_PARA_HDR
1563} rr_mpal_standby_gsm_report_cgi_bsic_stop_req_struct;
1564
1565typedef struct {
1566 LOCAL_PARA_HDR
1567 kal_uint16 arfcn;
1568 kal_uint8 bsic;
1569 kal_uint16 bcch_mask;
1570 kal_int32 frame_offset;
1571 kal_int32 ebit_offset;
1572} rr_mpal_standby_gsm_report_cgi_sys_info_read_req_struct;
1573
1574typedef struct {
1575 kal_uint8 ref_count;
1576 kal_uint16 msg_len;
1577} rr_mpal_standby_gsm_report_cgi_sys_info_stop_req_struct;
1578#endif /* __LTE_RAT__ */
1579
1580/* make L1 keep the resource (gap) for next BSIC decoding activity */
1581typedef struct {
1582 LOCAL_PARA_HDR
1583 kal_bool is_standby_cell_bsic_res_required;
1584} rr_mpal_standby_cell_bsic_res_req_struct;
1585
1586#endif /* defined(__UMTS_RAT__) || defined(__LTE_RAT__) */
1587
1588#ifdef __UMTS_RAT__
1589#ifdef __UMTS_TDD128_MODE__
1590typedef struct {
1591 kal_uint8 ref_count;
1592 kal_uint16 msg_len;
1593 kal_bool high_priority;
1594} rr_mpal_3g_search_priority_req_struct;
1595#endif
1596#endif /*__UMTS_RAT__ */
1597
1598#if defined(__GEMINI__)
1599typedef struct {
1600 LOCAL_PARA_HDR
1601 kal_uint8 sim_config_status;
1602 kal_uint8 sim_insert_status;
1603} rr_mpal_sim_status_update_req_struct;
1604#endif
1605
1606#ifdef __GEMINI__
1607typedef struct {
1608 LOCAL_PARA_HDR
1609 kal_uint32 protected_channel;
1610} rr_mpal_channel_protect_start_req_struct;
1611
1612typedef struct {
1613 LOCAL_PARA_HDR
1614 rsvas_sim_enum sim_in_transfer;
1615} rr_mpal_virtual_suspend_req_struct;
1616
1617#endif/* end of __GEMINI__*/
1618
1619#ifdef __PS_SERVICE__
1620#endif /* end of __PS_SERVICE__ */
1621
1622#ifndef __MTK_TARGET__
1623typedef struct {
1624 LOCAL_PARA_HDR
1625 kal_uint8 *no_rts_sent;
1626 kal_uint8 *total_blks_sent;
1627 kal_uint8 tbf_index;
1628} rr_mpal_flush_req_struct;
1629#endif
1630
1631#ifndef __MTK_TARGET__ /* for UT */
1632#include "mph_types.h"
1633typedef struct
1634{
1635 LOCAL_PARA_HDR
1636 channel_type_enum ch_type;
1637} mphc_ut_dl_data_ind_struct;
1638
1639typedef struct
1640{
1641 LOCAL_PARA_HDR
1642 channel_type_enum ch_type;
1643 TChMode ch_mode;
1644 LogChannel tch_type;
1645#ifdef __PS_L1_DC_ARCH__
1646 kal_uint32 ul_data_index;
1647#endif /* __PS_L1_DC_ARCH__ */
1648} mphc_ut_ul_data_req_struct;
1649
1650typedef struct
1651{
1652 LOCAL_PARA_HDR
1653 channel_type_enum ch_type;
1654 kal_bool is_bad_frame;
1655 kal_uint8* downlink_data_ptr;
1656#ifdef __REPEATED_ACCH__
1657 kal_bool isCombinedACCh;
1658#endif /*end of (__REPEATED_ACCH__) */
1659} mpal_rr_ut_dl_data_ind_struct;
1660
1661typedef struct
1662{
1663 LOCAL_PARA_HDR
1664 channel_type_enum ch_type;
1665 channel_type_enum tch_type;
1666 kal_bool is_signalling;
1667 kal_bool is_fill_frame;
1668} mpal_rr_ut_ul_data_req_struct;
1669#endif
1670
1671#endif
1672
1673