FreeCalypso > hg > fc-magnetite
diff src/gpf2/inc/dmi.h @ 1:864b8cc0cf63
src/gpf2: preened GPF goo from TCS211
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 25 Sep 2016 23:38:58 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gpf2/inc/dmi.h Sun Sep 25 23:38:58 2016 +0000 @@ -0,0 +1,283 @@ +/* ++----------------------------------------------------------------------------- +| Project : +| Modul : sas_dmi.h ++----------------------------------------------------------------------------- +| 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 : External interface for SAS_DMI support module ++----------------------------------------------------------------------------- +*/ + +#ifndef ANITESAS_DMI__H +#define ANITESAS_DMI__H + +/*==== INCLUDES =============================================================*/ +/*==== CONSTS ===============================================================*/ + +/* +* Nasty Tricks Department +*/ + +#define NULLSTRING \0 + +#define DMIVSI_CALLER proxyVsiCallerId, +#define DMIVSI_CALLER_SINGLE proxyVsiCallerId +#define G23_COMP_REF_TYPE T_HANDLE +#define G23_NULL_COMP_REF (T_HANDLE)(0) + +/* End of N.T.D. */ + +/* +* SAS DMI - Activate / Deactivate Commands +* (commands+values defined in Anite +* DMID spec. I2477D) +*/ + +#define G23_COMP_RR 1 +#define G23_COMP_ALR 2 +#define G23_COMP_PHY 3 +#define G23_COMP_CCD 9 + +#define SASRPT_ON 1 +#define SASRPT_OFF 0 +#define SASRPT_IS_UPLINK 0 +#define SASRPT_IS_DOWNLINK 1 +#define SASRPT_MSGRSP 0 +#define SASRPT_MSGIGN 1 +#define SASRPT_IDLEMODE 1 +#define SASRPT_DEDIMODE 2 + +/* +* SAS DMID - Activation/Deactivation Flags +* (set by corresponding SAS DMID +* commands - see above) +*/ + +#define SAS_RPRT_ACTIVE__IDLEMODE 0x0001 +#define SAS_RPRT_ACTIVE__DEDICATEDMODE 0x0002 +#define SAS_RPRT_ACTIVE__L3MSG 0x0004 +#define SAS_RPRT_ACTIVE__L1MSG 0x0008 +#define SAS_RPRT_ACTIVE__SYNC 0x0010 +#define SAS_RPRT_ACTIVE__SACCH 0x0020 +#define SAS_RPRT_ACTIVE__SACCHCOMPLETE 0x0040 +#define SAS_RPRT_ACTIVE__CHANREQIMMEDASSIGN 0x0080 +#define SAS_RPRT_ACTIVE__BCCH 0x0100 +#define SAS_RPRT_ACTIVE__PAGE 0x0200 + +/* +* extern procedure prototypes +*/ + +#define START_FMT1 1 +#define START_FMT2 2 + +/*==== TYPES ================================================================*/ +typedef struct _start_du +{ + U8 fmtDiscriminator; + union + { + U8 dummyPlaceHolder; +#ifdef __T_start__ + T_start* fmt1_Start; +#endif +#ifdef __T_start_time__ + T_start_time* fmt2_Start; +#endif + } u; +} start_u; + +/*==== EXPORTS ==============================================================*/ +extern void SasDmi( U8 g23Component ); + +extern void Dmi_SendReport_IdleMode( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 Ssf, + U8 Ssr, + U16* Nf, + U8* Nr, + U8* Nb ); +extern void Dmi_SendReport_DedMode( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 Ta, + U8 Pwr, + U8 Rlf, + U8 Rqf, + U8 Rls, + U8 Rqs, + U16* Nf, + U8* Nr, + U8* Nb ); + +extern void Dmi_SendReport_L3( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U8 UlOrDl, + U16 L3MsgLen, + U8* L3Msg, + U8 L3MsgId ); + +extern void Dmi_SendReport_L1( U8 g23Comp, G23_COMP_REF_TYPE g23CompRef ); + +extern void Dmi_SendReport_Sync( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 Fff, + U8 Bsic, + U32 Toffs ); +extern void Dmi_SendReport_Sacch( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U8 Mrltc, + U8 Crltc, + U8 L3SiPdTi, + U8 L3MsgTyp ); + +extern void Dmi_SendReport_SacchCompl( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 MsgLen, + U8 Mrltc, + U8 Crltc, + U8* L2Msg ); + +extern void Dmi_SendReport_ChanReq( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U8 ChanReqData, + U32 ChanReqFrNum ); +extern void Dmi_SendReport_ImmedAssign( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 L3MsgLen, + U8 RspOrIgn, + U8* L3Msg ); +extern void Dmi_SendReport_Bcch( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 L3MsgLen, + U16 BcchFreq, + U8* L3BcchMsg ); +extern void Dmi_SendReport_Page( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 L3MsgLen, + U8 Mdsc, + U8 Cdsc, + U8* L3PageMsg ); + +extern void Dmi_SendReport_IdleChan( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 Fff, + U8 Bsic, + U8 CombFlag, + U8 CchC, + U8 Mfrm, + U8 AgRes, + U8 CchG, + U8 Pmfrm, + U8 Pbi ); + +extern void Dmi_SendReport_DedChan_NonHop( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 ScFreq, + U8 ScBsic, + U8 ChTyp, + U8 Tslot, + U8 SubCh, + U8 Tsc, + U8 GsmBa, + U16 DedFreq ); + +extern void Dmi_SendReport_DedChan_Hop( U8 g23Comp, + G23_COMP_REF_TYPE g23CompRef, + U16 ScFreq, + U8 ScBsic, + U8 ChTyp, + U8 Tslot, + U8 SubCh, + U8 Tsc, + U8 Maio, + U8 Hsn, + U8 GsmBa, + start_u* StartTime, + U8 MaxLenChanList, + U8* BeforeChanList, + U8* AfterChanList ); + +/*---------------------------------------------------*/ + +/*+Obsolete*/ +/* +* Features potentially obsoleted by Issue 1.4 of +* Anite DMI spec. +* +* ** LEAVE IN CODE SINCE REFERENCED IN dmi.c +* +* +*/ + +/* ...continuous reports... */ + +#define SAS_RPRT_START__IDLEMODE '1' +#define SAS_RPRT_STOP__IDLEMODE '6' +#define SAS_RPRT_START__DEDICATEDMODE '2' +#define SAS_RPRT_STOP__DEDICATEDMODE '7' +#define SAS_RPRT_START__L3MSG '3' +#define SAS_RPRT_STOP__L3MSG '8' +#define SAS_RPRT_START__L1MSG '4' +#define SAS_RPRT_STOP__L1MSG '9' +#define SAS_RPRT_START__SYNC 'S' +#define SAS_RPRT_STOP__SYNC 'T' +#define SAS_RPRT_START__SACCH 'A' +#define SAS_RPRT_STOP__SACCH 'B' +#define SAS_RPRT__SACCHCOMPLETE '\\' +#define SAS_RPRT_START__SACCHCOMPLETE 'A' +#define SAS_RPRT_STOP__SACCHCOMPLETE 'B' +#define SAS_RPRT_START__CHANREQIMMEDASSIGN 'C' +#define SAS_RPRT_STOP__CHANREQIMMEDASSIGN 'D' +#define SAS_RPRT_START__BCCH 'E' +#define SAS_RPRT_STOP__BCCH 'F' +#define SAS_RPRT_START__PAGE 'P' +#define SAS_RPRT_STOP__PAGE 'Q' + +/* ...once-off reports... */ + +#define SAS_RPRT_ONCE__IDLECHAN I +#define SAS_RPRT_ONCE__DEDICATEDCHAN J + +/* ...status getters/setters... */ + +extern U16 GetSasRptStatus_IdleMode( void ); +extern U16 GetSasRptStatus_DedMode( void ); +extern U16 GetSasRptStatus_L3( void ); +extern U16 GetSasRptStatus_L1( void ); +extern U16 GetSasRptStatus_Sync( void ); +extern U16 GetSasRptStatus_Sacch( void ); +extern U16 GetSasRptStatus_SacchCompl( void ); +extern U16 GetSasRptStatus_ChanReq( void ); +extern U16 GetSasRptStatus_Bcch( void ); +extern U16 GetSasRptStatus_Page( void ); + +extern U16 HandleSasCmd( U8* SasCmd ); + +extern void SetSasRptStatus_IdleMode( U16 OnOff ); +extern void SetSasRptStatus_DedMode( U16 OnOff ); +extern void SetSasRptStatus_L3( U16 OnOff ); +extern void SetSasRptStatus_L1( U16 OnOff ); +extern void SetSasRptStatus_Sync( U16 OnOff ); +extern void SetSasRptStatus_Sacch( U16 OnOff ); +extern void SetSasRptStatus_SacchCompl( U16 OnOff ); +extern void SetSasRptStatus_ChanReq( U16 OnOff ); +extern void SetSasRptStatus_Bcch( U16 OnOff ); +extern void SetSasRptStatus_Page( U16 OnOff ); + +/*-Obsolete*/ + +/*---------------------------------------------------*/ + + + +#endif /* ANITESAS_DMI__H */