FreeCalypso > hg > fc-tourmaline
view cdg-hybrid/cdginc/ccdmtab.cdg @ 303:f76436d19a7a default tip
!GPRS config: fix long-standing AT+COPS chance hanging bug
There has been a long-standing bug in FreeCalypso going back years:
sometimes in the AT command bring-up sequence of an ACI-only MS,
the AT+COPS command would produce only a power scan followed by
cessation of protocol stack activity (only L1 ADC traces), instead
of the expected network search sequence. This behaviour was seen
in different FC firmware versions going back to Citrine, and seemed
to follow some law of chance, not reliably repeatable.
This bug has been tracked down and found to be specific to !GPRS
configuration, stemming from our TCS2/TCS3 hybrid and reconstruction
of !GPRS support that was bitrotten in TCS3.2/LoCosto version.
ACI module psa_mms.c, needed only for !GPRS, was missing in the TCS3
version and had to be pulled from TCS2 - but as it turns out,
there is a new field in the MMR_REG_REQ primitive that needs to be
set correctly, and that psa_mms.c module is the place where this
initialization needed to be added.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 08 Jun 2023 08:23:37 +0000 |
parents | 35f7a1dc9f7d |
children |
line wrap: on
line source
/* +--------------------------------------------------------------------------+ | PROJECT : PROTOCOL STACK | | FILE : ccdmtab.cdg | | SOURCE : "msg\rr_com.mdf" | | LastModified : "2004-01-16" | | IdAndVersion : "8010.606.02.008" | | SrcFileTime : "Wed Nov 28 10:20:42 2007" | | Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:51 2016 | | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! | +--------------------------------------------------------------------------+ */ const T_CCD_VarTabEntry mvar [] = { #include "mvar.cdg" }; const T_CCD_SpareTabEntry spare [] = { #include "spare.cdg" }; const T_CCD_CalcTabEntry calc [] = { #include "calc.cdg" }; const T_CCD_CompTabEntry mcomp [] = { #include "mcomp.cdg" }; const T_CCD_ElemTabEntry melem [] = { #include "melem.cdg" }; const T_CCD_MTXIDX mmtx_idx [] = { #include "mmtxidx.cdg" }; const USHORT mmtx [MAX_MMTX_SIZE] = { #include "mmtxval.cdg" }; /* * link time sanity check * (is h-files and tables from same version, does not check versions * across serial chanel only with in same exe file and its loaded dlls) */ #define CDG_ENTER_DEFINE_SANITY #define CDG_ENTER__M_RR_COM_VAL #define CDG_ENTER__FILENAME _M_RR_COM_VAL #define CDG_ENTER__M_RR_COM_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_COM_VAL__LAST_MODIFIED _2004_01_16 #define CDG_ENTER__M_RR_COM_VAL__ID_AND_VERSION _8010_606_02_008 #define CDG_ENTER__M_RR_COM_VAL__SRC_FILE_TIME _Wed_Nov_28_10_20_42_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_COM_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_RR_COM_H #define CDG_ENTER__FILENAME _M_RR_COM_H #define CDG_ENTER__M_RR_COM_H__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_COM_H__LAST_MODIFIED _2004_01_16 #define CDG_ENTER__M_RR_COM_H__ID_AND_VERSION _8010_606_02_008 #define CDG_ENTER__M_RR_COM_H__SRC_FILE_TIME _Wed_Nov_28_10_20_42_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_COM_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_RR_VAL #define CDG_ENTER__FILENAME _M_RR_VAL #define CDG_ENTER__M_RR_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_VAL__LAST_MODIFIED _2002_12_19 #define CDG_ENTER__M_RR_VAL__ID_AND_VERSION _6147_604_97_114 #define CDG_ENTER__M_RR_VAL__SRC_FILE_TIME _Wed_Nov_28_10_19_34_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_RR_H #define CDG_ENTER__FILENAME _M_RR_H #define CDG_ENTER__M_RR_H__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_H__LAST_MODIFIED _2002_12_19 #define CDG_ENTER__M_RR_H__ID_AND_VERSION _6147_604_97_114 #define CDG_ENTER__M_RR_H__SRC_FILE_TIME _Wed_Nov_28_10_19_34_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_RR_SHORT_PD_VAL #define CDG_ENTER__FILENAME _M_RR_SHORT_PD_VAL #define CDG_ENTER__M_RR_SHORT_PD_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_SHORT_PD_VAL__LAST_MODIFIED _2003_11_06 #define CDG_ENTER__M_RR_SHORT_PD_VAL__ID_AND_VERSION _8010_602_03_001 #define CDG_ENTER__M_RR_SHORT_PD_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_00_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_SHORT_PD_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_RR_SHORT_PD_H #define CDG_ENTER__FILENAME _M_RR_SHORT_PD_H #define CDG_ENTER__M_RR_SHORT_PD_H__FILE_TYPE CDGINC #define CDG_ENTER__M_RR_SHORT_PD_H__LAST_MODIFIED _2003_11_06 #define CDG_ENTER__M_RR_SHORT_PD_H__ID_AND_VERSION _8010_602_03_001 #define CDG_ENTER__M_RR_SHORT_PD_H__SRC_FILE_TIME _Wed_Nov_28_10_21_00_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_RR_SHORT_PD_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_MM_VAL #define CDG_ENTER__FILENAME _M_MM_VAL #define CDG_ENTER__M_MM_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_MM_VAL__LAST_MODIFIED _2006_03_22 #define CDG_ENTER__M_MM_VAL__ID_AND_VERSION _6147_602_06_106 #define CDG_ENTER__M_MM_VAL__SRC_FILE_TIME _Wed_Nov_28_10_19_30_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_MM_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_MM_H #define CDG_ENTER__FILENAME _M_MM_H #define CDG_ENTER__M_MM_H__FILE_TYPE CDGINC #define CDG_ENTER__M_MM_H__LAST_MODIFIED _2006_03_22 #define CDG_ENTER__M_MM_H__ID_AND_VERSION _6147_602_06_106 #define CDG_ENTER__M_MM_H__SRC_FILE_TIME _Wed_Nov_28_10_19_30_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_MM_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_CC_VAL #define CDG_ENTER__FILENAME _M_CC_VAL #define CDG_ENTER__M_CC_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_CC_VAL__LAST_MODIFIED _2004_01_26 #define CDG_ENTER__M_CC_VAL__ID_AND_VERSION _6147_600_97_110 #define CDG_ENTER__M_CC_VAL__SRC_FILE_TIME _Wed_Nov_28_10_18_32_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_CC_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_CC_H #define CDG_ENTER__FILENAME _M_CC_H #define CDG_ENTER__M_CC_H__FILE_TYPE CDGINC #define CDG_ENTER__M_CC_H__LAST_MODIFIED _2004_01_26 #define CDG_ENTER__M_CC_H__ID_AND_VERSION _6147_600_97_110 #define CDG_ENTER__M_CC_H__SRC_FILE_TIME _Wed_Nov_28_10_18_32_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_CC_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SS_VAL #define CDG_ENTER__FILENAME _M_SS_VAL #define CDG_ENTER__M_SS_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_SS_VAL__LAST_MODIFIED _2003_02_04 #define CDG_ENTER__M_SS_VAL__ID_AND_VERSION _6147_601_97_104 #define CDG_ENTER__M_SS_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_24_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SS_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SS_H #define CDG_ENTER__FILENAME _M_SS_H #define CDG_ENTER__M_SS_H__FILE_TYPE CDGINC #define CDG_ENTER__M_SS_H__LAST_MODIFIED _2003_02_04 #define CDG_ENTER__M_SS_H__ID_AND_VERSION _6147_601_97_104 #define CDG_ENTER__M_SS_H__SRC_FILE_TIME _Wed_Nov_28_10_21_24_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SS_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SMS_VAL #define CDG_ENTER__FILENAME _M_SMS_VAL #define CDG_ENTER__M_SMS_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_SMS_VAL__LAST_MODIFIED _2001_09_11 #define CDG_ENTER__M_SMS_VAL__ID_AND_VERSION _6147_607_97_102 #define CDG_ENTER__M_SMS_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_18_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SMS_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SMS_H #define CDG_ENTER__FILENAME _M_SMS_H #define CDG_ENTER__M_SMS_H__FILE_TYPE CDGINC #define CDG_ENTER__M_SMS_H__LAST_MODIFIED _2001_09_11 #define CDG_ENTER__M_SMS_H__ID_AND_VERSION _6147_607_97_102 #define CDG_ENTER__M_SMS_H__SRC_FILE_TIME _Wed_Nov_28_10_21_18_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SMS_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_FAC_VAL #define CDG_ENTER__FILENAME _M_FAC_VAL #define CDG_ENTER__M_FAC_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_FAC_VAL__LAST_MODIFIED _2002_01_14 #define CDG_ENTER__M_FAC_VAL__ID_AND_VERSION _6147_608_00_205 #define CDG_ENTER__M_FAC_VAL__SRC_FILE_TIME _Mon_Jan_14_11_02_22_2008 #include "CDG_ENTER.h" #undef CDG_ENTER__M_FAC_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_FAC_H #define CDG_ENTER__FILENAME _M_FAC_H #define CDG_ENTER__M_FAC_H__FILE_TYPE CDGINC #define CDG_ENTER__M_FAC_H__LAST_MODIFIED _2002_01_14 #define CDG_ENTER__M_FAC_H__ID_AND_VERSION _6147_608_00_205 #define CDG_ENTER__M_FAC_H__SRC_FILE_TIME _Mon_Jan_14_11_02_22_2008 #include "CDG_ENTER.h" #undef CDG_ENTER__M_FAC_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SAT_VAL #define CDG_ENTER__FILENAME _M_SAT_VAL #define CDG_ENTER__M_SAT_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_SAT_VAL__LAST_MODIFIED _2003_02_25 #define CDG_ENTER__M_SAT_VAL__ID_AND_VERSION _6147_609_99_011 #define CDG_ENTER__M_SAT_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_04_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SAT_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SAT_H #define CDG_ENTER__FILENAME _M_SAT_H #define CDG_ENTER__M_SAT_H__FILE_TYPE CDGINC #define CDG_ENTER__M_SAT_H__LAST_MODIFIED _2003_02_25 #define CDG_ENTER__M_SAT_H__ID_AND_VERSION _6147_609_99_011 #define CDG_ENTER__M_SAT_H__SRC_FILE_TIME _Wed_Nov_28_10_21_04_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SAT_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_T30_VAL #define CDG_ENTER__FILENAME _M_T30_VAL #define CDG_ENTER__M_T30_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_T30_VAL__LAST_MODIFIED _2000_02_04 #define CDG_ENTER__M_T30_VAL__ID_AND_VERSION _8411_620_98_101 #define CDG_ENTER__M_T30_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_26_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_T30_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_T30_H #define CDG_ENTER__FILENAME _M_T30_H #define CDG_ENTER__M_T30_H__FILE_TYPE CDGINC #define CDG_ENTER__M_T30_H__LAST_MODIFIED _2000_02_04 #define CDG_ENTER__M_T30_H__ID_AND_VERSION _8411_620_98_101 #define CDG_ENTER__M_T30_H__SRC_FILE_TIME _Wed_Nov_28_10_21_26_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_T30_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GMM_VAL #define CDG_ENTER__FILENAME _M_GMM_VAL #define CDG_ENTER__M_GMM_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_GMM_VAL__LAST_MODIFIED _2003_08_18 #define CDG_ENTER__M_GMM_VAL__ID_AND_VERSION _8441_603_02_013 #define CDG_ENTER__M_GMM_VAL__SRC_FILE_TIME _Wed_Nov_28_10_18_48_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GMM_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GMM_H #define CDG_ENTER__FILENAME _M_GMM_H #define CDG_ENTER__M_GMM_H__FILE_TYPE CDGINC #define CDG_ENTER__M_GMM_H__LAST_MODIFIED _2003_08_18 #define CDG_ENTER__M_GMM_H__ID_AND_VERSION _8441_603_02_013 #define CDG_ENTER__M_GMM_H__SRC_FILE_TIME _Wed_Nov_28_10_18_48_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GMM_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_TST_VAL #define CDG_ENTER__FILENAME _M_TST_VAL #define CDG_ENTER__M_TST_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_TST_VAL__LAST_MODIFIED _2000_10_23 #define CDG_ENTER__M_TST_VAL__ID_AND_VERSION _8441_603_99_005 #define CDG_ENTER__M_TST_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_30_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_TST_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_TST_H #define CDG_ENTER__FILENAME _M_TST_H #define CDG_ENTER__M_TST_H__FILE_TYPE CDGINC #define CDG_ENTER__M_TST_H__LAST_MODIFIED _2000_10_23 #define CDG_ENTER__M_TST_H__ID_AND_VERSION _8441_603_99_005 #define CDG_ENTER__M_TST_H__SRC_FILE_TIME _Wed_Nov_28_10_21_30_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_TST_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GRLC_VAL #define CDG_ENTER__FILENAME _M_GRLC_VAL #define CDG_ENTER__M_GRLC_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_GRLC_VAL__LAST_MODIFIED _2004_02_18 #define CDG_ENTER__M_GRLC_VAL__ID_AND_VERSION _8010_603_99_004 #define CDG_ENTER__M_GRLC_VAL__SRC_FILE_TIME _Wed_Nov_28_10_18_54_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GRLC_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GRLC_H #define CDG_ENTER__FILENAME _M_GRLC_H #define CDG_ENTER__M_GRLC_H__FILE_TYPE CDGINC #define CDG_ENTER__M_GRLC_H__LAST_MODIFIED _2004_02_18 #define CDG_ENTER__M_GRLC_H__ID_AND_VERSION _8010_603_99_004 #define CDG_ENTER__M_GRLC_H__SRC_FILE_TIME _Wed_Nov_28_10_18_54_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GRLC_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GRR_VAL #define CDG_ENTER__FILENAME _M_GRR_VAL #define CDG_ENTER__M_GRR_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_GRR_VAL__LAST_MODIFIED _2004_09_02 #define CDG_ENTER__M_GRR_VAL__ID_AND_VERSION _8010_603_019_04 #define CDG_ENTER__M_GRR_VAL__SRC_FILE_TIME _Wed_Nov_28_10_18_58_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GRR_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_GRR_H #define CDG_ENTER__FILENAME _M_GRR_H #define CDG_ENTER__M_GRR_H__FILE_TYPE CDGINC #define CDG_ENTER__M_GRR_H__LAST_MODIFIED _2004_09_02 #define CDG_ENTER__M_GRR_H__ID_AND_VERSION _8010_603_019_04 #define CDG_ENTER__M_GRR_H__SRC_FILE_TIME _Wed_Nov_28_10_18_58_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_GRR_H #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SM_VAL #define CDG_ENTER__FILENAME _M_SM_VAL #define CDG_ENTER__M_SM_VAL__FILE_TYPE CDGINC #define CDG_ENTER__M_SM_VAL__LAST_MODIFIED _2003_08_28 #define CDG_ENTER__M_SM_VAL__ID_AND_VERSION _8010_605_03_005 #define CDG_ENTER__M_SM_VAL__SRC_FILE_TIME _Wed_Nov_28_10_21_12_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SM_VAL #undef CDG_ENTER__FILENAME #define CDG_ENTER__M_SM_H #define CDG_ENTER__FILENAME _M_SM_H #define CDG_ENTER__M_SM_H__FILE_TYPE CDGINC #define CDG_ENTER__M_SM_H__LAST_MODIFIED _2003_08_28 #define CDG_ENTER__M_SM_H__ID_AND_VERSION _8010_605_03_005 #define CDG_ENTER__M_SM_H__SRC_FILE_TIME _Wed_Nov_28_10_21_12_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_SM_H #undef CDG_ENTER__FILENAME