view cdg-hybrid/cdginc/m_mm.val @ 268:f2e52cab0a73

abb_inth.c: check all interrupt causes, not just one The original code used if - else if - else if etc constructs, thus the first detected interrupt was the only one handled. However, Iota ITSTATREG is a clear-on-read register, thus if we only handle the first detected interrupt and skip checking the others, then the other interrupts will be lost, if more than one interrupt happened to occur in one ABB interrupt handling cycle - a form of rare race condition. Change the code to check all interrupts that were read in this cycle.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 13 Jun 2021 18:17:53 +0000
parents 35f7a1dc9f7d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : m_mm.val                                                       |
| SOURCE  : "msg\mm.mdf"                                                   |
| LastModified : "2006-03-22"                                              |
| IdAndVersion : "6147.602.06.106"                                         |
| SrcFileTime  : "Wed Nov 28 10:19:30 2007"                                |
| Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016                   |
|           !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!!                |
+--------------------------------------------------------------------------+
*/

/* PRAGMAS
 * PREFIX                 : NONE
 * COMPATIBILITY_DEFINES  : NO (require PREFIX)
 * ALWAYS_ENUM_IN_VAL_FILE: NO
 * ENABLE_GROUP: NO
 * CAPITALIZE_TYPENAME: NO
 */


#ifndef M_MM_VAL
#define M_MM_VAL


#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

#include "m_rr_com.val"   /* Access values independent from the corresponding h-file. */


/*
 * Value constants for VAL_cm_serv_type
 */
#define VAL_CM_SERV_TYPE___DEF         (0x0)      /* reserved                       */
#define ST_MOC                         (0x1)      /* Mobile originating call establishment or packet mode connection establishment */
#define ST_EMERGENCY                   (0x2)      /* Emergency call establishment   */
#define ST_SMS                         (0x4)      /* Short message service          */
#define ST_SS                          (0x8)      /* Supplementary service activation */

/*
 * Value constants for VAL_follow
 */
#define FOR_PENDING_NO                 (0x0)      /* No follow-on request pending   */
#define FOR_PENDING_YES                (0x1)      /* Follow-on request pending      */

/*
 * Value constants for VAL_key_seq
 */
#define VAL_KEY_SEQ___7                (0x7)      /* No key is available (MS to network); Reserved (network to MS) */

/*
 * Value constants for VAL_odd_even
 */
#define EVEN                           (0x0)      /* even                           */
#define ODD                            (0x1)      /* odd                            */

/*
 * Value constants for VAL_rej_cause
 */
#define VAL_REJ_CAUSE___DEF            (0x0)      /* DOWNLINK : Service option temporarily out of order UPLINK : Protocol error, unspecified */
#define RC_IMSI_IN_HLR                 (0x2)      /* IMSI unknown in HLR            */
#define RC_ILLEGAL_MS                  (0x3)      /* Illegal MS                     */
#define RC_IMSI_IN_VLR                 (0x4)      /* IMSI unknown in VLR            */
#define RC_IMEI_NOT_ACCEPTED           (0x5)      /* IMEI not accepted              */
#define RC_ILLEGAL_ME                  (0x6)      /* Illegal ME                     */
#define RC_PLMN_NOT_ALLOWED            (0xb)      /* PLMN not allowed               */
#define RC_LA_NOT_ALLOWED              (0xc)      /* Location Area not allowed      */
#define RC_ROAMING_NOT_ALLOWED         (0xd)      /* National roaming not allowed in this location area */
// VAL-FF: REL99  
// #define RC_NO_SUITABLE_CELL_IN_LA      (0xf)   /* Find another allowed location area in the same PLMN */
#define RC_NETWORK_FAILURE             (0x11)     /* Network failure                */
#define RC_CONGETION                   (0x16)     /* Congestion                     */
#define RC_SERVICE_NOT_SUPPORTED       (0x20)     /* Service option not supported   */
#define RC_SERVICE_NOT_SUBSCRIBED      (0x21)     /* Requested service option not subscribed */
#define RC_SERVICE_ORDER               (0x22)     /* Service option temporarily out of order */
#define RC_IDENTIFIY                   (0x26)     /* Call cannot be identified      */
#define RC_INCORRECT_MESSAGE           (0x5f)     /* Semantically incorrect message */
#define RC_INVALID_MAND_MESSAGE        (0x60)     /* Invalid mandatory information  */
#define RC_MESSAGE_TYPE_NOT_IMPLEM     (0x61)     /* Message type non-existent or not implemented */
#define RC_MESSAGE_TYPE_INCOMPAT       (0x62)     /* Message type not compatible with the protocol state */
#define RC_IE_NOT_IMPLEM               (0x63)     /* Information element non-existent or not implemented */
#define RC_CONDITIONAL_IE              (0x64)     /* Conditional IE error           */
#define RC_MESSAGE_INCOMPAT            (0x65)     /* Message not compatible with the protocol state */
#define RC_UNSPECIFIED                 (0x6f)     /* Protocol error, unspecified    */

