FreeCalypso > hg > fc-magnetite
view src/g23m-gprs/grr/grr_psif.h @ 481:24078551b620
build system: set ALLOW_CSIM_GSM=1 by default for hybrid configs
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 19 Jun 2018 06:39:18 +0000 |
parents | 219afcfc6250 |
children |
line wrap: on
line source
/* +----------------------------------------------------------------------------- | Project : GPRS (8441) | Modul : GRR +----------------------------------------------------------------------------- | Copyright 2002 Texas Instruments Berlin, AG | All rights reserved. | | This file is confidential and a trade secret of Texas | Instruments Berlin, AG | The receipt of or possession of this file does not convey | any rights to reproduce or disclose its contents or to | manufacture, use, or sell anything it may describe, in | whole, or in part, without the specific written consent of | Texas Instruments Berlin, AG. +----------------------------------------------------------------------------- | Purpose : Definitions for service PSI. +----------------------------------------------------------------------------- */ #ifndef GRR_PSIF_H #define GRR_PSIF_H #define INIT_NEEDED 1 #define INIT_NOT_NEEDED 0 typedef enum { PSI1_OK, PSI1_COMPLETE_ACQ, PSI1_PARTIAL_ACQ, PSI1_PBCCH_RELEASED, PSI1_PBCCH_ESTABLISHED }T_PSI1_RET; typedef enum { PSI2_OK, PSI2_REREAD }T_PSI2_RET; typedef enum { PSI3_OK, PSI3_CELL_BARRED, PSI3_NCELL_VALID, PSI3_NCELL_INVALID }T_PSI3_RET; typedef enum { PSI3BIS_OK #if defined (REL99) AND defined (TI_PS_FF_EMR) , PSI3BIS_REREAD_PSI3_3BIS_3TER #else , PSI3BIS_REREAD_PSI3_3BIS #endif , PSI3BIS_REREAD_PSI3BIS, PSI3BIS_NCELL_VALID }T_PSI3BIS_RET; #if defined (REL99) AND defined (TI_PS_FF_EMR) typedef enum { PSI3TER_OK, PSI3TER_REREAD_PSI3_3BIS_3TER, PSI3TER_REREAD_PSI3TER }T_PSI3TER_RET; #endif typedef enum { PSI4_OK, PSI4_INT_LIST_VALID, PSI4_REREAD }T_PSI4_RET; typedef enum { PSI5_OK, PSI5_MEAS_PARAM_VALID, PSI5_REREAD }T_PSI5_RET; #ifdef REL99 typedef enum { PSI8_OK, PSI8_CONTENTS_INVALID, PSI8_REREAD }T_PSI8_RET; #endif typedef enum { SI13_OK, SI13_REREAD, SI13_PARTIAL_SI, SI13_COMPLETE_SI, SI13_COMPLETE_PSI }T_SI13_RET; typedef enum { PSI13_OK, PSI13_PBCCH_RELEASED, PSI13_PBCCH_ESTABLISHED, PSI13_PARTIAL_SI, PSI13_COMPLETE_SI, PSI13_COMPLETE_PSI }T_PSI13_RET; typedef enum /* T_STATES_OF_PSI*/ { NOT_SEND, RECEIPT_OK, NEEDED }T_STATES_OF_PSI; typedef enum /* T_PSI_MESSAGES*/ { PSI1, PSI2, PSI3, PSI3bis, #ifdef REL99 PSI3ter, #endif PSI4, PSI5, #ifdef REL99 PSI8, #endif PSI13 }T_PSI_MESSAGES; typedef enum { ACQ_RUNNING, ACQ_PART_OK, ACQ_COMP_OK, ACQ_PERIOD_OK, ACQ_NPSI_OK }T_ACQ_STATE_RET; EXTERN T_ACQ_STATE_RET psi_check_acq_state ( void ); EXTERN void psi_reset_all ( void); EXTERN void psi_stop_10sec ( void ); EXTERN void psi_start_10sec ( void ); EXTERN void psi_partial_acq ( void ); EXTERN void psi_init ( void ); EXTERN void psi_init_params ( void ); EXTERN void psi_complete_acq ( ACQ_TYPE acq_type ); EXTERN void psi_send_psi_status ( void ); EXTERN void psi_stop_30sec ( BOOL start_again); EXTERN void psi_start_30sec ( void ); EXTERN void psi_start_60sec ( void ); EXTERN void psi_stop_60sec ( BOOL start_again); EXTERN T_PSI13_RET psi_process_psi13 ( T_PSI_13 * psi13 ); EXTERN T_SI13_RET psi_process_si13( T_D_SYS_INFO_13 *si13); EXTERN T_PSI5_RET psi_process_psi5 ( T_PSI_5 *psi5); EXTERN T_PSI4_RET psi_process_psi4 ( T_PSI_4 *psi4); EXTERN T_PSI3BIS_RET psi_process_psi3bis ( T_PSI_3_BIS *psi3bis); EXTERN T_PSI3_RET psi_process_psi3 ( T_PSI_3 *psi3); EXTERN T_PSI2_RET psi_process_psi2 ( T_PSI_2 *psi2); EXTERN T_PSI1_RET psi_process_psi1 ( T_PSI_1 *psi1); EXTERN void psi_receive_psi ( UBYTE psi_reading_type); EXTERN void psi_process_prach ( T_prach_ctrl_par *prach ); EXTERN void psi_reset_si_entries ( void ); EXTERN T_ACQ_STATE_RET psi_acq_state_of_si( T_si_states si_states ); EXTERN void psi_check_acq_state_of_si( UBYTE updated_si); EXTERN BOOL psi_is_update_needed ( UBYTE si_change_field ); EXTERN void psi_stop_psi_reading(ACQ_TYPE acq_type_in_idle); EXTERN void psi_update_data_to_request( UBYTE init_needed); EXTERN BOOL psi_is_access_class_changed(void); EXTERN void psi_stop_timer ( void ); EXTERN BOOL psi_is_access_allowed(void); EXTERN void psi_reread_psi2(void); #if defined (REL99) AND defined (TI_PS_FF_EMR) EXTERN void psi_reread_psi3_3bis_3ter(void); #else EXTERN void psi_reread_psi3_and_3bis(void); #endif EXTERN void psi_reread_psi3bis(void); #if defined (REL99) AND defined (TI_PS_FF_EMR) EXTERN void psi_reread_psi3ter(void); #endif EXTERN void psi_reread_psi4(void); EXTERN void psi_reread_psi5(void); EXTERN void psi_handle_psi1(T_PSI_1 * psi); EXTERN void psi_handle_psi2(T_PSI_2 * psi); EXTERN void psi_handle_psi3(T_PSI_3 * psi); EXTERN void psi_handle_psi3bis(T_PSI_3_BIS *psi); #if defined (REL99) AND defined (TI_PS_FF_EMR) EXTERN void psi_handle_psi3ter(T_PSI_3_TER *psi); #endif EXTERN void psi_handle_psi4(T_PSI_4 * psi); #ifdef REL99 EXTERN void psi_handle_psi8(T_PSI_8 * psi); #endif EXTERN void psi_send_access_enable_if_needed(void); EXTERN void psi_initiate_read_complete_si(void); EXTERN void psi_initiate_read_complete_psi( UBYTE init_needed ); EXTERN void psi_initiate_pbcch_switching(T_PSI_DISABLE_CAUSE dc); EXTERN void psi_prepare_scell_pbcch_req(T_MPHP_SCELL_PBCCH_REQ *mphp_scell_pbcch_req, UBYTE psi_reading_type); EXTERN void psi_store_rel_pos(UBYTE *dest, UBYTE rel_pos, UBYTE max_dest); #ifdef TI_PS_FF_QUAD_BAND_SUPPORT EXTERN void att_update_std_band_indicator (UBYTE band_indicator); #endif #endif /* !GRR_PSIF_H */