/*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*
C D M A T R A N S L A T I O N S E R V I C E S
GENERAL DESCRIPTION
This module contains the services which translate a CDMA message between
the internal format used by the Main Control task and the external format
used by the Transmit and Receive tasks.
EXTERNALIZED FUNCTIONS
caix_int_to_ext
Translates a message from internal to external format.
caix_ext_to_int
Translates a message from external to internal format.
INITIALIZATION AND SEQUENCING REQUIREMENTS
None
Copyright (c) 1990,1991,1992 by QUALCOMM, Incorporated. All Rights Reserved.
Copyright (c) 1993,1994,1995 by QUALCOMM, Incorporated. All Rights Reserved.
Copyright (c) 1996,1997,1998 by QUALCOMM, Incorporated. All Rights Reserved.
Copyright (c) 1999-2003 by QUALCOMM, Incorporated. All Rights Reserved.
*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/
/* <EJECT> */
/*===========================================================================
EDIT HISTORY FOR MODULE
This section contains comments describing changes made to the module.
Notice that changes are listed in reverse chronological order.
$PVCSPath: L:/src/asw/MSM5100/CP_REL_A/vcs/caix.c_v 1.121 02 Oct 2002 22:52:22 louiel $
$Header: //depot/asic/msmshared/1x/cp/MSMSHARED_CP_CDMA.02.00.64B/caix.c#7 $ $DateTime: 2006/04/11 19:29:28 $ $Author: fchan $
when who what, where, why
-------- --- ----------------------------------------------------------
04/11/06 fc Featurized parser support for ESCAM under FEATURE_IS2000_SCH.
05/26/05 an Pulled in a MEID change from 6500
05/11/05 an Added CAI_NTL_SUP_SVC_REC to xlate_ext_tc_eawim.
05/03/05 an Added support for MEID
02/14/05 an Fixed a packing error for pwr_meas_frames in a PMRM
02/09/05 ph When parsing PPM order from BS for >=PREV7, don't validate ORDQ range.
07/21/04 sj Added support for umts to 1x handover.
03/05/04 bkm Lint cleanup.
02/29/04 yll Revert back the JCDMA JTACS changes because of new JCDMA
requirements.
02/13/04 lh Added validation of PD.
02/12/04 va Pack p_rev 7 fields in CCC IR only if p_rev_in_use
is 7
01/12/04 sb Bug fixes for RTC Reject Order: don't pack rej_param_id for
Retrieve Parms Msg; pack con_ref based on ordq, not msg_type.
12/19/03 sb Fixed for loops in EAWIM/EFWIM, and added dword alignment.
11/18/03 lh Added dependency for qpch_code_chan on sr3_incl in MC_RR.
11/11/03 yll For JCDMA, the mobile shall ignore and discard the
(Extended) Global Service Redirection Message that
contains a JTACS or TACS record.
10/15/03 lh Changed access_ho_allowed[i] to access_ho_allowed inside
the FSIZ macro.
10/03/03 sb Fixed bug in Mobile Station Registered Message.
09/23/02 lh Parsing IT-SPM based on P_REV coming in the message, rather
than based on P_REV_IN_USE.
09/02/03 az Featurized mcc_burst_overflow_size within
FEATURE_MSG_PACK_UNIT_TEST
08/11/03 bkm Made loop condition for record processing CAM same as ECAM,
adds error protection against case of len < order_pos,though
this should never happen.
07/30/03 az Added support to return overflow size for MO SDB
07/30/03 az Added support for FEATURE_SO_8026
07/03/03 fc Removed minimum message length check for ANSI-41 system
parameter message and MC-RR parameter message.
07/01/03 az Added FEATURE_ENHANCED_BAND_CLASS
06/02/03 bkm Lint cleanup.
04/09/03 sb Removed featurization from alignment since SILK supports it.
03/31/03 sb Moved cadence_type to fixed part of Para Alert info rec.
03/21/03 lh Fixed a bug of skipping msg_pos when REL_A is not defined.
03/14/03 va Fixed the bug in traversing recs after CCC in TC stat rsp
if REL_A is not defined.
02/27/03 sb Removed unnecessary is2000_rel_a_incl from Sync Channel Message.
02/19/03 fc Corrected length comparsion on xlate_ext_gen_nl.
02/05/03 fc Cleanup for f-csh forward compability.
01/31/03 bkm Added MSG_HIGH on tranmsit of SCH errors Pwr Msg Rpt Msg.
01/14/03 sb Removed checking for 0 frequency in CCLM.
01/03/03 sb Only align ECAM if not in SILK.
12/12/02 sb Added reserved field to MC-RR.
12/05/02 ph Fixed cc_info_incl reference in UHDM parsing.
11/13/02 sb Fixed featurization.
11/07/02 az Removed FEATURE_IS2000_REV0_PREADDENDUM
11/07/02 az Mainlined FEATURE_IS95B
10/31/02 va Added support for dynamic p_rev
10/02/02 yll Linted the code.
10/01/02 az Mainlined FEATURE_IS2000 and FEATURE_IS2000_2_1_ADDENDUM
07/17/02 ph fixed call wait ind rec parsing to skip the reserved field also.
06/27/02 fc Changes for caii_univ_page_interleaved_addr_type.
06/25/02 az Changed the name of the union for IMSI type specific
subfields from class to class_type.
06/18/02 yll Added support for Base Station Status Req/Rsp Message.
06/13/02 yll Changed the BCSMS feature name to be under Rel A CC.
06/11/02 fc Removed num_page_recs from UPM structure.
06/10/02 sb Removed P_PARAMS macro; changed page_pos to ext_msg_pos.
Changed Sync Channel Message parsing to be more efficient.
06/04/02 sb Sync Channel Message now rejects messages with missing fields.
05/28/02 fc Changes to match UPM interleaved address structure with
message pack unit test.
05/22/02 fc Changes for message pack unit test.
Fixed length comparsion on xlate_ext_e_cl().
Fixed translation for Universal Page Message.
05/20/02 fc Added support for Universal Page Message.
05/06/02 yll Removed FEATURE_IS2000_REL_A_BCSMS for correct message
parsing.
04/16/02 va Fixed emergency record packing for EFWIM.
04/12/02 lh Added support for subaddress in Orig_C.
04/09/02 yll Added Broadcast SMS support on IS2000 RelA common channel.
03/25/02 ph Initialized cc_info_incl for REL_A
03/25/02 fc Removed obsolete messages processing in xlate_ext_fccch_msg.
03/24/02 sb Include ba_parms_len and ra_parms_len in caii_en_ac_parm_type.
03/08/02 sb Updated CAM, ESP, ECAM, Ansi-41, MC-RR, EAPM and SMCM to be in
sync with Addendum 2 published version.
03/12/02 lh Added CMEA support for release A messages.
03/06/02 sb Fixed macro calls for ACCT fields in EAPM
03/04/02 ph Updated with changes to SCM format to sync up with Add 2 pub version.
Also, fixed bug in filling reserved fields for Global Emer Rec
in FWIM and EFWIM.
03/04/02 sb Removed +1's in xlate_ext_bcch_msg function calls (merge error)
02/06/02 lh Fixed NNSCR.
02/22/02 fc Added support for Release A common channels.
02/15/02 sb qpch_power_level_config in MC-RR is now parsed conditionally
02/11/02 va Fixed Global Emer record packing
02/08/02 lh Fixed FTC messages blindly return CAIX_DONE_S.
02/07/02 lh Changed some info rec in RTC msg from byte arry to dword array.
01/24/02 ph Fixed packing of QOS record in outgoing TC msgs (EOM for now)
01/04/02 sb Check p_rev only in SILK (ECCLM)
12/06/01 lh Merged from MSM_CP.05.108.
11/30/01 hxw Added FEATURE_GPSONE_NEW_L2_ACK to support delay L2 Ack
mechanism.
11/13/01 ph In xlate_int_orig(), filled reserved field w