/*
 * Value constants for VAL_ident_type
 */
#define VAL_IDENT_TYPE___DEF           (0x0)      /* reserved                       */
#define ID_TYPE_NO_IDENT               (0x0)      /* No Identity                    */
#define ID_TYPE_IMSI                   (0x1)      /* IMSI                           */
#define ID_TYPE_IMEI                   (0x2)      /* IMEI                           */
#define ID_TYPE_IMEISV                 (0x3)      /* IMEISV                         */
#define ID_TYPE_TMSI                   (0x4)      /* TMSI                           */

/*
 * Value constants for VAL_sapi
 */
#define SAPI_0                         (0x0)      /* SAPI used for RR, MM, CC and SS */
#define SAPI_3                         (0x3)      /* SAPI used for SMS              */

/*
 * Value constants for VAL_pd
 */
#define PD_GCC                         (0x0)      /* Group call control             */
#define PD_BCC                         (0x1)      /* Broadcast Call Control         */
#define PD_PDSS1                       (0x2)      /* PDSS1                          */
#define PD_CC                          (0x3)      /* Call Control, call related SS messages */
#define PD_PDSS2                       (0x4)      /* PDSS2                          */
#define PD_MM                          (0x5)      /* Mobility Management messages   */
#define PD_RR                          (0x6)      /* Radio Resources management messages */
#define PD_GPRS_MM                     (0x8)      /* GPRS Mobility Management messages */
#define PD_SMS                         (0x9)      /* SMS messages                   */
#define PD_GPRS_SM                     (0xa)      /* GPRS Session Management messages */
#define PD_SS                          (0xb)      /* non call related SS messages   */
#define PD_LS                          (0xc)      /* Location services              */
#define PD_TST                         (0xf)      /* Reserved for test procedures described in GSM 11.10 */

/*
 * Value constants for VAL_cs
 */
#define CODING_SCHEME_SMSCB            (0x0)      /* Coding scheme cell broadcast short messages */
#define CODING_SCHEME_UCS2             (0x1)      /* Coding scheme UCS2, 16 bit, ISO ISO/IEC10646 */

/*
 * Value constants for VAL_add_ci
 */
#define ADD_CI_NO                      (0x0)      /* Country's Initials are not to be added */
#define ADD_CI_YES                     (0x1)      /* Country's Initials are to be added */

/*
 * Value constants for VAL_save_time_value
 */
#define TIME_ADJ_NO                    (0x0)      /* No adjustment for Daylight Saving Time */
#define TIME_ADJ_1                     (0x1)      /* +1 hour adjustment for Daylight Saving Time */
#define TIME_ADJ_2                     (0x2)      /* +2 hours adjustment for Daylight Saving Time */

/*
 * user defined constants
 */
#define L3MAX                          (0xfb)     
#define MAXNAME                        (0x28)     

#include "CDG_LEAVE.h"


#endif