[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit
Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/pub/include/ps_phy/ps_ephy_interface.h b/pub/include/ps_phy/ps_ephy_interface.h
new file mode 100644
index 0000000..d6251d0
--- /dev/null
+++ b/pub/include/ps_phy/ps_ephy_interface.h
@@ -0,0 +1,2964 @@
+/*****************************************************************************
+ *°æ±¾ËùÓÐ (C)2009ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾
+ * Ä£¿éÃû £ºPS-PHY½Ó¿Ú¶¨Òå
+ * ÎļþÃû £ºps_ephy_interface.h
+ * Îļþ±êʶ£º500000859505
+ * Ïà¹ØÎļþ£ºLTEÐÒéÕ»ÓëÎïÀí²ãÈí¼þ½Ó¿Ú˵Ã÷Êé
+ * ʵÏÖ¹¦ÄÜ£ºLTEÐÒéÕ»ÓëLTEÎïÀí²ãÖ®¼äµÄ½Ó¿Ú¶¨Òå
+ * ×÷Õß £ºÁõÖÇÅô ÐÒéÕ»²¿
+ * °æ±¾ £ºV1.0
+ * Íê³ÉÈÕÆÚ£º2009-8-10
+ * ÆäËü˵Ã÷£ºÐ½¨
+ *
+ * Ð޸ļǼ1£º// ÐÞ¸ÄÀúÊ·¼Ç¼£¬°üÀ¨ÐÞ¸ÄÈÕÆÚ¡¢ÐÞ¸ÄÕß¼°ÐÞ¸ÄÄÚÈÝ
+ * ÈÕ ÆÚ£º2010.5.10
+ * Ð޸ļǼºÅ(»ò°æ±¾ºÅ):
+ * ÐÞ¸ÄÈË£ºÁõÖÇÅô
+ * ÐÞ¸ÄÄÚÈÝ£ºÍ¬²½Í·ÎļþÓë×îеĽӿÚÉè¼ÆÎĵµ
+ * Ð޸ļǼ2£º
+ * ÈÕ ÆÚ£º2011.7.27
+ * Ð޸ļǼºÅ(»ò°æ±¾ºÅ):
+ * ÐÞ¸ÄÈË£ºÁõÖÇÅô
+ * ÐÞ¸ÄÄÚÈÝ£ºÔö¼Ó¶àÄ£½Ó¿Ú
+ * Ð޸ļǼ3£º
+ * ÈÕ ÆÚ£º2012.9.5
+ * Ð޸ļǼºÅ(»ò°æ±¾ºÅ):
+ * ÐÞ¸ÄÈË£ºÁõÖÇÅô
+ * ÐÞ¸ÄÄÚÈÝ£ºÔö¼ÓATÃüÁîʵÏÖÎïÀí²ã²ÎÊýÅäÖõÄÏûÏ¢½Ó¿Ú
+ *****************************************************************************/
+#ifndef _PS_EPHY_INTERFACE_H
+#define _PS_EPHY_INTERFACE_H
+
+/**************************************************************************
+ * Í·Îļþ°üº¬ *
+ **************************************************************************/
+#ifndef _OS_WIN
+#include "ram_config.h"
+#endif
+#include "psl1com.h"
+
+
+
+/**************************************************************************
+ * ºê¶¨Òå *
+ **************************************************************************/
+#ifndef _USE_LTEA_MERGE_LTE//DLMacbufÓÅ»¯LTE-AÔÝʱûÓл®·ÖµØÖ·¿Õ¼äby zcc
+#define Z_EUMAC_UL_PDU_BUF_NUM 16
+/*µ¥¸ö»º´æ´óС µ¥Î» BYTE*/
+#define Z_EUMAC_DL_PDU_BUF_SIZE 18736//18724
+#define ZPS_LTE_P_MAX_TB_NUM 4/*MACÒ»´Î½ÓÊÕµÄÏÂÐÐTBµÄ×î´ó¸öÊý*/
+#else
+#define Z_EUMAC_UL_PDU_BUF_NUM 8
+/*µ¥¸ö»º´æ´óС µ¥Î» BYTE*/
+#define Z_EUMAC_DL_PDU_BUF_SIZE 13000 //Áô¸øC#½Å±¾×ö»Ø¹é²âÊÔÓ㬺óÆÚTDDºÍC#½Å±¾ÍêÉÆºó¿ÉÒÔÈ¥µô
+
+/*Large and small DlMacPduBuf*/
+#define Z_EUMAC_DL_LARGEPDU_BUF_NUM 86 //210 //DDRÄÚ´æÑ¹Ëõ¸ÄΪ110
+#define Z_EUMAC_DL_SMALLPDU_PRE_MALLOC_MIN 16
+#define Z_EUMAC_DL_SMALLPDU_PRE_MALLOC_MAX 32
+
+/*µ¥¸ö»º´æ´óС µ¥Î» BYTE*/
+#define Z_EUMAC_DL_LARGEPDU_BUF_SIZE 9472
+#define Z_EUMAC_DL_SMALLPDU_BUF_SIZE 4000 //+64½Ó½ü4096
+#define ZPS_LTE_P_MAX_TB_NUM 2/*MACÒ»´Î½ÓÊÕµÄÏÂÐÐTBµÄ×î´ó¸öÊý*/
+#endif
+
+#define Z_EMBMS_DL_PDU_BUF_NUM 32 //8*4
+#define Z_EMBMS_DL_PDU_BUF_SIZE 9440
+
+/*µ¥¸ö»º´æ´óС µ¥Î» BYTE*/
+#define Z_EUMAC_UL_PDU_BUF_SIZE 9696
+#define Z_LTE_P_MAX_PCH_BUF_SIZE 500
+#define Z_LTE_P_MAX_SI_BUF_SIZE 2048
+#define Z_LTE_P_MAX_ETWS_BUF_SIZE 2048
+
+#define Z_LTE_P_HARQ_BUF_SIZE 64
+
+
+/* category3 ʱµÄPDU×î´óÖµ*/
+#define Z_LTE_P_MAX_UL_MACPDU_SIZE 9422
+#define Z_LTE_P_MAX_DL_MACPDU_SIZE 12756
+
+/* ²âÁ¿Ïà¹Øºê */
+#define ZPS_LTE_P_MAX_REPORT_CELL_PER_FREQ 32
+#define ZPS_LTE_P_MAX_MEAS_CELL_NUM_PER_FREQ 32
+#define ZPS_LTE_P_MAX_BLACK_CELL_PER_FREQ 32
+#define ZPS_LTE_P_MAX_FREQ_NUM 8
+#define ZPS_LTE_P_MAX_INTER_FREQ_NUM (ZPS_LTE_P_MAX_FREQ_NUM - 1)
+#define ZPS_LTE_P_MAX_SCELL_NUM 4
+#define ZPS_LTE_P_MAX_MBSFN_SUBFRAME_CFG_NUM 8
+#define ZPS_LTE_P_MAX_SINR_RESULT_NUM 4
+#define ZPS_LTE_P_MAX_RSSI_RESULT_NUM 2
+#define ZPS_LTE_P_MAX_N1PUCCH_AN_CSLISTP1_NUM 4
+
+#define Z_LTE_MAX_MBSFN_AREA_NUM_IN_CELL 8
+#define Z_LTE_P_MAX_SESSION_NUM_IN_PMCH 29
+#define Z_LTE_P_MAX_PMCH_NUM 15
+
+/*ZEPCG½Ó¿Úºê*/
+#define Z_ZEPCG_PARAM_NUM 25
+
+/*ºË¼äͬ²½ ±êÖ¾×Ö·û*/
+#define INTER_CORE_SYNC 0x5555AAAA
+
+/**************************************************************************
+ * È«¾ÖÊý¾Ý½á¹¹ÉùÃ÷ *
+ **************************************************************************/
+
+/*
+Á¬½Ó̬ϵÄÎÞÏßÁ´Â·¼à¿Ø²ÎÊý R9
+*/
+typedef struct
+{
+ WORD wCtrlFlg; /*1:ÆôÓñ¾IEÄÚЯ´øµÄÎÞÏßÁ´Â·¼à¿Ø²ÎÊý 0:ʹÓÃCommConfigÖÐÎÞÏßÁ´Â·¼à¿Ø²ÎÊý*/
+ /*
+ ȡֵ·¶Î§£º1, 2, 3, 4, 6, 8, 10, 20
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºEPHY¼ì²âµ½N310´Îʧ²½ºó£¬Éϱ¨ZPS_LTE_P_OUT_OF_SYNC_IND_EvÏûÏ¢¸øEURRC
+ */
+ WORD wN310; /*bCtrlFlg=1ʱÓÐЧ*/
+ /*
+ ȡֵ·¶Î§£º1, 2, 3, 4, 5, 6, 8, 10
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºEPHY¼ì²âµ½N311´Îͬ²½ºó£¬Éϱ¨ZPS_LTE_P_RECOVERY_SYNC_IND_EvÏûÏ¢¸øEURRC
+ */
+ WORD wN311; /*bCtrlFlg=1ʱÓÐЧ*/
+ WORD wPadding;
+}T_zPS_LTE_P_TimerConfig;
+
+/*
+EPHYÒ»¸öÐ¡ÇøµÄ²âÁ¿½á¹ûÐÅÏ¢
+*/
+typedef struct
+{
+ WORD wPhyCellId; //ȡֵ·¶Î§£º 0~503
+ WORD wRsrp; //ȡֵ·¶Î§£º 0~97
+ WORD wRsrq; //ȡֵ·¶Î§£º 0~34
+ WORD wPadding;
+} T_zPS_LTE_P_MeasResult;
+
+/*
+Ò»¸öƵµãµÄ²âÁ¿½á¹û,ÓÃÓÚÒìÆµ²âÁ¿½á¹ûµÄÉϱ¨
+*/
+typedef struct
+{
+ DWORD dwReportEarfcn; //ȡֵ·¶Î§£º 0~65535
+ WORD wCellNum; //ȡֵ·¶Î§£º 0~32
+ WORD wPadding;
+ T_zPS_LTE_P_MeasResult atResultList[ZPS_LTE_P_MAX_REPORT_CELL_PER_FREQ];
+} T_zPS_LTE_P_FreqMeasResult;
+
+/*
+¶¨ÒåµÄºÚÃûµ¥ÖÐÎïÀíÐ¡ÇøID µÄ·¶Î§
+*/
+typedef struct
+{
+ WORD wStartPhyCellId;
+ /*
+ ´ÓwStartPhyCellId¿ªÊ¼µÄÎïÀíÐ¡ÇøIDµÄ¸öÊý,
+ ȡֵ·¶Î§£º 1, 4, 8, 12, 16, 24, 32, 48, 64, 84, 96, 128, 168, 252, 504
+ */
+ WORD wPhyCellIdNum;
+} T_zPS_LTE_P_PhyCellIdRange;
+
+typedef struct
+{
+ WORD wMeasSubframePattern;
+ WORD awSubframeConfigBit[5];
+} T_zPS_LTE_P_MeasSubframePattern;
+
+typedef struct
+{
+ WORD wSetupFlg;
+ WORD wCellRangeNum;
+ T_zPS_LTE_P_MeasSubframePattern tMeasSubframePattern;
+ T_zPS_LTE_P_PhyCellIdRange atPhyCellIdRangeList[ZPS_LTE_P_MAX_MEAS_CELL_NUM_PER_FREQ];
+} T_zPS_LTE_P_MeasSubframeConfigNeigh;
+
+/*
+²âÁ¿¶ÔÏóµÄÐÅÏ¢
+*/
+typedef struct
+{
+ DWORD dwEarfcn;
+ /*
+ wMeasBandWidth ȡֵ·¶Î§£º 6£¬15£¬25£¬50£¬75£¬100£¬255
+ 255±íÊ¾ÍøÂç²àûÓÐÅäÖòâÁ¿´ø¿í£¬²ÉÓúͷþÎñÐ¡ÇøÏàͬµÄÏÂÐдø¿í½øÐвâÁ¿
+ */
+ WORD wMeasBandWidth;
+ WORD wCellNum;
+ /*
+ 1:¸ÃƵµãÏà¶ÔÓÚ·þÎñƵµãÊǸßÓÅÏȼ¶Æµµã
+ 0:¸ÃƵµãÏà¶ÔÓÚ·þÎñƵµã²»ÊǸßÓÅÏȼ¶Æµµã
+ */
+ WORD wHighPrioFlg;
+ WORD wPadding0;
+ WORD awPhyCellIdList[ZPS_LTE_P_MAX_MEAS_CELL_NUM_PER_FREQ];
+ /*
+ ÒìÆµµÄÖÆÊ½,ȡֵ·¶Î§£º 0£¬1
+ 0:FDDÒìÆµ£»
+ 1:TDD񓮵
+ */
+ WORD wAdditionalEarfcnInd;
+ /*
+ wPresenceAntennaPort1 : ÊÇ·ñʹÓÃÌìÏß¶Ë¿Ú1
+ TRUE£ºÊ¹ÓÃÌìÏß¶Ë¿Ú1.Ò²¾ÍÊÇËùÓÐÁÚÐ¡ÇøÖÁÉÙʹÓÃÁ½¸öÌØ¶¨µÄÌìÏß¶Ë¿Ú
+ FALSE£º²»ÊÊÓÃÌìÏß¶Ë¿Ú1.
+ */
+ WORD wPresenceAntennaPort1;
+ /*ÓÃÓÚCONNECTED̬£¬ÌṩintraÁÚÇøµÄMBSFNºÍTDD UL/DLÐÅÏ¢*/
+ WORD wNCellConfig;
+ /*Ö¸¶¨µÄºÚÃûµ¥ÎïÀíÐ¡ÇøID·¶Î§µÄÊýÄ¿, ȡֵ·¶Î§£º 0~32*/
+ WORD wBlackCellNum;
+ /*Ö¸¶¨µÄºÚÃûµ¥ÎïÀíÐ¡ÇøID·¶Î§µÄÁбí*/
+ T_zPS_LTE_P_PhyCellIdRange atPhyCellIdRangeList[ZPS_LTE_P_MAX_BLACK_CELL_PER_FREQ];
+ /*No DRX used״̬ϵı¨¸æÖÜÆÚ£¬µ¥Î»ms*/
+ DWORD dwNoDrxReportPeriod;
+ /*DRX used״̬ϵı¨¸æÖÜÆÚ£¬µ¥Î»ms*/
+ DWORD dwDrxReportPeriod;
+ /*Ô¼ÊøÅäÖñê־λ£¬Ö¸Ê¾atNeighMeasSubframeConfigÊÇ·ñ´æÔÚ£¬0-²»´æÔÚ£¬1-´æÔÚ*/
+ WORD wMeasSubFrameConfigFlg;
+ /*Scell²âÁ¿ÖÜÆÚ£¬ÒÔ×ÓÖ¡ÊýΪµ¥Î»±íʾ*/
+ WORD wMeasCycleScell;
+ /*ÁÚÇø²âÁ¿Ô¼ÊøÅäÖÃ*/
+ T_zPS_LTE_P_MeasSubframeConfigNeigh atNeighMeasSubframeConfig;
+
+} T_zPS_LTE_P_MeasFreqInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ wReportQuantity: ȡֵ·¶Î§£º0£¬1£¬2
+ 0: Ö»²âRSRP
+ 1: Ö»²âRSRQ,
+ 2: RSRPºÍRSRQÁ½¸ö¶¼²â
+ */
+ WORD wReportQuantity;
+ /*
+ wMaxCellReportPerFreq ÅäÖÃÿ¸öƵµãÉÏEPHYÉϱ¨Ð¡ÇøµÄ×î´ó¸öÊý¡£
+ ÒòΪ³ýÁËÅäÖõÄCellInfoListÍ⣬ÎïÀí²ã»¹ÄܽøÐÐÆäËû·ÇblacklistÄÚµÄÐ¡ÇøµÄ¼ì²âºÍ²âÁ¿Éϱ¨¡£
+ Òò´Ë¿ÉÒÔÀûÓô˽ӿڶÔÎïÀí²ãÉϱ¨µÄ×î´ó¸öÊý½øÐÐÁé»îÅäÖá£Ä¿Ç°Í³Ò»ÉèÖÃΪ32¡£
+ */
+ WORD wMaxCellReportPerFreq;
+ /*
+ ±»²âµÄƵµã¸öÊý¡£¸ù¾ÝĿǰLTEÎïÀí²ãµÄ²âÁ¿ÄÜÁ¦×î¶àÖ§³Ö3¸öÒìÆµÆµµã£¬¼ÓÉÏͬƵµÄƵµã£¬×î´óֵΪ4¡£
+ */
+ WORD wFreqNum;
+ /*
+ Rx-Tx²âÁ¿Ö¸Ê¾
+ */
+ WORD wRxTxMeas; /* 1±íʾ¿ªÆôRx-Tx²âÁ¿Éϱ¨£¬0±íʾֹͣ */
+ WORD wRsrpFilterFactor; /* RSRPµÄL3¹ýÂËϵÊý£¬È±Ê¡ÖµÎª4 */
+ WORD wRsrqFilterFactor;
+ WORD wPadding;
+ /*
+ ²âÁ¿¶ÔÏóµÄÐÅÏ¢ÁÐ±í£¨º¬Í¬ÆµºÍÒìÆµ£©, ÔªËØ0¹Ì¶¨ÎªintraƵµãµÄ²ÎÊý¡£1~3ΪinterƵµã²ÎÊý
+ */
+ T_zPS_LTE_P_MeasFreqInfo atMeasFreqInfoList[ZPS_LTE_P_MAX_FREQ_NUM];
+} T_zPS_LTE_P_MeasConfig_Req;
+
+/*
+ÐÒéÕ»¸øÎïÀí²ãÅäÖòâÁ¿GAPµÄÏûÏ¢¡£Èç¹ûÅäÖÃÁËеÄGAP PATTEN£¬ÎïÀí²ãÐèҪֹͣ¾ÉµÄGAP
+*/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ wActivated: ȡֵ·¶Î§ 1£¬0
+ 1£º¼¤»îÏÂÃæÅäÖõÄmeas_gap,ֹ֮ͣǰµÄGAP
+ 0£ºÈ¥»îµ±Ç°ÕýÔÚʹÓõÄmeas_gap£¬ÏÂÃæµÄ²ÎÊýÎÞЧ
+ */
+ WORD wActivated;
+ /*
+ wGapPatternId ȡֵ·¶Î§£º0£¬1
+ 0Ϊpattern0,
+ 1Ϊpattern1
+ */
+ WORD wGapPatternId;
+ /*
+ PATTEN_0µÄ·¶Î§£¨0~39£©
+ PATTEN_1µÄ·¶Î§£¨0~79£©
+ */
+ WORD wGapOffset;
+} T_zPS_LTE_P_MeasGapConfig_Req;
+
+/*
+ÐÒéÕ»¸øÎïÀí²ãÅäÖòâÁ¿¶ÔÏóµÄÑÚÂëÐÅÏ¢(Æô¶¯/ֹͣijЩƵµãµÄÁÚÇø²âÁ¿)
+*/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ÿ¸öbit¶ÔÓ¦meas_freq_infoÖеÄÒ»¸öƵµã£¬ÎïÀí²ãÖ»Æô¶¯¶ÔÓ¦µÄbitλΪ1µÄƵµãµÄ²âÁ¿¡£
+ Bitn¶ÔÓ¦ZPS_LTE_P_MEAS_CONFIG_REQ_EvÖеÄatMeasFreqInfoList[n]£¬n£º0~3
+ */
+ WORD wMeasBitMask;
+ /*
+ µ±·þÎñÐ¡ÇøSr>SnonintraPÇÒSq>SnonintraQʱ£¬¸ÃÖµ±»ÖÃΪ1£¬·ñÔòÖÃ0
+ */
+ WORD wEnableHighSearch;
+ /*
+ ÒìÖÆÊ½¸öÊý£¬ÓÃÀ´¼ÆËã¸ßÓÅÏȼ¶ËÑË÷ÖÜÆÚ£¬µ±wEnableHighSearchΪ1ʱÓÐЧ£¬Îª0ºöÂÔ¸ÃÖµ
+ */
+ WORD wIratNum;
+
+ WORD wMeasTypeBitMask;/*ÿ¸öƵµã²âÁ¿Æô¶¯µÄ³¡¾°Î»Í¼£¬È¡Öµ0±íʾ°´ÐÒéÃÅÏÞÆô¶¯£¬È¡Öµ1±íʾ°´RSRQ<=TH1(-12.5dB)Æô¶¯ */
+ WORD wPadding;
+
+} T_zPS_LTE_P_MeasMaskSet_Req;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wMeasPeriodChgMask;
+} T_zPS_LTE_P_MeasPeriodChg_Req;
+
+/*
+ÏòÐÒéÕ»Éϱ¨Í¬ÆµÐ¡ÇøºÍ·þÎñÐ¡ÇøµÄ²âÁ¿½á¹û
+*/
+typedef struct
+{
+ WORD wRxTxTimeDiff;
+ WORD wCurSFN;
+} T_zPS_LTE_P_RxTxResult;
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wPci;
+ WORD wRsrp;
+ WORD wRsrq;
+ WORD wNeighCellNum;
+ T_zPS_LTE_P_MeasResult tSccNeiCellRlstList[ZPS_LTE_P_MAX_REPORT_CELL_PER_FREQ];
+} T_zPS_LTE_P_ScellMeasResult;
+
+typedef struct
+{
+ SHORT sSinrInt; //ȡֵ·¶Î§ -20~40
+ WORD wSinrDec; //ȡֵ·¶Î§ 0~9
+} T_zPS_LTE_P_SinrResult;
+
+typedef struct
+{
+ SHORT sRssiInt; //ȡֵ·¶Î§ -128~-4£¬ÕûÊý²¿·Ö
+ WORD wRssiDec; //ȡֵ·¶Î§ 0~9£¬Ð¡Êý²¿·Ö
+} T_zPS_LTE_P_RssiResult;
+
+typedef struct
+{
+ WORD wNeibExistFlg;
+ WORD wCellNum;
+ WORD wRxTxRsltFlg;
+ WORD wSccRsltFlg;
+ DWORD dwServEarfcn;//·þÎñÐ¡ÇøÆµµãºÅ£¬·ÀÖ¹PSÖØÑ¡³É¹¦ºóÎóʹÓÃÖ®Ç°Ð¡Çø²âÁ¿½á¹û×öÆÀ¹À
+
+ WORD wRankInd; //µ¥Ë«Á÷ָʾ£¬È¡Öµ1±íʾµ¥Á÷£¬2±íʾ˫Á÷£¬0±íʾÎÞЧ£¬
+ WORD wPadding;
+
+ T_zPS_LTE_P_RxTxResult tRxTxRslt;
+ T_zPS_LTE_P_SinrResult tSinrRslt[ZPS_LTE_P_MAX_SINR_RESULT_NUM];
+ T_zPS_LTE_P_RssiResult tRssiRslt[ZPS_LTE_P_MAX_RSSI_RESULT_NUM];
+ T_zPS_LTE_P_MeasResult atResultList[ZPS_LTE_P_MAX_REPORT_CELL_PER_FREQ];
+ T_zPS_LTE_P_ScellMeasResult atScellResult[ZPS_LTE_P_MAX_SCELL_NUM];
+} T_zPS_LTE_P_IntraMeas_Ind;
+
+/*
+ÏòÐÒéÕ»Éϱ¨ÒìÆµÐ¡ÇøµÄ²âÁ¿½á¹û
+*/
+typedef struct
+{
+ WORD wFreqNum;
+ WORD wSpecFreqRltFg; //ȡֵΪ1ʱ±íʾ°üº¬ÁËÖ¸¶¨ÒìÆµÆµµãµÄ²âÁ¿½á¹û
+ T_zPS_LTE_P_FreqMeasResult atFreqResultList[ZPS_LTE_P_MAX_INTER_FREQ_NUM];
+} T_zPS_LTE_P_InterMeas_Ind;
+
+/*
+Í£Ö¹EPHYµÄNCELL²âÁ¿Éϱ¨£¬SCELLµÄ²âÁ¿ÈÔÈ»¼ÌÐøÉϱ¨¡£
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding0;
+} T_zPS_LTE_P_AbortMeas_Req;
+
+
+/*
+EPHYÉϱ¨µÄDRX״̬
+*/
+typedef struct
+{
+ /*
+ 1:drx is used£¬0: no drx is used
+ */
+ WORD wDrxState ;
+ WORD wPadding0;
+} T_zPS_LTE_P_DrxStateInd;
+
+/**************************************************************************
+ * Ð¡ÇøÑ¡Ôñ¡¢Ñ°ºôÏà¹Ø½Ó¿Ú *
+ **************************************************************************/
+#define ZPS_LTE_P_MAX_NUM_OF_BAND 32
+#define ZPS_LTE_P_MAX_NUM_OF_EARFCN_SCAN 64
+#define ZPS_LTE_P_MAX_NUM_OF_STORED_CELL 8
+#define ZPS_LTE_P_MAX_NUM_OF_CELL_SEARCH 8
+
+typedef struct
+{
+ WORD wPhyCellId;
+ /*
+ ¶ÔÓ¦Ð¡ÇøµÄRS½ÓÊܹ¦ÂʵÄÖµ, 0¡«97
+ */
+ WORD wRsrp;
+ WORD wRsrq;
+ WORD wPadding;
+} T_zPS_LTE_P_CellSearchResult;
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wRssi;
+ WORD wPadding;
+} T_zPS_LTE_P_FreqScanResult;
+
+typedef struct
+{
+ /*
+ ij¸öƵ¶ÎµÄÆðʼƵµã,
+ ȡֵ·¶Î§£º1830~2619¡²¶ÔÓ¦ÓÚTDDģʽ£¬²Î¼ûÐÒé36.101- Table 5.7.3-1¡³
+ */
+ DWORD dwStartEarfcn;
+ DWORD dwEndEarfcn;
+} T_zPS_LTE_P_FreqBand;
+
+ typedef struct
+{
+ WORD wMsgId;
+ WORD wBandNum;
+ WORD wProcId; /* Ôö¼Ó */
+ WORD wFreqScanType;
+ T_zPS_LTE_P_FreqBand atFreqBandList[ZPS_LTE_P_MAX_NUM_OF_BAND];
+} T_zPS_LTE_P_FreqScan_Req;
+
+typedef struct
+{
+ WORD wReportEarfcnNum;
+ WORD wProcId; /* Ôö¼Ó */
+ /*
+ ȡֵ·¶Î§£º1830~2619¡²¶ÔÓ¦ÓÚTDDģʽ£¬²Î¼ûÐÒé36.101- Table 5.7.3-1¡³
+ µÈͬÐÒé²ÎÊý£ºFDL = FDL_low + 0.1(NDL - NOffs-DL) ²Î¼ûÐÒé36.101-5.7.3
+ ²ÎÊýÓÃ;£º½«±¾´ÎƵµãɨÃ賬¹ýÃÅÏ޵ĸ÷Ƶµã£¬°´ÕÕRSSIÄÜÁ¿´Ó´óµ½Ð¡Ë³ÐòÅÅÁУ¬
+ ²¢×ª»¯ÎªÐÒé±ê×¼µÄFDLƵµãºÅÉϱ¨ÐÒéÕ»¡£
+ */
+ DWORD adwEarfcn[ZPS_LTE_P_MAX_NUM_OF_EARFCN_SCAN];
+} T_zPS_LTE_P_FreqScan_Cnf;
+
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ±êÊ¶Ð¡ÇøËÑË÷µÄÐÎʽºÍËÑË÷½á¹ûÉϱ¨µÄÐÎʽ
+ 1:Éϱ¨×îÇ¿Ð¡Çø£»2:Éϱ¨Ò»¸öÐ¡ÇøÁÐ±í£»3:´æ´¢Ð¡ÇøµÄËÑË÷£¬²ÉÓÃwPhyCellIdListÖÐÖ¸¶¨µÄÐ¡Çø
+ */
+ WORD wSearchType;
+ WORD wProcId;
+ WORD wIratFg; //1:-->2/3Gµ½4GµÄÖØÑ¡¡¢Öض¨Ïò³¡¾°Ö¸Ê¾
+ DWORD dwEarfcn;
+ /*
+ ´æ´¢Ð¡ÇøËÑË÷ʱ,Ö¸¶¨µÄÐ¡ÇøÁбí.½ö´æ´¢Ð¡ÇøËÑË÷ʱÓÐЧ
+ */
+ WORD wCellNum;
+ WORD wBlackCellListNum;
+ WORD awPhyCellIdList[ZPS_LTE_P_MAX_NUM_OF_STORED_CELL];
+ T_zPS_LTE_P_PhyCellIdRange atBlackCellList[ZPS_LTE_P_MAX_BLACK_CELL_PER_FREQ];
+} T_zPS_LTE_P_CellSearch_Req;
+
+/*
+EPHYÐ¡ÇøËÑË÷½á¹ûÉϱ¨
+*/
+typedef struct
+{
+ WORD wProcId;
+ WORD wCellNum;
+ DWORD dwEarfcn;
+ T_zPS_LTE_P_RssiResult tRssiRslt; /*¸ÃƵµãµÄRSSI£¬¹¤³ÌģʽɨƵÉϱ¨ÐèÇóÐÂÔö*/
+ T_zPS_LTE_P_CellSearchResult atCellSearchResultList[ZPS_LTE_P_MAX_NUM_OF_CELL_SEARCH];
+} T_zPS_LTE_P_CellSearch_Cnf;
+
+/*
+ÖÕÖ¹EPHYÕýÔÚ½øÐеÄÐ¡ÇøËÑË÷ÒÔ¼°ÆµµãɨÃè
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding0;
+} T_zPS_LTE_P_AbortCellSearch_Req;
+
+
+
+/*
+PSÄÚ²¿µÄÏûÏ¢£¬ÓÉPHYµÄ²Ù×÷À´´¥·¢
+ÏûÏ¢·½Ïò£ºHISR->ESIR
+*/
+typedef struct
+{
+ WORD wDataLen;
+ WORD wPadding;
+ PBYTE pbPchData;
+} T_zPS_LTE_P_PchData_Ind;
+
+
+/**************************************************************************
+ * ϵͳÏûÏ¢¶ÁÈ¡Ïà¹Ø½Ó¿Ú *
+ **************************************************************************/
+#define ZPS_LTE_P_MAX_NUM_OF_SI 10
+
+typedef struct
+{
+ /*
+ wSiPeriodicity: ȡֵ·¶Î§:
+ ȡֵ·¶Î§£º rf8, rf16, rf32, rf64, rf128, rf256, rf512 (ÎÞÏßÖ¡µ¥Î»)
+ µÈͬÐÒé²ÎÊý£ºsi-Periodicity£¬²Î¼û²Î¼ûTS36.331-5.2.3
+ ²ÎÊýÓÃ;£º±êʾÏàÓ¦SIBµÄ½ÓÊÕ´°¿Ú³öÏÖµÄÖØ¸´ÖÜÆÚ
+ */
+ WORD wSiPeriodicity;
+ /*
+ wSiIndex ȡֵ·¶Î§£º 1¡«32
+ µÈͬÐÒé²ÎÊý£º n£¬²Î¼û²Î¼ûTS36.331£5.2.3£¬ 6.2.2
+ ²ÎÊýÓÃ;£ºÎªSIÏûÏ¢¶ÔÓ¦µÄnÖµ£¬ÓÃÓÚ¼ÆËãÿ¸öSIBµÄ´°¿ÚÆðʼʱ¼äµã£¨²Î¼û36331-5.2.3ÐÒéÃèÊö£©£¬
+ ´ÓÏûÏ¢½á¹¹ÉÏ¿´£¬Ã¿¸öSIBµÄ´°¿Ú³¤¶ÈÊÇÏàͬµÄ£¬Ö»ÐèÒª¸ù¾ÝSIBµÄϱê¾Í¿ÉÒÔÍÆËã³öÿ¸ö´°¿ÚµÄÆðʼλÖá£
+ for the concerned SI message, determine the number n which corresponds to the order of entry
+ in the list of SI messages configured by schedulingInfoList in SystemInformationBlockType1;
+ 2> determine the integer value x = (n - 1)*w, where w is the si-WindowLength;
+ 2> the SI-window starts at the subframe #a, where a = x mod 10, in the radio frame for which
+ SFN mod T = FLOOR(x/10), where T is the si-Periodicity of the concerned SI message;
+ */
+ WORD wSiIndex;
+} T_zPS_LTE_P_SiSchedInfo;
+
+/*
+RRCÇëÇóEPHY¶ÁÈ¡SIB1(PHY¸ù¾ÝÐèÒª¶ÁÈ¡MIB)£¬
+×¢£ºÊÕµ½´ËÇëÇóºó£¬EPHYÁ¢¼´Í£Ö¹Ö®Ç°µÄϵͳÏûÏ¢µ÷¶È£¬²¢¿ªÊ¼¶ÁÈ¡SIB1¡£MIBµÄ¶ÁÈ¡ÓÉÎïÀí²ã×Ô¼ºÈ·¶¨¡£
+*/
+ typedef struct
+{
+ WORD wMsgId;
+ WORD wSiRequestForHO;
+ WORD wProcId;
+ /*
+ ÐèÒª¶ÁÈ¡SIµÄÎïÀíÐ¡ÇøID
+ */
+ WORD wPhyCellId;
+ DWORD dwEarfcn;
+ //WORD wPadding;
+} T_zPS_LTE_P_ReadSib1_Req;
+
+/*
+RRCÇëÇóEPHYÍ£Ö¹ËùÓÐϵͳÐÅÏ¢µÄ¶ÁÈ¡
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding1;
+} T_zPS_LTE_P_AbortSiRead_Req;
+
+/*
+ÇëÇóEPHY¸ù¾ÝÏ·¢µÄµ÷¶ÈÐÅÏ¢¶ÁÈ¡ÏàÓ¦µÄSI
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+ DWORD dwEarfcn;
+
+ WORD wSubFrameAssign;
+ WORD wSpecialSubFramePatterns;
+ WORD wReadMode;
+ WORD wPhyCellId;
+ /*
+ wSiWindowLen£ºÈ¡Öµ·¶Î§£ºms1, ms2, ms5, ms10, ms15, ms20, ms40 (ºÁÃ뵥λ),
+ ±íÕ÷ij¸öSI¿ÉÄÜ´æÔÚµÄʱ¼ä´°µÄ³¤¶È£¬Õâ¸öÕâ¸öʱ¼ä´°ÄÚµÄ×ÓÖ¡ÓпÉÄܳÐÔØSIÒ²¿ÉÄܲ»³ÐÔØSI£¬
+ UEÐèÒªÔÚ´°ÄÚ³ÖÐø¼ì²âÖ±µ½½â³öÕýÈ·µÄSIΪֹ£¬´°ÄڵijÐÔØSIµÄPDSCHÐèÒª²ÉÓÃHARQ¹ý³Ì£¬
+ µ«ÎÞÐèÏòÍøÂç²à·´À¡ACK/NACK¡£Ò»¸ö´°¿ÚÄÚ½ö½ö»á³ÐÔØ1¸öSIµÄÐÅÏ¢¡£
+ */
+ WORD wSiWindowLen;
+ /*
+ ָʾ±¾´ÎSIµ÷¶ÈÐèÒª¶ÁÈ¡µÄSI¸öÊý
+ */
+ WORD wSiSchedNum;
+ /*
+ ÿ¸öÄ¿±êSIµÄʱ¼ä·Ö²¼ÐÅÏ¢£¬ÓÃÓÚ¼ÆËãSIµÄ½ÓÊÕʱ¼ä´°
+ */
+ T_zPS_LTE_P_SiSchedInfo atSiSchedInfoList[ZPS_LTE_P_MAX_NUM_OF_SI];
+} T_zPS_LTE_P_SchedSi_Req;
+
+/*
+EPHY·´À¡¸øÐÒéÕ»µÄSIBÐÅÏ¢Êý¾Ý¸ñʽ
+*/
+typedef struct
+{
+ /*
+ wReadResultȡֵ·¶Î§£º0£ºÓÐЧϵͳÏûÏ¢£¬ 1£ºÔ¤Áô
+ ±êʾµ±Ç°bufferÖеÄÊý¾ÝÊÇ·ñΪSIBÊý¾Ý¡£¸Ã²ÎÊýÓпÉÄÜÀ©Õ¹ÎªCRCÐÅÏ¢£»
+ ĿǰÐÒéÕ»Ô¤ÆÚPHYÉϱ¨µÄÊý¾Ý×ÜÊÇCRC okµÄ£»Èç¹ûCRC fail Ôò²»ÒªÉϱ¨¡£
+ */
+ WORD wReadResult;
+ WORD wDlBandWidth;
+ WORD wProcId; /* Ôö¼Ó */
+ /*
+ ±êʾµ±Ç°bufferÖеÄSIBÊý¾Ý³¤¶È, 0¡«2Kbyte
+ */
+ WORD wDataLen;
+ PBYTE pbSiData;
+ T_zPS_LTE_P_SinrResult tSinrRslt; /*¸ÃÐ¡ÇøµÄSINR£¬¹¤³ÌģʽɨƵÉϱ¨ÐèÇóÐÂÔö*/
+} T_zPS_LTE_P_SiData_Ind;
+
+/*
+EPHY¶ÁÈ¡MIBʧ°ÜºóÉϱ¨´ËÏûÏ¢
+µ±PHYÊÕµ½¶ÁÈ¡SIB1µÄÇëÇóºó£¬×Ô¶¯Ñ¡Ôñ½øÐÐMIBµÄ¶ÁÈ¡£¬Èç¹û¶à´Î£û³õ²½Ô¼¶¨Îª3´Î£¬ ¼´Ô¼3*40ms£ý
+¶ÁÈ¡MIBʧ°Üºó£¬PHYÓ¦¸ÃÍ£Ö¹MIBµÄ¶ÁÈ¡³¢ÊÔ£¬Éϱ¨´íÎó¸øÐÒéÕ»£¬ÓÉÐÒéջѡÔñÆäËûÐ¡Çø½øÐг¢ÊÔ¡£
+*/
+typedef struct
+{
+ WORD wProcId;
+ WORD wPadding;
+} T_zPS_LTE_P_PbchReadFail_Ind;
+/**************************************************************************
+ * ÅäÖÃÏà¹Ø½Ó¿Ú *
+ **************************************************************************/
+#define ZPS_LTE_P_MAX_N1PAN_NUM 4
+#define ZPS_LTE_P_MAX_SRS_CFG_NUM 3
+#define ZPS_LTE_P_MAX_CSI_MEAS_SF_PATTERN_NUM 2
+#define ZPS_LTE_P_MAX_N3PAN_NUM 4
+#define ZPS_LTE_P_MAX_N1PANLIST_NUM 2
+
+typedef struct
+{
+ DWORD dwDlEarfcn;
+ DWORD dwUlEarfcn;
+ WORD wPhyCellId;
+ WORD wDlBandWidth;
+ WORD wUlBandWidth;
+ WORD wPadding;
+} T_zPS_LTE_P_PhyCellInfo;
+
+typedef struct
+{
+ /*
+ wPowerRampStep:
+ ȡֵ·¶Î§£ºdB0, dB2,dB4, dB6
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 powerRampingStep
+ ²ÎÊýÓÃ;£ºÉÏÐз¢ËÍpreamble¹¦Âʵ÷Õû²½³¤£¬ÓÃÓÚÖØ·¢preamble¹ý³ÌÖе÷Õû·¢É书ÂÊ
+ */
+ WORD wPowerRampStep;
+ /*
+ ȡֵ·¶Î§£º{dBm-120, dBm-118, dBm-116, dBm-114,dBm-112, dBm-110, dBm-108,
+ dBm-106, dBm-104, dBm-102, dBm-100, dBm-98, dBm-96, dBm-94, dBm-92, dBm-90}
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 preambleInitialReceivedTargetPower
+ ²ÎÊýÓÃ;£ºRRCÅäÖÃÏÂÀ´µÄ³õʼpreamble¹¦ÂÊ£¬ÓÃÓÚ¼ÆËãpreamble·¢É书ÂÊ
+ */
+ WORD wPreamInitialRecvTargetPower;
+ /*
+ ȡֵ·¶Î§£º{n3, n4, n5, n6, n7, n8, n10, n20, n50, n100, n200}
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 preambleTransMax
+ ²ÎÊýÓÃ;£ºpreamble×î´óÖØ´«´ÎÊý£¬ÖØ´«´ÎÊý³¬¹ý´ËÊýÖµÔòÐèÒªÉϱ¨´íÎó£¬ÖØÐ·¢ÆðËæ»ú½ÓÈë¹ý³Ì¡£
+ */
+ WORD wPreamTransMax;
+ /*
+ ȡֵ·¶Î§£º{ sf2, sf3, sf4, sf5, sf6, sf7, sf8, sf10}
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 ra-ResponseWindowSize
+ ²ÎÊýÓÃ;£º¼ì²âRARÐÅϢʱ¼ä´°³¤¶È¡£ÓÃÓÚ·¢ËÍpreambleºóÔÚÖ¸¶¨µÄʱ¼äÄÚ¼ì²âÊÇ·ñÓжÔÓ¦µÄRARÐÅÏ¢£¬
+ ²¢ÅжϽÓÊÕ·¢ËÍpreamble¹ý³Ì£¨msg1£©ÊÇ·ñ³É¹¦£¬³¬¹ý´Ë¶Îʱ¼äÒÀ¾ÉûÓÐÏàÓ¦µÄRARÐÅÏ¢£¬ÔòÅжϷ¢ËÍpreamble¹ý³Ìʧ°Ü¡£
+ ÐèÖØÐ·¢ËÍ¡£
+ */
+ WORD wRaResponseWinSize;
+ /*
+ ȡֵ·¶Î§£ºINTEGER 1~8
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 maxHARQ-Msg3Tx.
+ ²ÎÊýÓÃ;£º¾ºÕù½â¾öÖз¢ËÍmsg3ʱ£¬µ÷ÓÃHARQ¹ý³Ì×î´óÖØ´«´ÎÊý¡£
+ */
+ WORD wMaxHarqMsg3Tx;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..837)
+ µÈͬÐÒé²ÎÊý£º211.5.7.2 RACH_ROOT_SEQUENCE£¨Logical root sequence number£©
+ ²ÎÊýÓÃ;£ºZCÐòÁÐÁãÏà¹ØÇøÓòÂß¼¸ùÖµ¡£ÓÃÓÚ²éÕÒÎïÀí¸ùÖµ£¬×÷ΪÆäÖÐÒ»¸ö²ÎÊý£¬¼ÆËãµ±Ç°Ð¡Çø²úÉúµÄpreambleÐòÁС£
+ */
+ WORD wRootSeqIdx;
+ /*
+ ȡֵ·¶Î§£ºINTEGER 0~63
+ µÈͬÐÒé²ÎÊý£º211.5.7.1 prach-ConfigurationIndex
+ ²ÎÊýÓÃ;£ºÐÒéջָʾµ±Ç°PHY¿ÉÓõÄprach resource¡£ÓÃÓÚ×ÊÔ´Ñ¡Ôñ£¬ÒÔ¼°»ñÈ¡preambleµ±Ç°ËùÓøñʽ¡£
+ */
+ WORD wPrachConfigIdx;
+ /*
+ ȡֵ·¶Î§£º1Ϊ¸ßËÙָʾ£¨ÏÞÖÆÐ¡Çø£©£¬0Ϊ·Ç¸ßËÙ£¨·ÇÏÞÖÆÐ¡Çø£©
+ µÈͬÐÒé²ÎÊý£º211.5.7.2 High-speed-flag
+ ²ÎÊýÓÃ;£º±êÖ¾µ±Ç°Ð¡ÇøÀàÐÍ£¨¸ßËÙÐ¡Çø»¹ÊǷǸßËÙÐ¡Çø£©¡£
+ */
+ WORD wHighSpeedFlag;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..15)
+ µÈͬÐÒé²ÎÊý£º211.5.7.2 NCS configuration
+ ²ÎÊýÓÃ;£ºÐòÁÐÉú³ÉÖеÄÑ»·ÒÆÎ»±í¸ñË÷Òý¡£²éѯµ±Ç°Ð¡ÇøÐòÁÐÉú³ÉËùÓõÄÑ»·ÒÆÎ»Öµ£¬ÓÃÓÚÉú³ÉpreambleÐòÁС£
+ */
+ WORD wZeroCorrelZoneConfig;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..94)
+ µÈͬÐÒé²ÎÊý£º211.5.7.1 prach-FrequencyOffset£¬
+ ²ÎÊýÓÃ;£ºprach resourceÔÚOFDM·ûºÅÉÏÆµÓòÉÏµÄÆ«ÒÆÖµ¡£ÓÃÓÚ¼ÆËãprach resourceµÚÒ»¸öÎïÀí×ÊÔ´¿éÆðʼλÖà £¬
+ */
+ WORD wPrachFreqOffset;
+
+ /*
+ ȡֵ·¶Î§£º4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºËæ»ú½ÓÈëǰµ¼¸öÊý
+ */
+ WORD wNumOfRAPreambles;
+ /*
+ ȡֵ·¶Î§£º4, 8, 12, 16 ,20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºËæ»ú½ÓÈëǰµ¼×éAµÄ¸öÊý
+ */
+ WORD wSizeOfRAPinGroupA;
+ /*
+ ȡֵ·¶Î§£º56¡¢144¡¢208¡¢256
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºËæ»úǰµ¼×éAµÄÏûÏ¢³¤¶È
+ */
+ WORD wMsgSizeGroupA;
+
+
+ /*
+ ȡֵ·¶Î§£ºÈ¡ÖµÎª0µ½7£¬·Ö±ð¶ÔÓ¦minusinfinity, dB0, dB5, dB8, dB10, dB12, dB15, dB18£¬µ¥Î»ÊÇdB
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºÓÃÓÚ½øÐÐǰµ¼Ñ¡Ôñ
+ */
+ WORD wPwrOffsetGroupB;
+ /*
+ ȡֵ·¶Î§£º {sf8, sf16, sf24, sf32, sf40, sf48, sf56, sf64}
+ µÈͬÐÒé²ÎÊý£º321.5.1.1 mac-ContentionResolutionTimer
+ ²ÎÊýÓÃ;£º¾ºÕùËæ»ú½ÓÈë¹ý³ÌÖмì²âmsg4ʱ¼ä´°¿Ú´óС¡£
+ ÓÃÓÚÔÚ·¢ËÍmsg3ºó¿ªÊ¼µÄmsg4¼ì²â£¬Ã¿´ÎÖØ·¢msg3£¬ÐèÒªÖØÐÂÆô¶¯´Ë¼ÆÊ±Æ÷¡£
+ */
+ WORD wConResoTimer;
+ WORD wPadding;
+} T_zPS_LTE_P_PhyRaConfig;
+
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º 1~4
+ ²ÎÊýÓÃ;£ºÒ»¸öʱ϶ÄÚPRBËùÕ¼×Ó´ø¸öÊý£¬ÓÃÓÚ¼ÆËãPUSCHµÄʱƵ×ÊԴλÖá£
+ */
+ WORD wNsb;
+ /*
+ ȡֵ·¶Î§£º 0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ¡£
+ ²ÎÊýÓÃ;£ºÌøÆµÄ£Ê½£º0Ϊ×ÓÖ¡¼ä£¬1Ϊ×ÓÖ¡ÄÚºÍ×ÓÖ¡¼ä£¬ÓÃÓÚ¼ÆËãPUSCHµÄʱƵ×ÊԴλÖá£
+ */
+ WORD wHoppingMode;
+ /*
+ ȡֵ·¶Î§£º 0~98 £¨TS331-860/850¸Ã·¶Î§Îª0~98£©
+ µÈͬÐÒé²ÎÊý£º ¡£
+ ²ÎÊýÓÃ;£ºÌøÆµÆ«ÒÆ£¬ÒÔRBΪµ¥Î»£¬ÓÃÓÚ¼ÆËãPUSCHµÄʱƵ×ÊԴλÖá£
+ */
+ WORD wPuschHoppingOffset;
+ /*
+ ȡֵ·¶Î§£º 0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ¡£
+ ²ÎÊýÓÃ;£ºPUSCH 64QAMµ÷ÖÆÊ¹ÄܱêÖ¾£¬1ΪENABLE£¬0ΪDISABLE¡£
+ */
+ WORD wEnable64Qam;
+ /*
+ ȡֵ·¶Î§£º 0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ¡£
+ ²ÎÊýÓÃ;£º²Î¿¼ÐźŵÄÐòÁÐ×éÌø±ä£¨Sequence-group hopping£©Ê¹ÄܱêÖ¾£¬
+ 1ΪENABLE£¬0ΪDISABLE£¬ÓÃÓÚ¼ÆËãPUSCHºÍPUCCH²Î¿¼ÐźÅÐòÁС£
+ */
+ WORD wGroupHoppingEnable;
+ /*
+ ȡֵ·¶Î§£º 0 ~ 29
+ µÈͬÐÒé²ÎÊý£º¦¤SS¡£
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãPUSCH²Î¿¼ÐźŵÄÐòÁÐÒÆÎ»Í¼Ñù £¬¼Ì¶øµÃµ½Ê±Ï¶ µÄ²Î¿¼ÐźŵĻùÐòÁÐ×éÐòºÅ ¡£
+ PUSCHµÄÐòÁÐÒÆÎ»Í¼ÑùÊÇÔÚPUCCHµÄÐòÁÐÒÆÎ»Í¼Ñù ÉÏ¼ÓÆ«ÒƦ¤SS£¬²Î¼ûÐÒé36.211-870£¬µÚ5.5.1.3½Ú¡£
+ */
+ WORD wGroupAssignPusch;
+ /*
+ ȡֵ·¶Î§£º 0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ¡£
+ ²ÎÊýÓÃ;£º²Î¿¼ÐźŵÄÐòÁÐÌø±ä£¨sequence hopping£©Ê¹ÄܱêÖ¾£¬
+ 1ΪENABLE£¬0ΪDISABLE£¬ÓÃÓÚ¼ÆËãʱ϶ µÄ»ùÐòÁÐ×éÖеĻùÐòÁÐÐòºÅ ¡£²Î¼ûÐÒé36.211-870£¬µÚ5.5.1.4½Ú.
+ */
+ WORD wSeqHoppingEnable;
+ /*
+ ȡֵ·¶Î§£º0~7
+ µÈͬÐÒé²ÎÊý£ºÎÞ¡£
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËã²Î¿¼Ðźš£²Î¼ûÐÒé36.211-870£¬µÚ5.5.2.1.1½Ú¡£
+ */
+ WORD wCyclicShift;
+} T_zPS_LTE_P_PuschConfigComm;
+
+/*
+PUSCHÐŵÀרÓÃÅäÖòÎÊýÐÅÏ¢£¬ÓÃÓÚACK/RI/CQIµÄ±àÂëËÙÂÊÆ¥Åä¡£¿É²Î¼ûÐÒé36.212-870£¬µÚ5.5.2.6½Ú¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º 0~15
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£º²Î¼ûÐÒé36.213-870£¬µÚ8.6.3½Ú¡£
+ */
+ WORD wBetaOffsetAckIndex;
+ /*
+ ȡֵ·¶Î§£º 0~15
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£º²Î¼ûÐÒé36.213-870£¬µÚ8.6.3½Ú¡£
+ */
+ WORD wBetaOffsetRiIndex;
+ /*
+ ȡֵ·¶Î§£º 0~15
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£º²Î¼ûÐÒé36.213-870£¬µÚ8.6.3½Ú¡£
+ */
+ WORD wBetaOffsetCqiIndex;
+ WORD wPadding;
+ WORD wBetaOffsetMcFlag;
+ WORD wBetaOffsetAckIndexMc;
+
+ WORD wBetaOffsetRiIndexMc;
+ WORD wBetaOffsetCqiIndexMc;
+
+ WORD wGroupHoppingDisabledFlag;
+ WORD wDmrsWithOccActivatedFlag;
+} T_zPS_LTE_P_PuschConfigDedi;
+
+/*
+PUCCHÐŵÀ¹«¹²ÅäÖòÎÊý£¬¿É½áºÏÏÂÐÐPDCCHʹÓõÄÎïÀí×ÊÔ´ÐÅÏ¢½øÐÐPUCCHÐŵÀ·ûºÅÊý¾ÝÉú³É¼°ÎïÀí×ÊÔ´Ó³É䣬
+¿É²Î¼û36.211-870£¬µÚ5.4½Ú¼°36.213-870£¬µÚ10.1½Ú¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º 1£¬2£¬3
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºÓÃÓÚPUCCH¡¡format 1,1a,1bµÄ²ÎÊýcyclic shift ¼°·¢ËÍ×ÊÔ´ µÄ¼ÆË㣬Ïêϸ²Î¼û36.211ÐÒéµÄ5.4½Ú¡£
+ */
+ WORD wDeltPucchShift;
+ /*
+ ȡֵ·¶Î§£º0~98
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£º±íʾPUCCH format 2,2a,2b¸ñʽÏ£¬Ð¡ÇøPUCCHÐŵÀÕ¼ÓõÄPRBÊýÄ¿£¬¶ÔÓÚUEÕâ¸ö²ÎÊýÓÃÓÚ¼ÆËãcyclic shift £¬
+ Ïêϸ²Î¼û36.211ÐÒéµÄ5.4.2½Ú¡£
+ */
+ WORD wNrbCqi;
+
+ WORD wNcsAn;
+ WORD wN1PucchAn;
+} T_zPS_LTE_P_PucchConfigComm;
+
+typedef struct
+{
+ WORD wN3PucchAnListNum;
+ WORD wTwoAntennaPortActivatedPucchFormat3Tpye;
+
+ WORD wN3PucchAnList[ZPS_LTE_P_MAX_N3PAN_NUM];
+
+ WORD wN3PucchAnListP1Num;
+ WORD wPadding1;
+
+ WORD wN3PucchAnListP1[ZPS_LTE_P_MAX_N3PAN_NUM];
+} T_zPS_LTE_P_PucchFormat3;
+
+typedef struct
+{
+ WORD wNum;
+ WORD wPadding;
+ WORD wList[ZPS_LTE_P_MAX_N1PAN_NUM];
+} T_zPS_LTE_P_N1PucchAnCs;
+
+typedef struct
+{
+ WORD wN1PucchAnCsTpye;
+ WORD wN1PucchAnCsListNum;
+ T_zPS_LTE_P_N1PucchAnCs tN1PucchAnCsList[ZPS_LTE_P_MAX_N1PANLIST_NUM];
+}T_zPS_LTE_P_PucchChnlSele;
+
+typedef struct
+{
+ WORD wAckNackRepetitionInd;
+ WORD wRepetitionFactor;
+ WORD wN1PucchAnRep;
+ WORD wTddAckNackFeedbackMode;
+ WORD wPucchFormatFlag;
+ WORD wPadding1;
+
+ T_zPS_LTE_P_PucchFormat3 tPucchFormat3;
+ T_zPS_LTE_P_PucchChnlSele tPucchChnlSele;
+
+ WORD wTwoAntennaPortActivatedFormat1a1bFlag;
+ WORD wN1PucchAnRepP1Flag;
+ WORD wN1PucchAnRepP1;
+ WORD wSimultaneousPucchPuschFlag;
+ WORD wN1PucchAnCsListP1Num;//0±íʾ¹Ø±Õ¹¦ÄÜtxDiv-PUCCH1b-ChSelect-r11
+ WORD wPadding2;
+ WORD awN1PucchAnCsListP1[ZPS_LTE_P_MAX_N1PUCCH_AN_CSLISTP1_NUM];//Ó¦¸Ã¼Ó¸öºê
+} T_zPS_LTE_P_PucchConfigDedi;
+
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0,1
+ µÈͬÐÒé²ÎÊý£º¿ØÖÆÓòÎÊý£¬ÐÒéÉÏûÓд˲ÎÊý¡£
+ ²ÎÊýÓÃ;£º1Ϊsetup£¬¾ÍÊÇÅäÖÃSRS×ÊÔ´£» 0Ϊrelease£¬¾ÍÊÇÒªÊͷŵ±Ç°µÄSRS×ÊÔ´£¨ºóÃæµÄ²ÎÊý¾ÍÊÇÎÞЧֵÁË£©£¬
+ ÊÍ·Å×ÊÔ´ºó£¬PHY²»ÐèÒª·´À¡¸øÐÒéÕ»ÊÍ·ÅÍê³ÉµÄÏûÏ¢
+ */
+
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º0,1,2,3,4,5,6,7
+ µÈͬÐÒé²ÎÊý£ºCsrs
+ ²ÎÊýÓÃ;£º¸ù¾Ý²ÎÊýCsrs£¬ BsrsºÍÉÏÐдø¿íN(UL,RB) ²é±í¿ÉÈ·¶¨SRSƵÓòÆðʼλÖúʹø¿íµÄ¼ÆËã²ÎÊýmsrsºÍNb ¡£
+ Ïêϸ²Î¼û36.211ÐÒéµÄ5.5.3.2½Ú¡£
+ */
+ WORD wSrsBandWidthConfig;
+ /*
+ ȡֵ·¶Î§£º0~15
+ µÈͬÐÒé²ÎÊý£ºsrsSubframeConfiguration
+ ²ÎÊýÓÃ;£º´Ë²ÎÊýΪcell specific subframe configuration¡¡Ë÷Òý£¬¸ù¾Ý´ËË÷Òý²é36.211ÐÒéµÄ±í5.5.3.3-2£¬
+ ¿ÉµÃ²ÎÊýT_SFCºÍ ¦¤SFC£¬ ÓÃÓÚÈ·¶¨CELLÔÚÄÄЩ×ÓÖ¡½ÓÊÕUEµÄSRS¡£Ïêϸ²Î¼û36.211ÐÒéµÄ5.5.3.3½Ú¡£
+ */
+ WORD wSrsSubFrameConfig;
+ /*
+ ȡֵ·¶Î§1£ºÔÊÐíÔÚͬһ×ÓÖ¡´«ÊäACK/NACKºÍSRS£¬0£º²»ÔÊÐí
+ µÈͬÐÒé²ÎÊý£ºSimultaneous-AN-and-SRS
+ ²ÎÊýÓÃ;£ºÔÚÉÏÐз¢ËÍPUCCHÇé¿öÏ£¬ÓÃÓÚÈ·¶¨ACK/NACKºÍSRSÊÇ·ñ¿ÉÔÚͬһ×ÓÖ¡·¢ËÍ
+ */
+ WORD wAckNackSrsSimulTrans;
+ /*
+ ȡֵ·¶Î§£º0,1
+ µÈͬÐÒé²ÎÊý£ºsrsMaxUpPts
+ ²ÎÊýÓÃ;£º¶ÔÓÚUpPTS£¬µ±²ÎÊýΪ1ʱ£¬Ê¹ÄÜ µÄÖØÅ䣬µ±²ÎÊýΪ0ʱ£¬½ûÖ¹ ÖØÅä¡£
+ Ïêϸ²Î¼û36.211ÐÒéµÄ5.5.3.2¡£
+ */
+ WORD wSrsMaxUpPts;
+ WORD wPadding;
+} T_zPS_LTE_P_SrsUlConfigComm;
+
+/*
+SRSרÓÃÅäÖòÎÊýÐÅÏ¢£¬°üÀ¨UEÌØ¶¨µÄʱƵ²ÎÊý¼°ÓÃÓÚSRS·ûºÅÉú³ÉµÄ²ÎÊýµÈ¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0,1
+ µÈͬÐÒé²ÎÊý£º¿ØÖÆÓòÎÊý£¬ÐÒéÉÏûÓд˲ÎÊý¡£
+ ²ÎÊýÓÃ;£º1Ϊsetup£¬¾ÍÊÇÅäÖÃSRS×ÊÔ´£» 0Ϊrelease£¬¾ÍÊÇÒªÊͷŵ±Ç°µÄSRS×ÊÔ´£¨ºóÃæµÄ²ÎÊý¾ÍÊÇÎÞЧֵÁË£©£¬
+ ÊÍ·Å×ÊÔ´ºó£¬PHY²»ÐèÒª·´À¡¸øÐÒéÕ»ÊÍ·ÅÍê³ÉµÄÏûÏ¢
+ */
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º0,1,2,3
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£º¸ù¾Ý²ÎÊýCsrs£¬B_SRS ºÍÉÏÐдø¿íN(UL,RB) ²é±í¿ÉÈ·¶¨SRSƵÓòÆðʼλÖúʹø¿íµÄ¼ÆËã²ÎÊým(SRS,b) ºÍNb ¡£
+ Ïêϸ²Î¼û36.211ÐÒéµÄ5.5.3.2½Ú¡£
+ */
+ WORD wSrsBandWidthConfig;
+ /*
+ ȡֵ·¶Î§£º 0,1,2,3
+ µÈͬÐÒé²ÎÊý£ºsrs-HoppingBandwidth¡¡
+ ²ÎÊýÓÃ;£ºB_SRS ºÍ b_hopÒ»ÆðÈ·¶¨SRSÊÇ·ñÐèÒªÌøÆµ¡£ÏêϸÃèÊö²Î¼û36.211ÐÒéµÄ5.5.3.2½Ú¡£
+ */
+ WORD wSrsHoppingBandWidth;
+ /*
+ ȡֵ·¶Î§£º0~23
+ µÈͬÐÒé²ÎÊý£ºfreqDomainPosition
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãSRSµÄƵÓòÆðʼλÖã¬ÏêϸÃèÊö²Î¼û36.211ÐÒéµÄ5.5.3.2½Ú¡£
+ */
+ WORD wFreqDomainPos;
+ /*
+ ȡֵ·¶Î§£º0 ,1
+ µÈͬÐÒé²ÎÊý£ºDuration
+ ²ÎÊýÓÃ;£ºÐÒéÕ»Óô˲ÎÊýÅäÖÃUEµÄSRSÊǵ¥´Î·¢ËÍ£¬»¹ÊÇÖÜÆÚ·¢ËÍ£¬0-µ¥´Î·¢ËÍ£»1-ÖÜÆÚ·¢ËÍ¡£
+ */
+ WORD wDuration;
+ /*
+ ȡֵ·¶Î§£º0~1023
+ µÈͬÐÒé²ÎÊý£º Isrs
+ ²ÎÊýÓÃ;£ºÀûÓô˲ÎÊý£¬²é36.213ÐÒéµÄ±í8.2-1£¬¿ÉµÃ²ÎÊýTsrsºÍToffset£¬
+ ÔÙÀûÓÃTsrsºÍToffset¿É¼ÆËã³öUEÐèÒª·¢ËÍSRSµÄ×ÓÖ¡ºÅ¡£
+ */
+ WORD wSrsConfigIndex;
+ /*
+ ȡֵ·¶Î§£º0~1
+ µÈͬÐÒé²ÎÊý£ºtransmissionComb¡¡ Ktc
+ ²ÎÊýÓÃ;£º´Ë²ÎÊýÓÃÓÚ¼ÆËãSRSƵÓòÆðʼλÖã¬ÏêϸÃèÊö²Î¼û36.211ÐÒéµÄ5.5.3.2½Ú¡£
+ */
+ WORD wTransComb;
+ /*
+ ȡֵ·¶Î§£º0~7
+ µÈͬÐÒé²ÎÊý£º n(cs,SRS)
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãSRSµÄcyclic shift £¬ÏêϸÃèÊö¼û36.211ÐÒéµÄ5.5.3.1½Ú¡£
+ */
+ WORD wCyclicShift;
+ WORD wSrsAntennaPort;
+ WORD wPadding1;
+} T_zPS_LTE_P_SrsUlConfigDedi;
+
+/*
+ÉÏÐй¦ÂÊ¿ØÖÆÏà¹ØµÄ¹«¹²ÅäÖòÎÊý£¬º¸ÇÁËËùÓÐÉÏÐÐÐŵÀ¼°SRS£¬Ö÷Òª°üÀ¨Ð¡ÇøÌض¨µÄ¿ª»·¹¦¿Ø³õÖµ£¬
+PUCCHÖв»Í¬formatÏà¶Ôformat1aµÄdeltaÖµ¼°Â·Ëð²¹³¥ÏµÊýµÈ²ÎÊý¡£
+*/
+typedef struct
+{
+ /* ȡֵ·¶Î§£ºÕæÊµÖµ·¶Î§[-126,24] dBm
+ PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+126£¬²ÎÊý·¶Î§£º[0£¬150]
+ */
+ WORD wP0NominalPusch;
+ /*
+ ȡֵ·¶Î§£ºÕæÊµÖµÎª£º{0, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1}
+ PSÏ·¢µÄ²ÎÊýÖµ=ÕæÊµÖµ*10£¬ ²ÎÊý·¶Î§£º[0£¬4£¬5£¬6£¬7£¬8£¬9£¬10]
+ */
+ WORD wAlpha;
+ /*
+ ÕæÊµÖµÎª[-127£¬-96], PSÏ·¢µÄ²ÎÊýÖµÎªÕæÊµÖµÈ¡·´
+ */
+ WORD wP0NominalPucch;
+ /*
+ ȡֵ·¶Î§£º0£ºdeltaF-2; 1£ºdeltaF0; 2£ºdeltaF2; 0xFF£ºÎÞЧ
+ deltaF-2 ´ú±í -2db£¬ deltaF0 ´ú±í0db£¬ ÒÔ´ËÀàÍÆ
+ */
+ WORD wDeltaFPucchFormat1;
+ /*
+ ȡֵ·¶Î§£º0£ºdeltaF1; 1£ºdeltaF3; 2£ºdeltaF5; 0xFF£ºÎÞЧ
+ */
+ WORD wDeltaFPucchFormat1b;
+ /*
+ ȡֵ·¶Î§£º0£ºdeltaF-2; 1£ºdeltaF0; 2£ºdeltaF1; 3£ºdeltaF2
+ */
+ WORD wDeltaFPucchFormat2;
+ /*
+ ȡֵ·¶Î§£º0£ºdeltaF-2; 1£ºdeltaF0; 2£ºdeltaF2; 0xFF£ºÎÞЧ
+ */
+ WORD wDeltaFPucchFormat2a;
+ /*
+ ȡֵ·¶Î§£º0£ºdeltaF-2; 1£ºdeltaF0; 2£ºdeltaF2; 0xFF£ºÎÞЧ
+ */
+ WORD wDeltaFPucchFormat2b;
+ /*
+ ȡֵ·¶Î§£º[-1~6] PSÏ·¢µÄ²ÎÊýÖµ=ÕæÊµÖµ+1£¬²ÎÊý·¶Î§£º[0~7]
+ */
+ WORD wDeltaPreamMsg3;
+ WORD wDeltaFPucchFormat31bCSFg;
+ WORD wDeltaFPucchFormat3;
+ WORD wDeltaFPucchFormat1bCS;
+} T_zPS_LTE_P_UlPowerCtrlComm;
+
+/*
+ÉÏÐй¦ÂÊ¿ØÖÆÏà¹ØµÄרÓÃÅäÖòÎÊý£¬º¸ÇÁËËùÓÐÉÏÐÐÐŵÀ¼°SRS£¬Ö÷Òª°üÀ¨UEÌØ¶¨µÄ¿ª»·¹¦¿Ø³õÖµ£¬
+ÊÇ·ñ½øÐÐMCSÏà¹ØµÄ¹¦Âʵ÷ÖÆ£¬ÊÇ·ñ²ÉÓÃÀÛ¼ÓµÄTPC commandµ÷ÕûµÈÐÅÏ¢¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º[-126,24]
+ PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+126£¬²ÎÊý·¶Î§£º[0£¬150]
+ */
+ WORD wP0UePusch;
+ /*
+ ȡֵ·¶Î§£º
+ 0 corresponds to value 0 corresponding to state "disabled".
+ 1 corresponds to value 1.25 corresponding to "enabled".
+ */
+ WORD wDeltaMcsEnabled;
+ /*
+ ȡֵ·¶Î§£º1£ºEnable; 0:Disable
+ */
+ WORD wAccumulationEnabled;
+ /*
+ ȡֵ·¶Î§£º[-8£¬7]
+ PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+8£¬²ÎÊý·¶Î§£º[0£¬15]
+ */
+ WORD wP0UePucch;
+ /*
+ ȡֵ·¶Î§£º0~15
+ For Ks=1.25, the actual parameter value is pSRS-Offset value - 3.
+ For Ks=0, the actual parameter value is -10.5 + 1.5*pSRS-Offset value. See TS 36.213 [23, 5.1.3.1].
+ */
+ WORD wPsrsOffset;
+ /*
+ ȡֵ·¶Î§£ºfc0, fc1, fc2, fc3, fc4, fc5, fc6, fc7, fc8, fc9, fc11, fc13, fc15, fc17, fc19¡£È¡Öµ0xFFʱΪÎÞЧֵ
+ See TS 36.331 [5.5.3.2] fc0 ´ú±í k =0£¬fc1 ´ú±í k =1
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÓÃ×÷RSRP²âÁ¿Ê±µÄÂ˲¨Æ÷ϵÊý£¬ÓÃ×÷¼ÆËãPL
+ */
+ WORD wFilterCoefficient;
+ WORD wDeltaTxDOffsetListPucchCtrlFlag;
+ WORD wDeltaTxDOffsetListPucchFormat1;
+
+ WORD wDeltaTxDOffsetListPucchFormat1a1b;
+ WORD wDeltaTxDOffsetListPucchFormat22a2b;
+ WORD wDeltaTxDOffsetListPucchFormat3;
+ WORD wPsrsOffsetApCtrlFlag;
+
+ WORD wPsrsOffsetAp;
+ WORD wPadding1;
+} T_zPS_LTE_P_UlPowerCtrlDedi;
+
+/*
+ÏÂÐÐSPSÅäÖÃÐÅÏ¢£¬¸ù¾Ý´ËÅäÖýøÐÐÏÂÐÐSPSµ÷¶È¡£
+²Î¼û36.321.850µÄ5.10.1½Ú¡¢36.331.850µÄ6.3.2½ÚµÄSPS-Config¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºSPS½¨Á¢»òÕßÊͷŵÄÃüÁîָʾ
+ */
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º[1£¬8]
+ µÈͬÐÒé²ÎÊý£ºnumberOfConfSPS-Processes
+ ²ÎÊýÓÃ;£ºSPS½ø³ÌÊýÁ¿
+ */
+ WORD wSpsProcessNum;
+ /*
+ ȡֵ·¶Î§£ºsf10, sf20, sf32, sf40, sf64, sf80, sf128, sf160, sf320, sf640£¬È¡ÖµÎª0xFFFFʱΪÎÞЧ
+ µÈͬÐÒé²ÎÊý£ºsemiPersistSchedIntervalDL
+ ²ÎÊýÓÃ;£ºÏÂÐÐSPSµ÷¶È¼ä¸ô
+ */
+ WORD wSpsIntervalDl;
+ /*
+ ȡֵ·¶Î§£º[1£¬4]
+ µÈͬÐÒé²ÎÊý£ºn1-PUCCH-AN-PersistentList
+ ²ÎÊýÓÃ;£ºÏÂÐÐSPSµÄHARQ·´À¡×ÊÔ´ÁбíÖеÄ×ÊÔ´ÊýÁ¿£¬Óɸ߲ãÅäÖ㬹²ÓÐ4¸ö·´À¡×ÊÔ´¡£
+ ¾ßÌåʹÓÃÄĸöÓÉSPS DCIÖеÄTPCÓòָʾ¡£²Î¼û36.213.860µÄ9.2½Ú¡£
+ */
+ WORD wN1PAPNum;
+ /*
+ ȡֵ·¶Î§£º[0~2047]
+ µÈͬÐÒé²ÎÊý£ºn1-PUCCH-AN-PersistentList
+ ²ÎÊýÓÃ;£ºÏÂÐÐSPSµÄHARQ·´À¡×ÊÔ´ÁÐ±í£¬Óɸ߲ãÅäÖᣲμû36.213.860µÄ9.2½Ú¡£
+ */
+ WORD awN1PucchAnPersistentList[ZPS_LTE_P_MAX_N1PAN_NUM];
+ WORD wTwoAntennaPortActivatedCtrlFlag;
+ WORD wN1PAPNumP1;
+ WORD awN1PucchAnPersistentP1List[ZPS_LTE_P_MAX_N1PAN_NUM];
+} T_zPS_LTE_P_SpsConfigDl;
+
+/*
+ÉÏÐÐSPSÅäÖÃÐÅÏ¢£¬¸ù¾Ý´ËÅäÖýøÐÐÉÏÐÐSPSµ÷¶È¡£
+²Î¼û36.321.850µÄ5.10.2½Ú¡¢36.331.850µÄ6.3.2½ÚµÄSPS-Config¡£
+*/
+typedef struct
+{
+ /*
+ wCtrlFlag: 1Ϊsetup, 0Ϊrelease
+ ȡֵ·¶Î§£º0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºSPS½¨Á¢»òÕßÊͷŵÄÃüÁîָʾ
+ */
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º2£¬3£¬4£¬8
+ µÈͬÐÒé²ÎÊý£ºsemiPersistSchedIntervalUL
+ ²ÎÊýÓÃ;£ºUEÔÚÖ¸¶¨´ÎÊýµÄ¿Õ´«Êý¾ÝºóÒþʽÊÍ·ÅSPSÅäÖÃ
+ */
+ WORD wImplicitReleaseAfter;
+ /*
+ ȡֵ·¶Î§£ºsf10, sf20, sf32, sf40, sf64, sf80, sf128, sf160, sf320, sf640£¬È¡ÖµÎª0xFFFFʱΪÎÞЧ
+ µÈͬÐÒé²ÎÊý£ºsemiPersistSchedIntervalUL
+ ²ÎÊýÓÃ;£ºÉÏÐÐSPSµ÷¶È¼ä¸ô
+ */
+ WORD wSpsIntervalUl;
+ /*
+ ȡֵ·¶Î§£ºÕæÊµÖµ·¶Î§£º[-126£¬24]£¬×¢£ºPSÏ·¢µÄ²ÎÊýÖµÎªÕæÊµÖµ+126¡£²ÎÊýȡֵ·¶Î§[0£¬150]
+ µÈͬÐÒé²ÎÊý£ºp0-NominalPUSCH-Persistent£¨36.331£©£¬P0,NOMINAL_PUSCH (0)£¨36.213£©
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãPUSCH·¢Ë͹¦ÂÊ£¬²Î¼û36.213µÄ5.1.1.1½Ú¡£
+ */
+ WORD wP0NominalPuschPersistent;
+ /*
+ ȡֵ·¶Î§£ºÕæÊµÖµ·¶Î§£º[-8£¬7]dB£¬×¢£ºPSÏ·¢µÄ²ÎÊýÖµÎªÕæÊµÖµ+8¡£²ÎÊýȡֵ·¶Î§[0£¬15]
+ µÈͬÐÒé²ÎÊý£ºp0-UE-PUSCH-Persistent£¨36¡£331£©£¬P0,UE; PUSCH (0) £¨36.213£©
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãPUSCH·¢Ë͹¦ÂÊ£¬²Î¼û36.213µÄ5.1.1.1½Ú¡£
+ */
+ WORD wP0UePuschPersistent;
+ /*
+ ȡֵ·¶Î§£º0£¬1
+ µÈͬÐÒé²ÎÊý£ºtwoIntervalsConfig
+ ²ÎÊýÓÃ;£ºÁ½ÖÖÉÏÐÐSPSµ÷¶È¼ä¸ô£¬ÒÔ±ÜÃâÉÏÐÐSPSÐÂÊý¾Ý·¢ËͺÍͬ²½HARQÖØ´«µÄ³åÍ»¡£
+ */
+ WORD wTwoIntervalsConfig;
+} T_zPS_LTE_P_SpsConfigUl;
+
+/*
+DRXÅäÖÃÐÅÏ¢£¬¸ù¾Ý´ËÅäÖýøÐÐÁ¬½Ó̬DRXµ÷¶È´¦Àí£¬¼´Åж¨Active timeºÍNon-active timeµÄ½øÈëʱ»ú¡£
+²Î¼û36.321.850µÄ5.7½Ú¡¢36.331.850µÄ6.3.2½ÚµÄDRX-Config¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÆô¶¯»òÍ£Ö¹Á¬½Ó̬DRXµ÷¶È´¦Àí
+ */
+ WORD wCtrlFlag;
+ /*
+ ´¦ÓÚOn durationµÄʱ³¤£¬ÓÉPDCCH×ÓÖ¡µÄ¸öÊýÀ´ºâÁ¿¡£
+ ȡֵ·¶Î§£ºpsf1, psf2, psf3, psf4, psf5, psf6,psf8, psf10, psf20, psf30, psf40,psf50,
+ psf60, psf80, psf100, psf200
+ µÈͬÐÒé²ÎÊý£ºonDurationTimer
+ ²ÎÊýÓÃ;£º´¦ÓÚOn durationµÄʱ³¤£¬ÔÚ´ËÆÚ¼äPHYÐèÒª¼à²âPDCCH¡£Ò²±íʾÿ´ÎDRX»½ÐѺóµÄ×îСactiveʱ¼ä¡£
+ */
+ WORD wOnDurationTimer;
+ /*
+ psf0, psf1, psf2, psf3, psf4, psf5, psf6, psf8, psf10, psf20, psf30, psf40, psf50, psf60,
+ psf80, psf100, psf200, psf300, psf500, psf750, psf1280, psf1920, psf2560¡£ÓÉPDCCH×ÓÖ¡µÄ¸öÊýÀ´ºâÁ¿¡£
+ µÈͬÐÒé²ÎÊý£ºdrx-InactivityTimer
+ ²ÎÊýÓÃ;£º¶¨ÒåÁËÊÕµ½Ò»´ÎPDCCHµ÷¶ÈÉÏ¡¢ÏÂÐÐд«Êäºó£¬ÐèÒª¼ÌÐø¼à²âPDCCHµÄʱ¼ä¡£
+ */
+ WORD wDrxInactivityTimer;
+ /*
+ ȡֵ·¶Î§£ºpsf1, psf2, psf4, psf6, psf8, psf16, psf24, psf33¡£ÓÉPDCCH×ÓÖ¡µÄ¸öÊýÀ´ºâÁ¿¡£
+ µÈͬÐÒé²ÎÊý£ºdrx-RetransmissionTimer
+ ²ÎÊýÓÃ;£º¶¨ÒåÁËÕë¶ÔÏÂÐÐHARQÖØ´«£¬ÐèÒª¼à²âPDCCH£¨ÏÂÐÐÖØ´«µ÷¶È£©µÄʱ¼ä¡£
+ */
+ WORD wDrxRetransTimer;
+ /*
+ ȡֵ·¶Î§£º1~16¡£ÎªwShortDrxCycleµÄ±¶Êý¡£
+ µÈͬÐÒé²ÎÊý£ºdrxShortCycleTimer
+ ²ÎÊýÓÃ;£º¶¨ÒåÁ˶ÌDRXÖÜÆÚ¶¨Ê±Æ÷£¬ÔÚwDrxInactivityTimer³¬Ê±ºÍÊÕµ½DRXÃüÁDRX Command MAC control element£©Ê±£¬Æô¶¯´Ë¶¨Ê±Æ÷¡£
+ wDrxShortCycleTimer¶¨Ê±Æ÷³¬Ê±£¬½øÈ볤DRXÖÜÆÚ´¦Àí¡£
+ */
+ WORD wDrxShortCycleTimer;
+ /*
+ ȡֵ·¶Î§£º£¨µ¥Î»Îª×ÓÖ¡Êý£©£º10¡¢20¡¢32¡¢40¡¢64¡¢80¡¢128¡¢160¡¢256¡¢320¡¢512¡¢640¡¢1024¡¢1280¡¢2048¡¢2560
+ µÈͬÐÒé²ÎÊý£ºlongDRX-CycleStartOffset
+ ²ÎÊýÓÃ;£º¶¨ÒåÁ˳¤DRXÖÜÆÚÖµ£¬ÔÚÓ¦Óó¤DRXÖÜÆÚʱ£¬¸ù¾Ý³¤DRXÖÜÆÚºÍÆ«ÒÆÀ´È·¶¨Æô¶¯bOnDurationTimer¶¨Ê±Æ÷µÄʱ»ú¡£
+ */
+ WORD wLongDrxCycle;
+ /*
+ ȡֵ·¶Î§£º0~2559 ×ÓÖ¡
+ µÈͬÐÒé²ÎÊý£ºlongDRX-CycleStartOffset
+ ²ÎÊýÓÃ;£º¶¨ÒåÁ˳¤DRXÖÜÆÚºÍ¶ÌDRXÖÜÆÚµÄactive time½øÈëµÄʱ¼äÆ«ÒÆÖµ£¬¸ù¾ÝÖÜÆÚºÍÆ«ÒÆÀ´È·¶¨Æô¶¯bOnDurationTimer¶¨Ê±Æ÷µÄʱ»ú¡£
+ Õâ¸ö²ÎÊý²¢·ÇÖ»ÓÐ long drx»áÓõ½£¬short drxÒ²»áÓõ½
+ */
+ WORD wLongDrxCycleStartOffset;
+ /*
+ ȡֵ·¶Î§£ºsf2, sf5, sf8, sf10, sf16, sf20, sf32, sf40, sf64, sf80, sf128, sf160, sf256, sf320, sf512, sf640 ×ÓÖ¡¡£
+ ûÓÐÅäÖöÌDRXÖÜÆÚʱ£¬È¡ÖµÎª0xFFFF¡£
+ µÈͬÐÒé²ÎÊý£ºshortDRX-Cycle
+ ²ÎÊýÓÃ;£º¶¨ÒåÁ˶ÌDRXÖÜÆÚÖµ£¬ÔÚÆô¶¯Á˶ÌDRXÖÜÆÚ¶¨Ê±Æ÷bDrxShortCycleTimerÆÚ¼ä£¬
+ ¸ù¾Ý¶ÌDRXÖÜÆÚºÍÆ«ÒÆ£¨Í¬³¤DRXÆ«ÒÆ£©À´È·¶¨Æô¶¯bOnDurationTimer¶¨Ê±Æ÷µÄʱ»ú¡£
+ */
+ WORD wShortDrxCycle;
+} T_zPS_LTE_P_DrxConfig;
+
+/*
+PDCCH¹¦¿ØÅäÖÃÐÅÏ¢,PHYÊÕµ½PSÅäÖõÄPDCCHÐŵÀÉϵÄTPC¿ØÖÆÐÅÏ¢ºó£¬
+¶ÔºóÐøµÄPUCCH»òPUSCHµÄ´«Ê书ÂʽøÐÐÏàÓ¦Ôö¼Ó»ò¼õСµÄµ÷Õû¡£
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º1Ϊsetup, 0Ϊrelease
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾Æô¶¯»òÊÍ·Å»ùÓÚTPCµÄ¹¦¿Ø
+ */
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º1ΪDCI format3, 0ΪDCI format3A
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾ÎïÀí²ã£¬Ê¹ÓÃformat3£¬»¹ÊÇformate3a
+ */
+ WORD wFormat3Or3A;
+ /*
+ ȡֵ·¶Î§£º00001 - FFF3
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºRNTI for power control using DCI format 3/3A, see TS 36.212 [22].
+ */
+ WORD wTpcRnti;
+ /*
+ ȡֵ·¶Î§£º
+ DCI format 3: 1~15
+ DCI format 3A: 1~31
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾ÔÚformat3 »ò 3aÖУ¬Ê¹ÓõÄbitλÖã¬×÷ΪTPCÃüÁ
+
+ */
+ WORD wTpcIndex;
+} T_zPS_LTE_P_TpcPdcchConfig;
+
+/*
+ÌìÏßרÓÃÅäÖÃÐÅÏ¢
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º1~7 ·Ö±ð¶ÔÓ¦7ÖÖģʽ£¬È¡Öµ0xFFʱÎÞЧ
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾ÏÂÐд«Êäģʽ
+ */
+ WORD wTransMode;
+ WORD wCBRestricBitLen;
+ WORD wUlTransModeR10 ;
+ WORD wUlFourAntennaPortActivateR10 ;
+ /*
+ awCBRestricBit: CodebookSubsetRestricµÄbit£¬×î´ó109bit
+ ȡֵ·¶Î§£º
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÓÃÀ´ÏÞÖÆÔÚ½øÐÐPMI,RI¼ÆËãʱ£¬ÐèÒª³¢ÊÔµÄcodebook
+ */
+ WORD awCBRestricBit[8];
+ /*
+ ȡֵ·¶Î§£º1Ϊsetup, 0Ϊrelease ×¢£ºsetupʱ£¬bUeTransAntSelect²ÎÊýÓÐЧ
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾ÊÇ·ñ½øÐÐUE·¢ÉäÌìÏßÑ¡Ôñ
+ */
+ WORD wUeTransAntCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º0ΪCLOSELOOP£¬1ΪOPENLOOP
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÈç¹û½øÐÐUE·¢ÉäÌìÏßÑ¡Ôñ£¬ ָʾʹÓÿª»·£¬»¹ÊDZջ·µÄ·½Ê½
+ */
+ WORD wUeTransAntSelect;
+} T_zPS_LTE_P_AntenInfoDedi;
+
+/*
+UE SRµ÷¶ÈÇëÇóµÄÅäÖòÎÊýÐÅÏ¢
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º 0£¬1
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º1Ϊsetup, 0Ϊrelease£¬Æô¶¯ºÍ¹Ø±ÕSR¹ý³Ì
+ */
+ WORD wCtrlFlag;
+ /*
+ ȡֵ·¶Î§£º0~155
+ µÈͬÐÒé²ÎÊý£ºIsr . See TS 36.213 [23,10.1].
+ ²ÎÊýÓÃ;£ºÓÃÓÚ²é±í¼ÆËãSRµÄ·¢ËÍÖÜÆÚ£ûms£ýºÍÖÜÆÚÄÚµÄsubframe offset¡£
+ ¼ÆËã·½·¨²Î¼û£ºTS 36.213 [23,10.1].
+ */
+ WORD wSrConfigIndex;
+ /*
+ ȡֵ·¶Î§£º 0~2047
+ µÈͬÐÒé²ÎÊý£º ¡² TS 36.213 [23, 10.1]¡³
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËã³ÐÔØSRµÄPUCCHµÄʱƵ×ÊԴλÖã¬×¢£ºÖ»ÓÐ postive SRÓÃÕâ¸ö²ÎÊý¼ÆËã×ÊԴλÖã¬
+ negtive SR Ö±½Ó²ÉÓà £û±¾ÎĵµµÄ½Ó¿ÚÃüÃûΪwN1PucchAn:£ý
+ */
+ WORD wSrPucchResourceIndex;
+ /*
+ ȡֵ·¶Î§£º4, 8, 16, 32, 64£¬0xFFΪÎÞЧֵ
+ µÈͬÐÒé²ÎÊý£ºdsr-TransMax in TS 36.321 [6, 5.4.4].
+ ²ÎÊýÓÃ;£º±íÕ÷SRµÄ×î´óÖØ´«´ÎÊý£¬Èç¹ûSRµÄ·¢ËÍ´ÎÊý´ïµ½Õâ¸öÊýÖµ£¬ÔòÐèÒª×Ô¶¯Í£Ö¹SRµÄ·¢ËÍ¡£
+ */
+ WORD wDsrTransMax;
+ WORD wSrPucchResourceIndexP1Flag;
+ WORD wSrPucchResourceIndexP1;
+} T_zPS_LTE_P_SrConfig;
+
+typedef struct
+{
+ WORD wRadioFrameAllocPeriod;
+ WORD wRadioFrameAllocOffst;
+ WORD wSubframeAllocType;
+ WORD wPadding0;
+ WORD awFrameBitStr[2];
+} T_zPS_LTE_P_MbsfnSubframeConfig;
+
+typedef struct
+{
+ WORD wMbsfnSubframeConfigNum;
+ WORD wPadding;
+ T_zPS_LTE_P_MbsfnSubframeConfig tMbsfnSubframeConfig[ZPS_LTE_P_MAX_MBSFN_SUBFRAME_CFG_NUM];
+}T_zPS_LTE_P_MbsfnSubframeConfigList;
+
+typedef struct
+{
+ WORD wMeasSubframePatternType;
+ WORD wPadding;
+ T_zPS_LTE_P_MeasSubframePattern tMeasSubframePatternPcell;
+} T_zPS_LTE_P_MeasSubframePatternPcell;
+
+typedef struct
+{
+ WORD wCsiRsFlag;
+ WORD wAntennaPortsCount;
+ WORD wResourceConfig;
+ WORD wSubframeConfig;
+
+ WORD wPc;
+ WORD wZeroTxPowerCsiRsFlag;
+
+ WORD wZeroTxPowerResourceConfigList;
+ WORD wZeroTxPowerSubframeConfig;
+} T_zPS_LTE_P_CsiRsConfig;
+
+typedef struct
+{
+ WORD wSrsAntennaPortAp;
+ WORD wSrsBandWidthConfigAp;
+ WORD wFreqDomainPosAp;
+ WORD wTransCombAp;
+
+ WORD wCyclicShiftAp;
+ WORD wPadding;
+} T_zPS_LTE_P_SrsConfigAp;
+
+typedef struct
+{
+ WORD wCtrlFlag;
+ WORD wSrsConfigIndexAp;
+ WORD wSrsConfigApDciFormat4Num;
+ WORD wPadding0;
+
+ T_zPS_LTE_P_SrsConfigAp tSrsConfigAp[ZPS_LTE_P_MAX_SRS_CFG_NUM];
+
+ WORD wSrsActivateApCtrlFlag;
+ WORD awPadding1;
+
+ T_zPS_LTE_P_SrsConfigAp tSrsConfigApDciFormat0;
+ T_zPS_LTE_P_SrsConfigAp tSrsConfigApDciFormat1a2b2c;
+} T_zPS_LTE_P_SrsUlConfigDediAp;
+
+typedef struct
+{
+ WORD wP0NominalPusch;
+ WORD wAlpha;
+} T_zPS_LTE_P_UplinkPwrCntlCommonSCell;
+
+typedef struct
+{
+ WORD wCrossSchedulingCellInfoInd;
+ WORD wCifPresence;
+ WORD wOtherCellSchedulingCellIdId;
+ WORD wOtherCellSchedulingPdschStart;
+} T_zPS_LTE_P_CrossSchedulingConfig;
+
+typedef struct
+{
+ WORD wP0UePusch;
+ WORD wDeltaMcsEnabled;
+ WORD wAccumulationEnabled;
+ WORD wPsrsOffset;
+
+ WORD wPsrsOffsetAp;
+ WORD wFilterCoefficient;
+ WORD wPathlossReferenceLinking;
+ WORD wPadding;
+} T_zPS_LTE_P_UlPowerCtrlDediSCell;
+
+typedef struct
+{
+ WORD wCqiPucchResourceIndex;
+ WORD wCqiPucchResourceIndexP1;
+
+ WORD wCqiPmiConfigIndex;
+ WORD wCqiFormatIndrPeriodicType;
+
+ WORD wWideBandCsiRptMode;
+ WORD wSubbandCqiK;
+
+ WORD wSubbandCqiPeriodicityFactor;
+ WORD wRiConfigIndex;
+
+ WORD wSimulAckNackAndCQI;
+ WORD wCqiMask;
+ WORD wCsiConfigIndexFlag;
+ WORD wCqiPmiConfigIndex2;
+ WORD wRiConfigIndex2;
+ WORD wPadding;
+} T_zPS_LTE_P_CqiReportPeriodicConfig;
+
+typedef struct
+{
+ WORD wCqiReportModeAperiodic;
+ WORD wNomPdschRsEpreOffset;
+ WORD wPmiRiRpt;
+ WORD wCqiReportPeriodicFlag;
+
+ T_zPS_LTE_P_CqiReportPeriodicConfig tCqiReportPeriodic;
+} T_zPS_LTE_P_CqiReportConfigSCell;
+
+typedef struct
+{
+ WORD wDlBandWidth;
+ WORD wAntennaPortsCount ;
+
+ T_zPS_LTE_P_MbsfnSubframeConfigList tMbsfnSubframeConfigList;
+
+ WORD wPhichDuration;
+ WORD wPhichResource;
+ WORD wDlReferSignalPower;
+ WORD wPb;
+
+ WORD wTddConfigCtrlFlag;
+ WORD wSubFrameAssign;
+ WORD wSpecialSubFramePatterns;
+ WORD wUlConfigCtrlFlag;
+
+ DWORD dwUlEarfcn;
+ WORD wUlBandWidth;
+ WORD wAdditionalSpectrumEmission;
+ WORD wPeMax;
+ WORD wPadding1;
+
+ T_zPS_LTE_P_UplinkPwrCntlCommonSCell tUplinkPwrCntlCommonSCell;
+ T_zPS_LTE_P_SrsUlConfigComm tSrsUlConfigComm;
+
+ WORD wUlCpLen;
+ WORD wPrachConfigIndex;
+
+ T_zPS_LTE_P_PuschConfigComm tPuschConfigComm;
+} T_zPS_LTE_P_SCellConfigComm;
+
+typedef struct
+{
+ WORD wAntenInfoDediFlag;
+ WORD wCrossSchedulingConfigFlag;
+ WORD wCsiRsConfigFlag;
+ WORD wUlPowerCtrlDediSCellFlag;
+
+ WORD wCqiReportConfigSCellFlag;
+ WORD wPadding0;
+
+ T_zPS_LTE_P_AntenInfoDedi tAntenInfoDedi;
+ T_zPS_LTE_P_CrossSchedulingConfig tCrossSchedulingConfig;
+ T_zPS_LTE_P_CsiRsConfig tCsiRsConfig;
+
+ WORD wPa;
+ WORD wGroupHoppingDisabledFlag;
+ WORD wDmrsWithOccActivatedFlag;
+ WORD wPadding1;
+
+ T_zPS_LTE_P_UlPowerCtrlDediSCell tUlPowerCtrlDediSCell;
+ T_zPS_LTE_P_CqiReportConfigSCell tCqiReportConfigSCell;
+ T_zPS_LTE_P_SrsUlConfigDedi tSrsUlConfigDedi ;
+ T_zPS_LTE_P_SrsUlConfigDediAp tSrsUlConfigDediAp;
+} T_zPS_LTE_P_SCellConfigDedi;
+
+typedef struct
+{
+ WORD wSCellIndex;
+ WORD wSCellIdFlag;
+ WORD wSCellPci;
+ WORD wPadding;
+ DWORD dwDlEarfcn;
+ WORD wSCellCommonCfgFlag;
+ WORD wSCellDedicateCfgFlag;
+
+ T_zPS_LTE_P_SCellConfigComm tSCellCommonCfg;
+ T_zPS_LTE_P_SCellConfigDedi tSCellDedicateCfg;
+} T_zPS_LTE_P_SCellAddModConfig;
+
+typedef struct
+{
+ WORD wSCellToReleaseNum;
+ WORD wSCellToAddModNum;
+ WORD wSCellToReleaseList[ZPS_LTE_P_MAX_SCELL_NUM];
+ T_zPS_LTE_P_SCellAddModConfig tSCellToAddModList[ZPS_LTE_P_MAX_SCELL_NUM];
+} T_zPS_LTE_P_SCellConfig;
+
+typedef struct
+{
+ WORD wCqiReportAPeriodicFlag;
+ WORD wCqiReportModeAperiodic;
+ WORD wAPeriodicCsiTriggerFlag;
+ WORD wAPeriodicCsiTrigger;
+
+ WORD wNomPdschRsEpreOffset;
+ WORD wCqiReportPeriodicFlag;
+
+ T_zPS_LTE_P_CqiReportPeriodicConfig tCqiReportPeriodic;
+
+ WORD wPmiRiRpt;
+ WORD wCsiSubframePatternConfigFlag;
+
+ T_zPS_LTE_P_MeasSubframePattern atCsiMeasSubframeSet[ZPS_LTE_P_MAX_CSI_MEAS_SF_PATTERN_NUM];
+ WORD wSimultaneousAckNackAndCqiFormat3Flg;
+ WORD wPadding;
+} T_zPS_LTE_P_CqiReportConfig;
+
+
+
+typedef struct{
+ DWORD dwM_TMSI;
+ WORD wMmec;
+ WORD wPadding;
+}T_zPS_LTE_P_S_TMSI;
+
+typedef struct{
+ WORD wNum;
+ WORD awList[21];
+}T_zPS_LTE_P_IMSI;
+
+typedef struct
+{
+ WORD wImsiExistFlg;/*ָʾIMSIÊÇ·ñ´æÔÚ£¬È¡Öµ1:IMSI´æÔÚ£»0:IMSI²»´æÔÚ*/
+ WORD wSTmsiExistFlg;/*ָʾS-TMSIÊÇ·ñ´æÔÚ£¬È¡Öµ1:S-TMSI´æÔÚ£»0:S-TMSI²»´æÔÚ*/
+
+ T_zPS_LTE_P_IMSI tImsi;
+ T_zPS_LTE_P_S_TMSI tSTmsi;
+} T_zPS_LTE_P_UeId;
+
+/**************************************************************************
+ * RRCÅäÖÃEPHY IDLE̬ÎÞÏß×ÊÔ´²ÎÊý£¬Ö÷Òª°üº¬Í¨ÓÃÅäÖÃÐÅÏ¢ *
+ **************************************************************************/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ȡֵ·¶Î§£º1~32
+ µÈͬÐÒé²ÎÊý£ºAdditionalSpectrumEmission
+ ²ÎÊýÓÃ;£ºrelated to IE AdditionalSpectrumEmission are defined in TS 36.101 [42, table 6.2.4-1]¡£
+ ΪÁ˼õÉÙLTE UEÉÏÐÐ¶ÔÆäËûϵͳµÄ¹¦ÂʸÉÈÅ£¬UE¿ÉÒÔÔÚ×î´ó·¢Ë͹¦ÂʵĻù´¡ÉÏ£¬°Ñ×î´ó·¢Ë͹¦ÂʼõСndb£¬
+ n¸ù¾ÝAdditionalSpectrumEmission²é±íµÃµ½¡£
+ */
+ WORD wAdditionalSpectrumEmission;
+ /*
+ ȡֵ·¶Î§£º[-30..33) , PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+30£¬²ÎÊýȡֵ·¶Î§£º0~63
+ µÈͬÐÒé²ÎÊý£ºPEMAX
+ ²ÎÊýÓÃ;£ºÐÒéÕ»ÅäÖõÄUE×î´ó·¢É书ÂÊ
+ */
+ WORD wPeMax;
+ /*
+ ȡֵ·¶Î§£º0~6
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºTDDµÄUL/DL×ÓÖ¡ÅäÖÃÀàÐÍ
+ */
+ WORD wSubFrameAssign;
+
+
+ /*
+ ȡֵ·¶Î§£º0~8
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºTDDµÄÌØÊâ×ÓÖ¡µÄpattern
+ */
+ WORD wSpecialSubFramePatterns;
+ /*
+ ȡֵ·¶Î§£º0ΪLEN1£¨normal cyclic prefix£©£¬1ΪLEN2£¨extended cyclic prefix£©
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÉÏÐÐÑ»·Ç°×º³¤¶È
+ */
+ WORD wUlCpLen;
+ /*
+ ȡֵ·¶Î§£º32£¬64£¬128£¬256£¨ms£©
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÄ¬ÈϵÄѰºôÖÜÆÚ
+ */
+ WORD wDefaultPageCycle;
+ /*
+ ȡֵ·¶Î§£º0~1023
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºUE_ID£¬Ñ°ºô¼ÆËãµÈÐèҪʹÓã¬ÓÃÓÚÇø·Ö²»Í¬UE
+ */
+ WORD wUeId;
+ /*
+ ȡֵ·¶Î§£ºÕæÊµÖµÎª{fourT, twoT, oneT, halfT, quarterT, oneEightT,onSixteenthT, oneThirtySecondT},
+ T´ú±íѰºôÖÜÆÚ£¬PSÏ·¢µÄ²ÎÊýÖµ·¶Î§Îª0~7£¬·Ö±ð¶ÔÓ¦ÒÔÉÏ8ÖÖȡֵ¡£
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãѰºôʱ»úµÄ²ÎÊý
+ */
+ WORD wNb;
+ /*
+ ȡֵ·¶Î§£º[-60£¬50]dbm , PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+60£¬²ÎÊýȡֵ·¶Î§£º0~110
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÏÂÐвο¼ÐźŹ¦ÂÊ
+ */
+ WORD wDlReferSignalPower ;
+ /*
+ ȡֵ·¶Î§£º0~3
+ µÈͬÐÒé²ÎÊý£ºPb
+ ²ÎÊýÓÃ;£ºPDSCHÐ¡ÇøÏà¹Ø²ÎÊý£¬ÓÃÓÚÏÂÐй¦ÂʼÆË㣬TS 36.213 [23, Table 5.2-1]
+ */
+ WORD wPb;
+ /*
+ ȡֵ·¶Î§£º1, 2, 3, 4, 6, 8, 10, 20
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºEPHY¼ì²âµ½N310´Îʧ²½ºó£¬Éϱ¨ZPS_LTE_P_OUT_OF_SYNC_IND_EvÏûÏ¢¸øEURRC
+ */
+ WORD wN310;
+ /*
+ ȡֵ·¶Î§£º1, 2, 3, 4, 5, 6, 8, 10
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºEPHY¼ì²âµ½N311´Îͬ²½ºó£¬Éϱ¨ZPS_LTE_P_RECOVERY_SYNC_IND_EvÏûÏ¢¸øEURRC
+ */
+ WORD wN311;
+ /*
+ ȡֵ·¶Î§£º1£¬Ö¸Ê¾EPHYפÁô£»0£¬Ö¸Ê¾EPHY²»½øÐÐפÁô
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º×¤Áôָʾ£¬Ö¸Ê¾UEÊÇ·ñפÁôµ½¸ÃÏûÏ¢Ö¸¶¨µÄÐ¡Çø¡£
+ 1 ±íʾÒÔ±¾ÏûÏ¢ÖеÄcell Ϊ·þÎñÐ¡Çø£¬±¾ÏûÏ¢»á´¥·¢PHYµÄפÁôÐ¡ÇøºÍ×´Ì¬Ç¨ÒÆ£»
+ 0£¬ÔòÈÏΪ¸ÃÏûÏ¢Ö»ÊÇÓÃÓÚ²ÎÊýµÄ¸üУ¬·þÎñÐ¡Çø²»ÐèÒª¸Ä±ä¡£
+ */
+ WORD wCampInd;
+
+#ifdef BTRUNK_SUPPORT
+ WORD wSupportBtrunking;
+ WORD wTpchCycle;
+ WORD wFrameNum;
+ WORD wSubFrameNum;
+#endif
+
+
+ T_zPS_LTE_P_PhyCellInfo tPhyCellInfo;
+ T_zPS_LTE_P_PhyRaConfig tPhyRaConfig;
+ T_zPS_LTE_P_PuschConfigComm tPuschConfigComm;
+ T_zPS_LTE_P_PucchConfigComm tPucchConfigComm ;
+ T_zPS_LTE_P_SrsUlConfigComm tSrsUlConfigComm;
+ T_zPS_LTE_P_UlPowerCtrlComm tUlPowerCtrlComm;
+ T_zPS_LTE_P_MbsfnSubframeConfigList tMbsfnSubframeConfigList;
+
+ T_zPS_LTE_P_UeId tUeId;
+ DWORD dwCellId; //sib1ÖÐÐ¡Çøid
+ DWORD dwPLMN; /* µ±Ç°Ð¡ÇøµÄÖ÷PLMN,PS°´ÕÕMCC1 MCC2 MCC3 MNC1 MNC2 MNC3 Æ´½Ó³É¾ßÌåµÄ5λ»ò6λ(MNC3¿ÉÄÜûÓÐ)Ê®½øÖÆÊý×Ö
+ ¾ÙÀý:PLMNΪ46000£¬ÔòdwPLMNÖµ¾ÍµÈÓÚËÄÍòÁù;PLMNΪ460001£¬ÔòdwPLMNÖµ¾ÍµÈÓÚËÄÊ®ÁùÍòÁãÒ»*/
+
+} T_zPS_LTE_P_CommonConfig_Req;
+
+/**************************************************************************
+ * RRCÅäÖÃEPHY CONNECT̬ÎÞÏß×ÊÔ´²ÎÊý£¬Ö÷Òª°üº¬Í¨ÓÃÒÔ¼°×¨ÓÃÅäÖÃÐÅÏ¢£¬ *
+ * ÎïÀí²ã½ÓÊÕµ½¸ÃÏûÏ¢ÒԺ󣬿ÉÒÔ¿ªÊ¼½øÐÐÉÏÏÂÐÐÊý¾ÝÐŵÀµÄ½ÓÊÕ *
+ **************************************************************************/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ 1£ºÖØÅäÖã¬0£ºÅäÖÃ
+ */
+ WORD wReConfigFlag; //ÐÂÔö²ÎÊý
+ /*
+ ȡֵ·¶Î§£º 1£ºTTI°ó¶¨£» 0£º·ÇTTI°ó¶¨
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÉÏÐд«ÊäTTI°ó¶¨Ö¸Ê¾
+ */
+ WORD wTtiBundlingInd;
+ /*
+ ȡֵ·¶Î§£ºn1, n2, n3, n4, n5, n6, n7, n8, n10, n12, n16, n20, n24, n28
+ ȡֵ0xFFʱΪÎÞЧ£¬ n´ú±í·¢ËÍ´ÎÊý£»
+ µÈͬÐÒé²ÎÊý£ºmaxHARQ-Tx
+ ²ÎÊýÓÃ;£ºHARQ½ø³Ì×î´ó·¢ËÍ´ÎÊý
+ */
+ WORD wMaxHarqTx;
+ /*
+ ȡֵ·¶Î§£º{ -6, -4.77, -3, -1.77, 0, 1, 2, 3} dB
+ PSÏ·¢µÄ²ÎÊýµÄȡֵΪ{0£¬1£¬2£¬3£¬4£¬5£¬6£¬7}£¬·Ö±ð¶ÔÓ¦ÉÏÊöÕæÊµÖµ
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºÏÂÐй¦ÂÊ¿ØÖÆÊ¹ÓòÎÊý£¬TS 36.213 [5.2]
+ */
+ WORD wPa;
+
+ /*
+ ȡֵ·¶Î§£º0~7
+ ²ÎÊýÓÃ;£ºSR·¢ËÍ×èÖ¹¶¨Ê±Æ÷,±ÜÃâÒ»¶Îʱ¼äÄÚÆµ·±·¢ËÍSR
+ */
+ WORD wSrProhibitTimer;
+ /*
+ ȡֵ·¶Î§£º1~FFF3
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºSPS C RNTI ȡֵ
+ */
+ WORD wSpsCRnti;
+ WORD wPadding;
+
+ T_zPS_LTE_P_SpsConfigDl tSpsConfigDl ;
+ T_zPS_LTE_P_SpsConfigUl tSpsConfigUl ;
+ T_zPS_LTE_P_DrxConfig tDrxConfig;
+ T_zPS_LTE_P_PuschConfigDedi tPuschConfigDedi;
+ T_zPS_LTE_P_PucchConfigDedi tPucchConfigDedi;
+ T_zPS_LTE_P_SrsUlConfigDedi tSrsUlConfigDedi;
+ T_zPS_LTE_P_UlPowerCtrlDedi tUlPowerCtrlDedi;
+ T_zPS_LTE_P_TpcPdcchConfig tTpcPdcchConfigPucch;
+ T_zPS_LTE_P_TpcPdcchConfig tTpcPdcchConfigPusch;
+ T_zPS_LTE_P_CqiReportConfig tCqiReporting;
+ T_zPS_LTE_P_AntenInfoDedi tAntenInfoDedi;
+ T_zPS_LTE_P_SrConfig tSrConfig;
+ T_zPS_LTE_P_TimerConfig tTimerConfig;
+ WORD wCifPresence;
+ WORD wAdditionalSpectrumEmissionCaType;
+ WORD wAdditionalSpectrumEmissionPCell;
+ WORD wScellDeactivationTimer;
+
+ T_zPS_LTE_P_MeasSubframePatternPcell tMeasSubframePatternPcell;
+ T_zPS_LTE_P_CsiRsConfig tCsiRsConfig;
+ T_zPS_LTE_P_SrsUlConfigDediAp tSrsUlConfigDediAp;
+ T_zPS_LTE_P_SCellConfig tSCellConfig;
+} T_zPS_LTE_P_DedicatedConfig_Req;
+
+/**************************************************************************
+RRCÅäÖÃEPHY CONNECT̬ÎÞÏß×ÊÔ´²ÎÊý£¬Ö÷Òª°üº¬Í¨ÓÃÒÔ¼°×¨ÓÃÅäÖÃÐÅÏ¢
+Ö÷ÒªÓÃÓÚÇл»³¡¾°.ÒªÇóEPHYͬ²½Ä¿±êÐ¡Çø£¬Í¬²½³É¹¦»òʧ°Üºó£¬·µ»ØÇл»È·ÈÏÏûÏ¢*
+**************************************************************************/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ȡֵ·¶Î§£º 1£ºTTI°ó¶¨£» 0£º·ÇTTI°ó¶¨
+ µÈͬÐÒé²ÎÊý£ºttiBundling£¬²Î¼ûTS 36.331 6.3.2 MAC-MainConfig field descriptions
+ ²ÎÊýÓÃ;£ºÏÂÐÐTTI°ó¶¨Ö¸Ê¾£¬±íÕ÷ÏÂÐÐÊý¾ÝµÄACK/NACK·´À¡ÊÇ·ñ²ÉÓÃTTI bunding ģʽ£¬
+ ½ö½öÊÊÓÃÓÚÏÂÐÐ×ÓÖ¡ÊýÄ¿´óÓÚÉÏÐÐ×ÓÖ¡ÊýÄ¿µÄ²»¶Ô³ÆÅäÖã¨2£¬3£¬4£¬5£©¡£²Î¼ûTS 36.213-10.1
+ */
+ WORD wTtiBundingInd;
+ /*
+ ȡֵ·¶Î§£º0x0001 ¡« 0xFFF3£¬²Î¼ûTS 36.321-7.1
+ µÈͬÐÒé²ÎÊý£ºC-RNTI
+ ²ÎÊýÓÃ;£ºCell RNTI£¬ÓÃÓÚÏÂÐÐÁ´Â·µÄ¼ÓÈųõʼÐòÁÐÑ¡Ôñ£¬
+ ³ÐÔØÆÕͨÏÂÐÐÊý¾ÝµÄPDSCHÐŵÀ¶ÔÓ¦µÄPDCCH ÐŵÀDCIÊý¾ÝCRCµÄ¼ÓÑÚ´¦Àí£¬
+ */
+ WORD wCRnti;
+ /*
+ ȡֵ·¶Î§£º0x0001 ¡« 0xFFF3£¬²Î¼ûTS 36.321-7.1
+ µÈͬÐÒé²ÎÊý£ºSemi-Persistent-Schedule RNTI
+ */
+ WORD wSpsCRnti;
+ /*
+ ȡֵ·¶Î§£º1¡«32
+ µÈͬÐÒé²ÎÊý£ºAdditionalSpectrumEmission£¬²Î¼ûTS 36.331 6.3.4
+ ²ÎÊýÓÃ;£ºÆµÆ×·¢Ë͹¦ÂÊÏÞÖÆ£¬ÓÃÓÚÏÞÖÆUEµÄ×î´ó·¢Ë͹¦ÂÊÒÔ¼°¶ÔƵ´øÍâµÄ¹¦ÂʸÉÈÅ£¿£¿
+ ²Î¼ûTS 36.101 [42, table 6.2.4-1]
+ */
+ WORD wAdditionalSpectrumEmission;
+ /*
+ ȡֵ·¶Î§£ºn1, n2, n3, n4, n5, n6, n7, n8, n10, n12, n16, n20, n24, n28£¬È¡Öµ0xFFʱΪÎÞЧ
+ µÈͬÐÒé²ÎÊý£ºmaxHARQ-Tx£¬²Î¼ûTS 36.331 6.3.2 MAC-MainConfig field descriptions
+ ²ÎÊýÓÃ;£ºÖ¸¶¨±¾´ÎRRCÁ¬½ÓÉÏÐÐHARQµÄ×î´ó·¢ËÍ´ÎÊý¡£
+ */
+ WORD wMaxHarqTx;
+ /*
+ ȡֵ·¶Î§£º[-60£¬50]dbm , PSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+60 ¶ÔÓ¦0¡«110
+ µÈͬÐÒé²ÎÊý£ºreferenceSignalPower£¬²Î¼û TS 36.331 6.3.2 PDSCH-Config
+ ²ÎÊýÓÃ;£ºÏÂÐвÎÊýÐźŵŦÂÊ´óС£¬ÓÃÓÚ·ËðµÄ¹À¼ÆºÍ·¢Ë͹¦ÂʵļÆËã¡£
+ */
+ WORD wDlReferSignalPower;
+ /*
+ ȡֵ·¶Î§£º{0£¬1£¬2£¬3£¬4£¬5£¬6£¬7} ¶ÔÓ¦ÕæÊµÖµÎª{ -6, -4.77, -3, -1.77, 0, 1, 2, 3} dB
+ µÈͬÐÒé²ÎÊý£ºPa ,²Î¼û TS 36.331 6.3.2 PDSCH-Config
+ ²ÎÊýÓÃ;£ºPDSCHרÓÃÅäÖòÎÊý Pa, UEÌØ¶¨²ÎÊý£¬ see TS 36.213 [23, 5.2].
+ Value dB-6 corresponds to -6 dB, dB-4dot77 corresponds to -4.77 dB etc
+ */
+ WORD wPa;
+ /*
+ ȡֵ·¶Î§£º0~3
+ µÈͬÐÒé²ÎÊý£ºPb £¬²Î¼û TS 36.331 6.3.2 PDSCH-Config
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãÏÂÐй¦ÂÊ·ÖÅä£¬Ð¡ÇøÌØ¶¨²ÎÊý£¬ see TS 36.213 [23, Table 5.2-1].
+ */
+ WORD wPb;
+ /*
+ ȡֵ·¶Î§£º0~6
+ µÈͬÐÒé²ÎÊý£ºÎÞ£¬²Î¼û TS36.211-4.2£¬ Table 4.2-2
+ ²ÎÊýÓÃ;£ºTDDµÄUL/DL×ÓÖ¡ÅäÖÃÀàÐÍ
+ */
+ WORD wSubFrameAssign;
+ /*
+ ȡֵ·¶Î§£º0¡«8
+ µÈͬÐÒé²ÎÊý£ºÎÞ£¬²Î¼û TS36.211-4.2£¬ Table 4.2-1
+ ²ÎÊýÓÃ;£ºTDD ÌØÊâ×ÓÖ¡µÄÅäÖÃÀàÐÍ
+ */
+ WORD wSpecialSubFramePatterns;
+ /*
+ ȡֵ·¶Î§£ºPSÏ·¢µÄ²ÎÊýÖµÔÚÕæÊµÖµÉÏ+30£¬²ÎÊýȡֵ·¶Î§£º0~63£¬
+ µÈͬÐÒé²ÎÊý£ºP-Max£¬see TS 36.331 6.3.2
+ ²ÎÊýÓÃ;£ºÐ¡ÇøÔÊÐíµÄUE×î´ó·¢É书ÂÊ[-30~33£©dbm]
+ */
+ WORD wPeMax;
+ /*
+ ȡֵ·¶Î§£º0ΪLEN1£¬1ΪLEN2
+ µÈͬÐÒé²ÎÊý£ºUL-CyclicPrefixLength£¬²Î¼ûTS36.331 6.3.2 RadioResourceConfigCommon
+ ²ÎÊýÓÃ;£ºÉÏÐÐÑ»·Ç°×º³¤¶È
+ */
+ WORD wUlCpLen;
+ /*
+ ȡֵ·¶Î§£º0ΪÕý³££¬1ΪÀ©Õ¹
+ µÈͬÐÒé²ÎÊý£ºPHICH-Duration£¬²Î¼û TS 36.331 - 6.3.2 PHICH-Config
+ ²ÎÊýÓÃ;£ºPHICH·Ö²¼·ûºÅµÄ¸öÊý£¬ÓÃÓÚ¼ÆËãPHICHÐŵÀµÄ×ÊÔ´Ó³Éä, see TS 36.211 [21, Table 6.9.3-1].
+ Õâ¸ö²ÎÊý³ÐÔØÔÚMIBÖУ¬Ò»°ãÇé¿öÏÂÓÉPHY×Ô¼º¶ÁÈ¡£» Çл»Ê±ÍøÂç²àÖ÷¶¯Ï·¢£»
+ */
+ WORD wPhichDuration;
+ /*
+ ȡֵ·¶Î§£º²ÎÊýȡֵΪ0£¬1£¬2£¬3·Ö±ð¶ÔÓ¦ÕæÊµÖµ{1/6£¬1/2£¬1£¬2}
+ µÈͬÐÒé²ÎÊý£ºphich-Resource£¬²Î¼û TS 36.331 - 6.3.2 PHICH-Config
+ ²ÎÊýÓÃ;£º Ng,ÓÃÓÚ¼ÆËãPHICH ×é¸öÊý£¬ see TS 36.211 [21, 6.9].
+ Value oneSixth corresponds to 1/6, half corresponds to 1/2 and so on.
+ Õâ¸ö²ÎÊý³ÐÔØÔÚMIBÖУ¬Ò»°ãÇé¿öÏÂÓÉPHY×Ô¼º¶ÁÈ¡£» Çл»Ê±ÍøÂç²àÖ÷¶¯Ï·¢
+ */
+ WORD wPhichResource;
+ /*
+ ȡֵ·¶Î§£º1£¬2£¬4£¬È¡ÖµÎª0xFFÊÇΪÎÞЧֵ
+ µÈͬÐÒé²ÎÊý£ºantennaPortsCount£¬²Î¼ûTS 36.331-6.3.2 AntennaInfo
+ ²ÎÊýÓÃ;£ºÌìÏß¹«¹²ÅäÖÃÐÅÏ¢£¬Ö¸¶¨Ð¡ÇøµÄÌìÏß¶Ë¿ÚÊý
+ */
+ WORD wAntennaPortsCount;
+
+ /*
+ ȡֵ·¶Î§£º0~7
+ ²ÎÊýÓÃ;£ºSR·¢ËÍ×èÖ¹¶¨Ê±Æ÷,±ÜÃâÒ»¶Îʱ¼äÄÚÆµ·±·¢ËÍSR
+ */
+ WORD wSrProhibitTimer;
+ /*
+ ȡֵ·¶Î§£ºÕæÊµÖµÎª{fourT, twoT, oneT, halfT, quarterT, oneEightT,onSixteenthT, oneThirtySecondT},
+ T´ú±íѰºôÖÜÆÚ£¬PSÏ·¢µÄ²ÎÊýÖµ·¶Î§Îª0~7£¬·Ö±ð¶ÔÓ¦ÒÔÉÏ8ÖÖȡֵ¡£Èç¹ûSIB2Ϊ¿Õ£¬È¡0-fourT
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÓÃÓÚ¼ÆËãѰºôʱ»úµÄ²ÎÊý
+ */
+ WORD wNb;
+ /*
+ ȡֵ·¶Î§£º32£¬64£¬128£¬256£¨ms£©;Èç¹ûSIB2Ϊ¿Õ£¬È¡×î´óÖµ256
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÄ¬ÈϵÄѰºôÖÜÆÚ
+ */
+ WORD wDefaultPageCycle;
+ /*
+ ȡֵ·¶Î§£º0~1023
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºUE_ID£¬Ñ°ºô¼ÆËãµÈÐèҪʹÓã¬ÓÃÓÚÇø·Ö²»Í¬UE
+ */
+ WORD wUeId;
+
+ T_zPS_LTE_P_PhyCellInfo tPhyCellInfo;
+ T_zPS_LTE_P_SpsConfigDl tSpsConfigDl ;
+ T_zPS_LTE_P_SpsConfigUl tSpsConfigUl ;
+ T_zPS_LTE_P_DrxConfig tDrxConfig;
+ T_zPS_LTE_P_PhyRaConfig tPhyRaConfig;
+ T_zPS_LTE_P_PuschConfigComm tPuschConfigComm;
+ T_zPS_LTE_P_PucchConfigComm tPucchConfigComm ;
+ T_zPS_LTE_P_SrsUlConfigComm tSrsUlConfigComm;
+ T_zPS_LTE_P_UlPowerCtrlComm tUlPowerCtrlComm;
+ T_zPS_LTE_P_PuschConfigDedi tPuschConfigDedi;
+ T_zPS_LTE_P_PucchConfigDedi tPucchConfigDedi;
+ T_zPS_LTE_P_SrsUlConfigDedi tSrsUlConfigDedi;
+ T_zPS_LTE_P_UlPowerCtrlDedi tUlPowerCtrlDedi;
+ T_zPS_LTE_P_TpcPdcchConfig tTpcPdcchConfigPucch;
+ T_zPS_LTE_P_TpcPdcchConfig tTpcPdcchConfigPusch;
+ T_zPS_LTE_P_CqiReportConfig tCqiReporting;
+ T_zPS_LTE_P_AntenInfoDedi tAntenInfoDedi;
+ T_zPS_LTE_P_SrConfig tSrConfig;
+ T_zPS_LTE_P_TimerConfig tTimerConfig;
+ T_zPS_LTE_P_MbsfnSubframeConfigList tMbsfnSubframeConfigList;//Èç¹ûSIB2Ϊ¿Õ£¬ÁÐ±í³¤¶ÈÈ¡0£¬ºöÂÔÁбíÄÚÈÝ
+ WORD wCifPresence;
+ WORD wAdditionalSpectrumEmissionCaType;
+ WORD wAdditionalSpectrumEmissionPCell;
+ WORD wScellDeactivationTimer;
+ T_zPS_LTE_P_MeasSubframePatternPcell tMeasSubframePatternPcell;
+ T_zPS_LTE_P_CsiRsConfig tCsiRsConfig;
+ T_zPS_LTE_P_SrsUlConfigDediAp tSrsUlConfigDediAp;
+ T_zPS_LTE_P_SCellConfig tSCellConfig ;
+ WORD wT304; //T304ʱ³¤£¬µ¥Î»ms
+ WORD wPadding;
+
+} T_zPS_LTE_P_Handover_Req;
+
+/*
+EPHYÉϱ¨ECERÇл»½á¹ûָʾ
+*/
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º1:Çл»³É¹¦ 0£ºÇл»Ê§°Ü
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º±¨¸æÐÒéÕ»PHYÊÇ·ñ¿ÉÒÔÓëÄ¿±êÐ¡Çø»ñȡͬ²½£¬
+ Ò»°ãÇé¿öÏ£¬PHYÒѾ»ñÈ¡ÁËÄ¿±êÐ¡ÇøµÄÖ¡±ß½ç£¬Ö±½Ó±¨¸æ³É¹¦¼´¿É¡£
+ */
+ WORD wResult;
+ WORD wPadding;
+} T_zPS_LTE_P_Handover_Cnf,T_zPS_LTE_P_ListeningHo_Cnf;
+
+/*
+RRCÁ¬½Ó״̬£¬PHYÒ»Ö±¼à²âÎÞÏßÁ´Â·µÄÐźÅÖÊÁ¿£¬µ±Âú×ãʧ²½Ìõ¼þʱ£¬Éϱ¨ÐÒéÕ»Á´Â·Ê§²½¡£
+ÐèÒª½øÒ»²½Ã÷ȷһϣº
+upon receiving N310 consecutive "out-of-sync" indications from lower layers
+while neither T300, T301, T304 nor T311 is running:
+2> start timer T310;
+N310´Îʧ²½ÓÉPHY¸ºÔð¼ÆÊý£»
+T300, T301, T304 nor T311 is running:˵Ã÷´¦ÓÚRRCÁ¬½Ó½¨Á¢¡¢Öؽ¨¿ªÊ¼Ð¡ÇøËÑË÷¡¢Öؽ¨¡¢Çл»¹ý³ÌÖС£
+ÎïÀí²ãÐèҪȷ¶¨ÕâЩ״̬¡£ÕâЩ״̬ʱ£¬ÎïÀí²ã²»ÐèҪͳ¼ÆºÍÉϱ¨Ê§²½¡£
+½¨ÒéÎïÀí²ãÔÚ´ÓÕâЩÔÝ̬½øÈëCOMM̬Õâ¸öÎȶ¨Ì¬ºó£¬¶Ôʧ²½¼ÆÊýÇåÁãһϡ£
+
+typedef struct
+{
+} T_zPS_LTE_P_OutOfSyc_Ind;
+*/
+
+/*
+RRCÁ¬½Ó״̬£¬PHY½øÈëʧ²½×´Ì¬ºó£¬ÈÔÈ»ÐèÒªÒ»Ö±¼à²âÎÞÏßÁ´Â·µÄÐźÅÖÊÁ¿£¬
+µ±Âú×ã»Ö¸´Í¬²½Ìõ¼þʱ£¬Éϱ¨ÐÒéÕ»Á´Â·»Ö¸´Í¬²½¡££¨À뿪Á¬½Ó̬ºó£¬Ê§²½×´Ì¬ÒªÇå³ý£©
+
+typedef struct
+{
+} T_zPS_LTE_P_RecoverySync_Ind;
+*/
+
+/*
+ÔÚRRC½¨Á¢¹ý³ÌÖУ¬ÈôÒòÁ¬½Ó±»¾Ü¡¢T300³¬Ê±¡¢·¢ÉúÐ¡ÇøÖØÑ¡µÈÒòËØ£¬µ¼Ö½¨Á´Ê§°Ü£¬
+Ôò·¢Ë͸ÃÏûÏ¢RESETÎïÀí²ã¡£
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding1;
+} T_zPS_LTE_P_MAC_Reset_Req;
+
+/*
+ECER֪ͨEPHYÊÍ·Å×ÊÔ´¼°ÅäÖã¬Í£Ö¹Ñ°ºô£¬À뿪פÔú״̬
+*/
+typedef struct
+{
+ WORD wMsgId;
+ /* ¸Ã×ֶαíʾÊÍ·Å×ÊÔ´µÄͬʱ£¬ÊÇ·ñÐèÒªÊÍ·ÅRF
+ wRelRfFlg = 1±íʾÐèÒª·ÅÉ䯵£¬
+ wRelRfFlg = 0±íʾ²»ÐèÒªÊÍ·ÅÉ䯵£¬½öÊÍ·Å×ÊÔ´*/
+ WORD wRelRfFlg;
+
+ /* ¸Ã×ֶαíʾÔÚÊÍ·ÅÎïÀí²ãÅäÖÃʱ£¬ÊÇ·ñÐèÒª±£Áô·þÎñÐ¡Çø¶¨Ê±ÐÅÏ¢£¬ÔÚwRelRfFlg==0ʱÓÐЧ
+ wKeepServCellFlg = 0±íʾÐèÒªÊÍ·ÅËùÓÐ×ÊÔ´ÅäÖã¬
+ wKeepServCellFlg = 1±íʾ²»ÐèÒªÊÍ·ÅÐ¡ÇøÐÅÏ¢£¬ÓÃÓÚÁ¬½Ó̬»Øidleʱ¿ìËÙפÁô*/
+ WORD wKeepServCellFlg;
+ WORD wPadding;
+} T_zPS_LTE_P_Rel_Req;
+
+/*
+EPHY´¦ÀíÍêZPS_LTE_P_REL_REQ_EvÏûÏ¢ºó·´À¡´ËÈ·ÈÏÏûÏ¢
+
+typedef struct
+{
+} T_zPS_LTE_P_Rel_Cnf;
+*/
+
+
+
+/**************************************************************************
+ * EUMACÓëEPHYµÄ½Ó¿Ú *
+ **************************************************************************/
+
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..15)£¬È±Ê¡Ê±£¬Ìîд0xFF
+ µÈͬÐÒé²ÎÊý£º321.5.1.2 ra-PRACH-MaskIndex (PRACH Mask Index)
+ ²ÎÊýÓÃ;£ºÍøÂç²àÃ÷È·Ö¸¶¨preamble·¢ËÍprach resource selectionÐÅÏ¢¡£
+ */
+ WORD wRaPrachMaskIndex;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..63) £¬È±Ê¡Ê±£¬Ìîд0xFF
+ µÈͬÐÒé²ÎÊý£º321.5.1.2 ra-PreambleIndex (Random Access Preamble)
+ ²ÎÊýÓÃ;£ºÍøÂç²àÃ÷È·Ö¸¶¨preamble·¢ËÍÐòÁÐIDÐÅÏ¢¡£
+ */
+ WORD wPreamId;
+ /*
+ ȡֵ·¶Î§£ºËæ»ú½ÓÈëµÄÀàÐÍ£¬0±íʾ·Ç¾ºÕùËæ»ú½ÓÈ룬
+ 1±íʾ¾ºÕù½â¾öÉÏÐз¢ËÍÄÚÈÝΪC-RNTI¿ØÖÆÐÅÔª£¬2±íʾUL CCCHÊý¾Ý;
+ 3 ±íʾ×ÔÖ÷Çл»µÄ״̬±¨¸æ£»4 ±íʾ¼¯ÈºLTE UL CCCHÉÏÊý¾Ý£¬²»ÐèÒªMSG4.
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÐÒéÕ»¸æÖªÎïÀí²ãµ±Ç°·¢ÆðµÄËæ»ú½ÓÈë¹ý³ÌµÄÀàÐÍ¡£
+ */
+ WORD wRaType;
+ /*
+ ȡֵ·¶Î§£º
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º DZÔÚµÄÏûÏ¢³¤¶È£¬ÓÃÓÚPHYÈ·¶¨Ç°µ¼×éA/B¡£
+ */
+ WORD wMsgSize;
+ /*
+ ȡֵ·¶Î§£ºËæ»ú½ÓÈë¹ý³ÌÓÉË·¢Æð£¬0±íʾÉϲãÐÒéÕ»·¢Æð£¬1±íʾÎïÀí²ã·¢Æð
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º±íÊ¾Ëæ»ú½ÓÈë¹ý³Ì·¢ÆðÕß¡£
+ */
+ WORD wInitRA;
+ /*
+ ȡֵ·¶Î§£ºÊÇ·ñresetÏà¹ØµÄ²ÎÊý£¬Èç·¢Ë͹¦ÂÊ£¬Ç°µ¼·¢ËͼÆÊý¡£1ΪRESET£¬0Ôò²»ÐèÒªRESET
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º±íʾÊÇ·ñÖØÖÃËæ»ú½ÓÈë¹ý³ÌÏà¹Ø²ÎÊý¡£
+ */
+ WORD wResetPara;
+ /*
+ 20100309 added by hongjb
+ Èç¹ûÊÇPDCCHÃüÁî·¢ÆðµÄËæ»ú½ÓÈë¹ý³Ì£¬
+ °Ñ10.1.4ÏûÏ¢ÖеÄ×ÓÖ¡ºÅÔÙ·¢¸øPHY,
+ ·ñÔòÏ·¢ÎÞЧֵ0XFFFF ÓÐЧ×ÓÖ¡ºÅ·¶Î§0-10240
+ */
+ WORD wSubFN;
+} T_zPS_LTE_P_Access_Req;
+
+typedef struct
+{
+ /*
+ 1:·Ç¾ºÕù½ÓÈë³É¹¦
+ 2:¾ºÕù½ÓÈë³É¹¦
+ 3:¾ºÕù¶¨Ê±Æ÷³¬Ê±Ê§°Ü
+ 4:ǰµ¼·¢ËÍ´ïµ½×î´óÖµ:preamble_trans_counter = preambleTransMax+1
+ */
+ WORD wResult;
+ WORD wPreamCnt;
+ /*
+ ȡֵ·¶Î§£ºBIT STRING (SIZE (16))
+ µÈͬÐÒé²ÎÊý£º331.6.3.6 C-RNTI
+ ²ÎÊýÓÃ;£º¾ºÕù½â¾ö³É¹¦T-CRNTIÉý¼¶ºó£¬PHY½«CRNTIÉϱ¨¸øPS¡£Ã»ÓÐCRNTIÉϱ¨Ê±£¬Ð´Èë0xFFFF¡£
+ */
+ WORD wCRnti;
+ WORD wPadding;
+} T_zPS_LTE_P_Access_Cnf;
+
+typedef struct
+{
+ WORD wMsgId;
+ /* 2010309ÐÂÔö²ÎÊý
+ ×ÓÖ¡ºÅ£¬ÓÐЧֵ0-10240£¬ÎÞЧֵΪ0XFFFF
+ ÕâÀïдÈëÊÕµ½ÏÂÐÐMSG4Êý¾ÝʱµÄ×ÓÖ¡ºÅ
+ */
+ WORD wSubFN;
+} T_zPS_LTE_P_AbortAccess_Req;
+
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0~15£¬ 0xFFΪÎÞЧֵ
+ µÈͬÐÒé²ÎÊý£º321.5.1.2 ra-PRACH-MaskIndex (PRACH Mask Index)
+ ²ÎÊýÓÃ;£ºÍøÂç²àÃ÷È·Ö¸¶¨preamble·¢ËÍprach resource selectionÐÅÏ¢
+ */
+ WORD wRaPrachMaskIndex;
+ /*
+ ȡֵ·¶Î§£ºINTEGER (0..63)
+ µÈͬÐÒé²ÎÊý£º321.5.1.2 ra-PreambleIndex (Random Access Preamble)
+ ²ÎÊýÓÃ;£ºÍøÂç²àÃ÷È·Ö¸¶¨preamble·¢ËÍÐòÁÐIDÐÅÏ¢¡£
+ */
+ WORD wPreamId;
+ //WORD wPadding; 2010309 ½Ó¿ÚÎĵµÉ¾³ý
+ /* 2010309ÐÂÔö²ÎÊý
+ ×ÓÖ¡ºÅ£¬ÓÐЧֵ0-10240£¬ÎÞЧֵΪ0XFFFF
+ ÊÕµ½PDCCHÃüÁîʱµÄ×ÓÖ¡ºÅ
+ */
+ WORD wSubFN;
+ WORD wPadding;
+} T_zPS_LTE_P_MacInitRa_Req;
+
+/*
+psά»¤TA Timer£¬Ä¿Ç°MAC½öÔÚTA TIMER³¬Ê±Í£Ö¹Ê±£¬·¢ËÍZPS_LTE_P_TA_TIMER_STOP_IND_EvÏûÏ¢¡£
+PHYÊÕµ½ZPS_LTE_P_TA_CMD_REQ_Ev£¬ÈÏΪTA TIMERÖØÐÂÆô¶¯
+*/
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ȡֵ·¶Î§£º0£¬1¡£0£º6¸öbit£¬TA¿ØÖÆÐÅÔªÖÐÊÕµ½£»
+ 1£º11¸öbit, Ëæ»ú½ÓÈëÏìÓ¦ÖÐÊÕµ½¡£
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£º±íʾTAÖ¸ÁîÀ´Ô´¡£
+ */
+ WORD wTACmdType;
+ /*
+ ȡֵ·¶Î§£ºÔÚËæ»ú½ÓÈëÏìÓ¦ÖУ¬³¤¶ÈΪ11¸ö±ÈÌØ£»ÔÚTA¿ØÖÆÐÅÔªÖУ¬³¤¶ÈΪ6¸ö±ÈÌØ¡£
+ µÈͬÐÒé²ÎÊý£ºTiming Advance Command£¬RARÖеÄTA»òÕßMAC¿ØÖÆÐÅÔª
+ ²ÎÊýÓÃ;£ºÊ±¼äͬ²½ÃüÁîÖµ
+ */
+ WORD wTimeAdvance;
+
+ /* 20120101 ²ÎÊýÐÞ¸Äȡֵ·¶Î§Îª0~10240, Ö¡ºÅ*10+×ÓÖ¡ºÅ
+ ȡֵ·¶Î§£º0~10240
+ µÈͬÐÒé²ÎÊý£º
+ ²ÎÊýÓÃ;£ºPSÊÕµ½TAÖµµÄʱ¼ä£¬¸Ãʱ¼ä֪ͨ¸øPHY£¬
+ ÓÃÓÚPHYÈ·¶¨TAµÄ½ÓÊÕʱ¼äµÚN×ÓÖ¡ÒÔÈ·±£ÔÚµÚN+6×ÓÖ¡µ÷ÕûÉÏÐз¢ËͶ¨Ê±¡£
+ */
+ WORD wSubFN;
+} T_zPS_LTE_P_TaCmd_Req;
+
+/*
+MAC֪ͨEPHYÖ´ÐÐDRXÃüÁî
+>Í£Ö¹On Duration TimerºÍDRX inactivity Timer¡£
+>Èç¹ûÅäÖÃÁ˶ÌDRXÖÜÆÚ£¬Ôò¿ªÊ¼Æô¶¯¶ÌDRXÖÜÆÚ£¬ÇÒÆô¶¯¶ÌDRXÖÜÆÚ¶¨Ê±Æ÷£»
+·ñÔòÆô¶¯³¤DRXÖÜÆÚ¡£¶ÌDRXÖÜÆÚ¶¨Ê±Æ÷³¬Ê±£¬½øÈ볤DRXÖÜÆÚ´¦Àí¡£
+*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding1;
+} T_zPS_LTE_P_DrxCmd_Req;
+
+typedef struct
+{
+ WORD wMsgId;
+ /*
+ ȡֵ·¶Î§£º0Ϊֹͣ,1ΪÔËÐÐ
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºTA¶¨Ê±Æ÷ÓÉPSά»¤£¬PSÏòEPHY֪ͨTA¶¨Ê±Æ÷Í£Ö¹µÄÔÒò¡£
+ */
+ WORD wCause;
+} T_zPS_LTE_P_TATimerStop_Ind;
+
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º11bit
+ µÈͬÐÒé²ÎÊý£º321.4.2.3 timing advance command TA
+ ²ÎÊýÓÃ;£ºRARÕýÈ·½âÂëºó£¬½«TAÐÅÏ¢·¢Ë͸øMAC¡£ÓÃÓÚµ÷ÕûÉÏÐд«Êäʱ¼ä¡£
+ */
+ WORD wTACmd;
+ /*
+ 20100309 ÐÂÔö²ÎÊý by hongjb
+ EPHYÊÕµ½Ëæ»ú½ÓÈëÏìӦʱµÄ×ÓÖ¡ºÅ0-10240£¬0XFFFFΪÎÞЧֵ
+ */
+ WORD wSubFN;
+} T_zPS_LTE_P_RaResponse_Ind;
+
+typedef struct
+{
+ /*
+ ȡֵ·¶Î§£º0~499
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾MAC PDU BUF³ØÖеÄBUFµÄindex£¬Ò²¾ÍÊÇHARQ½ø³Ì¶ÔÓ¦µÄbufferµØÖ·
+ */
+ //WORD wMacPduBufIndex;
+ WORD wSubFN;
+ /*
+ ȡֵ·¶Î§£º1£¬2
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾´Ë´ÎÓм¸¸ö´«Êä¿é
+ */
+
+ WORD wTbNum;
+ WORD awMacPduBufIndex[ZPS_LTE_P_MAX_TB_NUM];
+
+ WORD awMacPduLen[ZPS_LTE_P_MAX_TB_NUM];
+ /*
+ ȡֵ·¶Î§£ºTBD
+ µÈͬÐÒé²ÎÊý£ºÎÞ
+ ²ÎÊýÓÃ;£ºÖ¸Ê¾Ã¿¸öMAC PDU´æ·ÅµÄµØÖ·
+ */
+
+ PBYTE apbMacPduData[ZPS_LTE_P_MAX_TB_NUM];
+} T_zPS_LTE_P_DlSchData_Ind;
+
+/*KangShuJie Start*/
+
+/******************************************************
+ ·½Ïò:L1E->EPHY
+ ¹¦ÄÜ:³õʼ»¯É䯵(²¢·Ç¹¤×÷)£¬Çå¿ÕÎïÀí²ã×ÊÔ´ºÍͬ²½ÐÅÏ¢¡£ÓÃÓÚ¿ª»úÉ䯵³õʼ»¯ºÍ½øÈë·ÉÐÐģʽ¡£
+ ÏûÏ¢£ºLTE_P_RESET_REQ_EV
+ ½á¹¹:T_zPS_LTE_P_Reset_Req
+******************************************************/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zLTE_P_Reset_Req;
+/******************************************************
+ ·½Ïò:EPHY->L1E
+ ¹¦ÄÜ:¶ÔLTE_P_RESET_REQ_EvµÄÏìÓ¦ÏûÏ¢¡£Ìæ´úLTEµ¥Ä£Ê±¶¨ÒåµÄZPS_LTE_P_SWITCH_RF_CNF_Ev
+ ÏûÏ¢:LTE_P_RESET_CNF_Ev.
+ ½á¹¹:NULL
+******************************************************/
+
+/******************************************************
+ ·½Ïò:EPHY->L1E
+ ¹¦ÄÜ:LTEΪÖ÷µÄʱºò,EPHYÉϱ¨¿ÕÏÐʱ¼ä,Ŀǰ½öÓÃÓÚIDLE̬Ï£¬²¢ÇÒÉϱ¨µÄ¿ÕÏÐʱ¼äÒѾ¿Û³ýÁËEPHYÓÃÓÚ
+ ͬƵºÍÒìÆµ²âÁ¿ËùʹÓõÄʱ¼äºÍEPHY¹Ø±ÕÉ䯵ËùºÄ·ÑµÄʱ¼ä
+ ÏûÏ¢:LTE_P_INACTIVE_TIME_IND_EV
+ ½á¹¹:T_zLTE_P_InactiveTime_Ind
+******************************************************/
+typedef struct
+{
+ WORD wGapStartSfn; /*¿ÕÏÐʱ¼äµÄ¿ªÊ¼Ö¡ºÅ*/
+ WORD wGapStartSubframe; /*¿ÕÏÐʱ¼äµÄ¿ªÊ¼×ÓÖ¡ºÅ*/
+ WORD wGapStartTs; /*¿ÕÏÐʱ¼äµÄ¿ªÊ¼TSÆ«ÒÆ*/
+ WORD wGapMsLen; /*¿ÕÏÐʱ¼äµÄºÁÃë¼¶³¤¶È*/
+ WORD wGapTsLen; /*¿ÕÏÐʱ¼äÖв»×ã1MSµÄTS³¤¶È*/
+ WORD wPadding;
+} T_zLTE_P_InactiveTime_Ind;
+
+/******************************************************
+ ·½Ïò:L1E->EPHY
+ ¹¦ÄÜ:ÉèÖÃEPHYÖ÷¸¨Ä£Ê½
+ ÏûÏ¢:LTE_P_SET_MODE_REQ_EV
+ ½á¹¹:T_zLTE_P_SetMode_Req
+******************************************************/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wIsMaster; /*1:ÉèÖÃΪÖ÷ģʽ;0:ÉèÖÃΪ¸¨Ä£Ê½*/
+} T_zLTE_P_SetMode_Req;
+/**************************************************************************
+ ·½Ïò:L1E->EPHY
+ ¹¦ÄÜ:LTEÖ÷ģʽÏÂCONNECTED̬£¬L1E½«µ±Ç°µÄ²âÁ¿GAPģʽÅäÖøøÎïÀí²ã²¢Ö¸Ê¾GAPÐòÁÐÖÐÄÇЩGAPÓÃÓÚLTEµÄ²âÁ¿
+ ÏûÏ¢:LTE_P_IRAT_MEAS_GAP_CONFIG_REQ_EV
+ ½á¹¹:T_zLTE_P_IratMeasGapConfig_Req
+ **************************************************************************/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wActive; /* GAPµÄ¼¤»îָʾ£¬0±íʾȥ»î£¬1±íʾ¼¤»î */
+ WORD wStartSfn; /* GAPÐòÁÐÄ£ÐÍµÄÆðʼSFNºÅ */
+ WORD wStartSubframe; /* GAPÐòÁÐÄ£ÐÍµÄÆðʼ×ÓÖ¡ºÅ */
+ WORD wLength; /* GAPµÄ³¤¶È£¬µ¥Î»ÊÇ×ÓÖ¡£¨ms£©,Ŀǰ¹Ì¶¨Îª6ms */
+ WORD wPeriod; /* GAPµÄÖØ¸´ÖÜÆÚ£¬µ¥Î»ÊÇ×ÓÖ¡£¨ms£©*/
+ WORD wLteGapPeriod; /* ÓÃÓÚLTE²âÁ¿µÄGAPÖØ¸´ÖÜÆÚ£¬µ¥Î»ÊÇ×ÓÖ¡£¨ms£©´Ó±¾ÅäÖõÄbStartSfn¡¢wStartSubframe¹æ¶¨µÄGAP¿ªÊ¼£¬Ã¿¸ôwLteGapPeriodµÄGAPÊÇÓÃÓÚLTE²âÁ¿µÄ*/
+ WORD wPadding;
+}T_zLTE_P_IratMeasGapConfig_Req;
+
+/*KangShuJie End*/
+
+
+/**************************************************************************
+ * Óû§ÃæÏà¹Ø½Ó¿Ú *
+ **************************************************************************/
+
+/*
+PHYÊÕµ½ÉÏÐÐÊÚȨʱÔÚMACµ÷¶ÈÐÅÏ¢BUF£¨¼´PS-PHY½»»»Çø£©Öдæ·ÅÉÏÐе÷¶ÈÐÅÏ¢£¬
+²¢²úÉúMACÉÏÐе÷¶ÈÖжϴ¥·¢PS´ÓMACµ÷¶ÈÐÅÏ¢BUFÖÐÈ¡×ß´ËÉÏÐе÷¶ÈÐÅÏ¢Ö´ÐÐMACÉÏÐд¦ÀíÁ÷³Ì¡£
+ÿ¸ö×ÓÖ¡Öжϣ¬Ò²ÐèҪͨ¹ý´Ëº¯ÊýָʾMAC£¬½øÐÐÿ¸ö×ÓÖ¡µÄÐÒé´¦Àí£¨Èç¹ûûÓÐÉÏÐе÷¶È£¬ÔòÊÚȨÀàÐÍΪ0£©
+*/
+#define ZPS_LTE_P_MAX_CELL_NUM 2
+typedef struct
+{
+ WORD wCellIndex;
+ WORD wPucchTrans;
+ WORD wUlSchedType[2];
+ WORD wUlGrantTbSize[2];
+ WORD wIsSpsActivated;
+ WORD wPowerHeadRoomType1;
+ WORD wPathLoss;
+ WORD wPowerBackoff;
+ WORD wPowerHeadRoomType2;
+ WORD wPcmaxC;
+ PBYTE pbUlDataPtr[2];
+}T_zPS_LTE_P_UlSchedInfoInd;
+
+typedef struct
+{
+ WORD wUlSchInfoCnt;
+ WORD wPadding;
+ PBYTE pbUlCtrlInfoPtr;
+ T_zPS_LTE_P_UlSchedInfoInd tUlSchInfoArray[ZPS_LTE_P_MAX_CELL_NUM];
+} T_zPS_LTE_P_ExtendedUlSchedInfoInd;
+
+
+/*
+µ±ÓÐÉÏÐÐÊÚȨÓÃÓÚÐÂÊý¾Ý·¢ËÍ£¬PS×éÖ¡ºó»áÏòMACµ÷¶ÈÐÅÏ¢BUFдÈëÉÏÐз¢ËÍ¿ØÖÆÏûÏ¢£¬
+²¢´¥·¢EDCPÓ²¼þ£¬°áÔËÊý¾Ýµ½¶ÔÓ¦HARQ ramÖС£
+µ±Ã»ÓÐÉÏÐÐÊÚȨÓÃÓÚÐÂÊý¾Ý·¢ËÍÇÒÓÐSR´¥·¢Ê±£¬Í¨¹ý´Ë½Ó¿Ú´¥·¢ÎïÀí²ãµÄSR·¢Ë͹ý³Ì¡£
+*/
+
+typedef struct
+{
+ WORD wCellIndex;
+ WORD wPadding;
+ WORD wSendType[2];
+ WORD wDataValid[2];
+ WORD wDataSendSize[2];
+ PBYTE pbDataSrc[2];
+} T_zPS_LTE_P_UlDataSendCtrlInfo;
+
+typedef struct
+{
+ T_zPS_LTE_P_UlDataSendCtrlInfo atUlDataSendCtrlInfoArray[ZPS_LTE_P_MAX_CELL_NUM];
+ WORD wUlDataSendCtrlInfoCnt;
+ WORD wPadding;
+} T_zPS_LTE_P_ExtendedUlDataSendCtrlInfo;
+
+
+/*
+PHY³É¹¦½âÂëÏÂÐÐÊý¾Ýºó£¬½«µÃµ½ÕâЩÊý¾ÝµÄÀàÐÍ£¬³¤¶È£¬´æ·ÅλÖõÈÐÅÏ¢£¬
+ÕâЩÐèҪ֪ͨPSÒÔ±ã¶ÔÕâЩÊý¾Ý×÷ºóÐøµÄ´¦Àí¡£
+PHYÐèÒª¸ù¾ÝRNTIÀàÐÍÇø·ÖÊý¾ÝµÄÀàÐÍ£¬PHYÒ²ÐèҪά»¤»·Ðλº³åÇøµÄË÷Òý¡£
+*/
+typedef struct
+{
+ WORD wSubFN;
+ WORD wTbNum;
+ WORD awBufIndex[ZPS_LTE_P_MAX_TB_NUM];
+ WORD awTbLen[ZPS_LTE_P_MAX_TB_NUM];
+ PBYTE apbMacPduData[ZPS_LTE_P_MAX_TB_NUM];
+} T_zPS_LTE_P_DlDataRecvCtrlInfo;
+
+
+typedef struct
+{
+ WORD wStartSysFrameNum;
+ WORD wStartSubFrameNum;
+ WORD wSleepTimeLen;
+ WORD wPadding;
+}T_zPS_LTE_P_SleepTime_Ind;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wKeepAwakeTime;/*µ¥Î»MS£¬ÎïÀí²ã»½ÐÑÆäTPU£¬²¢´ÓÊÕµ½¸ÃÐÅÏ¢¿ªÊ¼ÐèÒª±£³ÖÆäTPU wKeepAwakeTime MSÄÚ²»ÒªÔٴνøÈë˯Ãß*/
+}T_zPS_LTE_P_Wakeup_Req;
+
+/* ÓÃÓÚ±£´æ½âÂëºóµÄ SI ETWS PCH Êý¾ÝµÄ³¤¶ÈºÍ PROID */
+typedef struct
+{
+ WORD wDlBandWidth; /*Ð¡ÇøÏÂÐдø¿í£¬Éϱ¨sib1ºÍSIʱÌîд*/
+ WORD wPadding;
+ T_zPS_LTE_P_SinrResult tSinrRslt; /*¸ÃÐ¡ÇøµÄSINR£¬¹¤³ÌģʽɨƵÉϱ¨ÐèÇóÐÂÔö*/
+ WORD wTblen;
+ WORD wProcId; /* ÓÃÓÚϵͳÏûÏ¢Éϱ¨Ê±µÄÎÕÊÖÐÅÏ¢ */
+ PBYTE pbDlSiPCHData;
+}T_zPS_LTE_P_DlSiPCHDataRecvCtrlInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wActDeactSCellInfo;
+ WORD wSubFN;
+ WORD wPadding;
+}T_zPS_LTE_P_SCELL_Ctrl_Req;
+
+typedef struct
+{
+ WORD wNotifcRptCoeff;
+ WORD wNotifcOffset;
+ WORD wNotifcSfIndx;
+ WORD wPadding;
+}T_zPS_LTE_P_MbmsNotifcCfg;
+
+typedef struct
+{
+ WORD wMbsfnAreaId;
+ WORD wNonMbsfnRegnLen;
+ WORD wNotifcInd;
+ WORD wMcchRptPeriod;
+ WORD wMcchOffset;
+ WORD wMcchModiPeriod;
+ WORD wSfAllocInfo;
+ WORD wSigMCS;
+}T_zPS_LTE_P_McchCfgInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wMcchNum;
+ T_zPS_LTE_P_McchCfgInfo atMcchCfgList[Z_LTE_MAX_MBSFN_AREA_NUM_IN_CELL];
+ T_zPS_LTE_P_MbmsNotifcCfg tNotifcCfg;
+}T_zPS_LTE_P_McchCfgReq;
+
+typedef struct
+{
+ WORD wSfAllocEnd;
+ WORD wDataMCS;
+ WORD wMsp;
+ WORD wPadding;
+}T_zPS_LTE_P_PmchCfg;
+
+typedef struct
+{
+ WORD wPmchCfgNum;
+ WORD wPadding;
+ T_zPS_LTE_P_PmchCfg tPmchCfg[Z_LTE_P_MAX_PMCH_NUM];
+ DWORD dwUsedLochIdList[Z_LTE_P_MAX_PMCH_NUM];
+}T_zPS_LTE_P_PmchInfoList;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wMbsfnAreaId;
+ WORD wCommSfAllocPeriod;
+ WORD wPadding;
+ T_zPS_LTE_P_MbsfnSubframeConfigList tCommSfAlloc;
+ T_zPS_LTE_P_PmchInfoList tPmchInfoList;
+}T_zPS_LTE_P_MtchCfgReq;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wMbsfnAreaId;
+ DWORD dwUsedLochIdList[Z_LTE_P_MAX_PMCH_NUM];
+}T_zPS_LTE_P_MtchMaskSetReq;
+
+typedef struct
+{
+ WORD wMbsfnAreaId;
+ WORD wRelMcch;
+ WORD wRelMtch;
+ WORD wPadding;
+}T_zPS_LTE_P_PmchRelInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wRelNum;
+ T_zPS_LTE_P_PmchRelInfo atPmchRelList[Z_LTE_MAX_MBSFN_AREA_NUM_IN_CELL];
+}T_zPS_LTE_P_PmchRelReq;
+
+typedef struct
+{
+ WORD wLochId;
+ WORD wEndSf;
+}T_zPS_LTE_P_PmchSI;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wMbsfnAreaId;
+ WORD wPmchIndex;
+ WORD wMsiNum;
+ T_zPS_LTE_P_PmchSI tMsiList[Z_LTE_P_MAX_SESSION_NUM_IN_PMCH];
+}T_zPS_LTE_P_Msi_Req;
+
+typedef struct
+{
+ WORD wSubFN;
+ WORD wBufIndex;
+ WORD wMbsfnAreaId;
+ WORD wPmchIndex;
+ WORD wMcch;
+ WORD wTbLen;
+ PBYTE pbMCHPduData;
+}T_zPS_LTE_P_MCHRecvCtrlInfo;
+
+#ifdef BTRUNK_SUPPORT
+typedef struct
+{
+ /*±ØÑ¡²ÎÊý*/
+ WORD wSpsIntervalDl;
+ WORD wSpsRnti;
+
+ WORD wSetupFg;
+ /*ÓÉbSetupFgʹÄÜ*/
+ WORD wMCS;
+ WORD wVRBassignmentflag;
+ WORD wOffset;
+ WORD wIRV;
+ WORD wPadding;
+}T_zPS_LTE_P_BtrunkSpsConfigDl;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wSelfHoFg;
+ WORD wSubFrameAssign;
+ WORD wSpecialSubFramePatterns;
+ WORD wAntennaPortsCount;
+ WORD wDlEarfcn;
+ WORD wUlEarfcn;
+ WORD wPhyCellId;
+ WORD wGrnti;
+
+ WORD wBlerEnable;
+ WORD wBlerTrigger;
+ WORD wcqiProhibitTimer;
+
+ WORD wBtrunkPa;
+ WORD wEnableSpsFg;
+ T_zPS_LTE_P_BtrunkSpsConfigDl tBrunkSpsConfigDl;
+ WORD wBandWidth; // ȡֵ{6, 15, 25, 50, 75, 100}£¬È¡0xFFFFʱ,ÎïÀí²ãÑØÓÃÔÐ¡ÇøµÄÏÂÐдø¿í
+ WORD wPadding;
+}T_zPS_LTE_P_Btrunk_Ttch_ConfigInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wCfgType;
+ WORD wPadding;
+ WORD wGrnti;
+}T_zPS_LTE_P_Grnti_Config;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zPS_LTE_P_Dedicated_Rel;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zPS_LTE_P_BtrunkConfig_Rel;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+ WORD wCQI;
+ WORD wMCS;
+} T_zPS_LTE_P_BTUNK_CQI_IND;
+
+typedef struct
+{
+ WORD wDataLen;
+ WORD wPadding;
+ PBYTE pbBTPchData;
+} T_zPS_LTE_P_TPchData_Ind;
+
+#endif //ENDIF BTRUNK_SUPPORT
+typedef struct
+{
+ WORD wMsgId;
+ WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ */
+ WORD wMode; /* 0±íʾÉèÖã¬1±íʾ²éѯ */
+ WORD wVal1Fg; /* ±íʾVal1/Val2ÊÇ·ñ´æÔÚ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ */
+ WORD wVal2Fg;
+ WORD wPadding;
+ DWORD dwVal1; /* ²ÎÊý1/²ÎÊý2£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö */
+ DWORD dwVal2;
+}T_zPS_LTE_P_Zepcg_Req;
+
+typedef struct
+{
+ WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ£¬bMode=0/1¶¼ÓÐЧ */
+ WORD wMode; /* 0±íʾÉèÖöÔÓ¦µÄÏìÓ¦£¬´Ëʱ£¬ºóÐø²ÎÊýbRsltÓÐЧ£¬bVal2Fg£¬bVal1£¬bVal2¾ùÎÞЧ
+ 1±íʾ²éѯ¶ÔÓ¦µÄÏìÓ¦£¬´Ëʱ£¬ºóÐø²ÎÊýbRsltÎÞЧ£¬bVal2Fg£¬bVal1£¬bVal2¾ùÓÐЧ */
+ WORD wRslt; /* ±íʾÉèÖýá¹û£¬Z_TRUEÉèÖóɹ¦£¬Z_FALSEÉèÖÃʧ°Ü wMode=0ʱÓÐЧ */
+ WORD wVal1Fg[Z_ZEPCG_PARAM_NUM]; /*°´ÕÕϱêºÍdwValÖÐÖµÒ»Ò»¶ÔÓ¦£¬bVal1Fg[0]±íʾdwVal[0]ÊÇ·ñ´æÔÚ,ÒÀ´ÎÀàÍÆ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ*/
+
+ LONG dwVal[Z_ZEPCG_PARAM_NUM]; /*²ÎÊý1/²ÎÊý2¡£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö*/
+
+}T_zPS_LTE_P_Zepcg_Cnf;
+
+typedef struct {
+
+ WORD wMsgId;
+ WORD wPadding;
+ WORD wSim1Act;/*0-È¥»î,1-¼¤»î*/
+ WORD wSim2Act;/*0-È¥»î,1-¼¤»î*/
+}T_zPS_LTE_P_CardSwitch_Req;
+
+
+typedef struct {
+
+ WORD wResult;/*0-Z_SUCC,1-Z_FAIL*/
+ WORD wPadding;
+}T_zPS_LTE_P_CardSwitch_Cnf;
+
+typedef struct
+{
+ SHORT sIslandThresh;//¹ÂµºÃÅÏÞĬÈÏ-4
+ WORD wPadding;
+} T_zPS_LTE_Island_Ind;
+
+/*ƵµãƵ¶ÎÅäÖýṹ*/
+typedef struct
+{
+ WORD wSupported; /* ¸ÃƵ¶ÎÊÇ·ñÖ§³Ö0:²»Ö§³Ö,1:Ö§³Ö */
+ WORD wDlStratHz; /* ÏÂÐÐÆðʼƵÂÊ µ¥Î»ÊÇ 100K HZ */
+ WORD wDlEndHz; /* ÏÂÐÐÆðʼƵÂÊ µ¥Î»ÊÇ 100K HZ */
+ WORD wDuplexMode; /* ¸ÃƵ¶ÎË«¹¤Ä£Ê½0:ÎÞЧֵ1:FDD,2:TDD */
+ DWORD dwMinDlEarfcn; /* ×îСÏÂÐÐÆµµã */
+ DWORD dwMaxDlEarfcn; /* ×î´óÏÂÐÐÆµµã */
+ WORD wUlStratHz; /* ÉÏÐÐÆðʼƵÂÊ µ¥Î»ÊÇ 100K HZ */
+ WORD wUlEndHz; /* ÉÏÐÐÆðʼƵÂÊ µ¥Î»ÊÇ 100K HZ */
+ DWORD dwMinUlEarfcn; /* ×îСÉÏÐÐÆµµã */
+ DWORD dwMaxUlEarfcn; /* ×î´óÉÏÐÐÆµµã */
+}T_zPS_LTE_P_EutraBandInfo;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+ T_zPS_LTE_P_EutraBandInfo atEutraBandInfo[66];/*Êý×éÓëBAND¶ÔÓ¦£¬atEutraBandInfo[1]±£´æµÄÊÇBAND1µÄÐÅÏ¢£¬ÒÔ´ËÀàÍÆ*/
+ /* ȡֵҪÓë cpu_r7\platform\ps\src\com\inc\nvparam_ps.h ÖеÄZ_MAX_LTE_BAND_NUMºêÖµÒ»Ö */
+}T_zPS_LTE_P_EutraBandInfoList;
+
+
+/*==============================================================================
+ PS->EPHY
+ ʼþ£ºLTE_P_RPI_SET_REQ_EV
+ ¹¦ÄÜ:
+ ÉèÖÃEPHYʹÓõÄ×î´ó·¢É书ÂʵÄRPI VAULE
+==============================================================================*/
+typedef struct
+{
+ WORD wRpi; /* ÓÃÓÚË÷ÒýPUMAXµÄRPIµµÎ»£¬·¶Î§0/1/2 */
+ WORD wPad;
+}T_zPS_LTE_P_RpiSetReq;
+
+
+#define ZPS_LTE_P_RPI_SUPPORT_MAX_BAND (BYTE)12
+
+
+
+/*==============================================================================
+ PS->EPHY
+ ʼþ£ºLTE_P_RPI_CFG_REQ_EV
+ ¹¦ÄÜ:
+ ÅäÖÃLTEÏÂ12¸öBAND£¬Ã¿¸öBANDÏÂRPIºÍPUMAXµÄÓ³Éä¹ØÏµ£¬ÆäÖÐRPI·¶Î§0~2
+==============================================================================*/
+typedef struct
+{
+ T_zBandRpiCfg tLteBandRpiCfg[ZPS_LTE_P_RPI_SUPPORT_MAX_BAND];
+}T_zPS_LTE_P_RpiCfgReq;
+
+
+/*=======================================================================
+ OTDOA¶¨Î»¹¦ÄÜÐÂÔöPS-EPHY½Ó¿Ú(START)
+========================================================================*/
+#define OTDOA_MAX_NEIGHBOUR_CELL_CFG_NUM 8
+#define OTDOA_MAX_NEIGHBOUR_CELL_MEAS_NUM 8
+
+
+typedef struct
+{
+ WORD wPrsBandWidth;
+ WORD wPrsConfIdx;
+ WORD wPrsSubFrameNum;
+ WORD wPrsMutSeqPerd;
+ WORD wPOString;
+ WORD wPadding;
+}T_zPS_LTE_P_PrsInfo;
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wPci;
+ WORD wAntennaConfig;
+ WORD wCpLen;
+ WORD wPrsInfoFg;
+ T_zPS_LTE_P_PrsInfo tPrsInfo;
+}T_zPS_LTE_P_OTDOA_RefCellCfg;
+
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wPci;
+ WORD wAntennaConfig;
+ WORD wCpLen;
+ WORD wPrsInfoFg;
+ T_zPS_LTE_P_PrsInfo tPrsInfo;
+ WORD wSlotNumOffset;
+ WORD wSubFrameOffset;
+ WORD wExptRstd;
+ WORD wExptRstdUncertainty;
+}T_zPS_LTE_P_OTDOA_NCellCfg;
+
+
+typedef struct
+{
+ WORD wNCellNum;
+ WORD wPadding;
+ T_zPS_LTE_P_OTDOA_NCellCfg tOtdoaNCell[OTDOA_MAX_NEIGHBOUR_CELL_CFG_NUM];
+}T_zPS_LTE_P_OTDOA_NCellCfgList;
+
+
+typedef struct
+{
+ DWORD bErrResolution :2;
+ DWORD bErrVal :5;
+ DWORD bErrNumSamples: 3;
+ DWORD bPading :22;
+}T_zPS_LTE_P_OTDOA_MeasQua;
+
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wPci;
+ WORD wSFN;
+ T_zPS_LTE_P_OTDOA_MeasQua tRefQua;
+}T_zPS_LTE_P_OTDOA_RefMeasInfo;
+
+typedef struct
+{
+ DWORD dwEarfcn;
+ WORD wPci;
+ WORD wRstd;
+ T_zPS_LTE_P_OTDOA_MeasQua tRstdQua;
+}T_zPS_LTE_P_OTDOA_NCellMeasInfo;
+
+
+typedef struct
+{
+ DWORD wNCellNum;
+ T_zPS_LTE_P_OTDOA_NCellMeasInfo tNCellMeasInfo[OTDOA_MAX_NEIGHBOUR_CELL_MEAS_NUM];
+}T_zPS_LTE_P_OTDOA_NCellMeasList;
+
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPeriodMeasFg;
+ WORD wRptTimerLen;
+ WORD wPading;
+ T_zPS_LTE_P_OTDOA_RefCellCfg tOtdoaRefCell;
+ T_zPS_LTE_P_OTDOA_NCellCfgList tOtdoaNCellList;
+}T_zPS_LTE_P_OtdoaConfig_Req;
+
+
+
+typedef struct
+{
+ T_zPS_LTE_P_OTDOA_RefMeasInfo tRefMeasInfo;
+ T_zPS_LTE_P_OTDOA_NCellMeasList tNCellMeasList;
+}T_zPS_LTE_P_OtdoaMeas_Rlt;
+
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPading;
+}T_zPS_LTE_P_OtdoaMeas_Abort;
+
+
+/*=======================================================================
+ OTDOA¶¨Î»¹¦ÄÜÐÂÔöPS-EPHY½Ó¿Ú(END)
+========================================================================*/
+
+
+
+/*=======================================================================
+ 230AÐÂÔöPS-EPHY½Ó¿Ú(START)
+========================================================================*/
+typedef struct
+{
+ WORD CurUtcYear;
+ WORD CurUtcMonth;
+ WORD LastUtcYear;
+ WORD LastUtcMonth;
+ WORD FactoryCaliUtcYear;
+ WORD FactoryCaliUtcMonth;
+ SINT32 C0;
+ WORD Cnt;
+}T_C0CaliInfo; //PHY->PS
+
+typedef struct
+{
+ WORD Year;
+ WORD Month;
+ T_C0CaliInfo tC0CaliInfo;
+}T_zPs_Phy_UtcInfo; //PS SAVE IRAM
+
+
+/* PHY-->PS */
+typedef struct {
+ DWORD dwMCS;
+ DWORD dwAckCnt;
+ DWORD dwNackCnt;
+}T_zPs_Phy_UlParam;
+
+
+
+
+/*=======================================================================
+ 230A¹¦ÄÜÐÂÔöPS-EPHY½Ó¿Ú(END)
+========================================================================*/
+
+
+
+
+
+
+#ifndef _OS_WIN
+
+/***************************************************************************************************************************************
+New Define
+***************************************************************************************************************************************/
+
+/*ºË¼äͬ²½FLAG */
+#define CTRL_INFO_INTER_CORE_SYNC_ADDR IRAM_BASE_ADDR
+
+/* SRAMÔ¤Áô10K(ÒÑʹÓÃ8576×Ö½Ú)ÓÃÓÚPSÓëEPHY½»»¥PCH/SI/ETWS/ULGRANT*/
+
+#define CTRL_INFO_PS_EPHY_ADDR_BASE IRAM_BASE_ADDR_LTE
+
+#define ZPS_LTE_GET_ULSCHEDIND_PTR CTRL_INFO_PS_EPHY_ADDR_BASE //mac
+
+#define CTRL_INFO_LTE_ULSCHEDIND_ADDR ZPS_LTE_GET_ULSCHEDIND_PTR //PHY
+
+#define CTRL_INFO_LTE_ULDATASEND_ADDR (sizeof(T_zPS_LTE_P_ExtendedUlSchedInfoInd) + ZPS_LTE_GET_ULSCHEDIND_PTR)
+#define CTRL_INFO_LTE_ULSRSEND_ADDR (sizeof(T_zPS_LTE_P_ExtendedUlDataSendCtrlInfo)*8 + CTRL_INFO_LTE_ULDATASEND_ADDR)
+
+//#ifdef LTE_R10_DEFAULT_SUPPORT
+//#define CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXOUT_ADDR (sizeof(T_zPS_LTE_P_ExtendedUlDataSendCtrlInfo) + CTRL_INFO_LTE_ULDATASEND_ADDR)
+//#else
+//#define CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXOUT_ADDR (sizeof(T_zPS_LTE_P_UlDataSendCtrlInfo) + CTRL_INFO_LTE_ULDATASEND_ADDR)
+//#endif
+
+/*largeDLMacPduBuf*/
+#define CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXOUT_ADDR ((4>>CPU_SHIFT) + CTRL_INFO_LTE_ULSRSEND_ADDR)
+
+#define CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXIN_ADDR ((2>>CPU_SHIFT) + CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXOUT_ADDR)
+
+#define ZPS_LTE_GET_FREE_LARGEPDU_IDXARRAY_PTR ((4>>CPU_SHIFT) + CTRL_INFO_LTE_LARGEDLMACPDUBUF_IDXOUT_ADDR)
+
+/*smallDlMacPduBuf*/
+
+#define CTRL_INFO_LTE_SMALLDLMACPDUBUF_IDXOUT_ADDR (((Z_EUMAC_DL_LARGEPDU_BUF_NUM*2)>>CPU_SHIFT) + ZPS_LTE_GET_FREE_LARGEPDU_IDXARRAY_PTR)
+
+#define CTRL_INFO_LTE_SMALLDLMACPDUBUF_IDXIN_ADDR ((2>>CPU_SHIFT) + CTRL_INFO_LTE_SMALLDLMACPDUBUF_IDXOUT_ADDR)
+
+#define ZPS_LTE_GET_FREE_SMALLPDU_IDXARRAY_PTR ((4>>CPU_SHIFT) + CTRL_INFO_LTE_SMALLDLMACPDUBUF_IDXOUT_ADDR)
+
+//#define DATA_BUF_LTE_PCH_ADDR (((Z_EUMAC_DL_SMALLPDU_BUF_NUM * 2)>>CPU_SHIFT) + ZPS_LTE_GET_FREE_SMALLPDU_IDXARRAY_PTR)
+//ZPS_LTE_GET_FREE_SMALLPDU_IDXARRAY_PTR֮ǰ´æµÄÊÇС¿éµÄË÷Òý£¬ÏÖÔÚ¸ÄΪС¿éÔ¤ÉêÇëµÄС¿éµØÖ·
+
+#define DATA_BUF_LTE_PCH_ADDR (((Z_EUMAC_DL_SMALLPDU_PRE_MALLOC_MAX * 4)>>CPU_SHIFT) + ZPS_LTE_GET_FREE_SMALLPDU_IDXARRAY_PTR)
+
+#define DATA_BUF_LTE_SI_BUF0_ADDR ((Z_LTE_P_MAX_PCH_BUF_SIZE>>CPU_SHIFT) + DATA_BUF_LTE_PCH_ADDR)
+#define DATA_BUF_LTE_SI_BUF1_ADDR ((Z_LTE_P_MAX_SI_BUF_SIZE>>CPU_SHIFT) + DATA_BUF_LTE_SI_BUF0_ADDR)
+#ifdef BTRUNK_SUPPORT
+#define DATA_BUF_LTE_TPCH_ADDR ((Z_LTE_P_MAX_SI_BUF_SIZE >>CPU_SHIFT)+ DATA_BUF_LTE_SI_BUF1_ADDR)
+#define DATA_BUF_LTE_ETWS_ADDR ((Z_LTE_P_MAX_PCH_BUF_SIZE>>CPU_SHIFT) + DATA_BUF_LTE_TPCH_ADDR)
+#else
+#define DATA_BUF_LTE_ETWS_ADDR ((Z_LTE_P_MAX_SI_BUF_SIZE>>CPU_SHIFT) + DATA_BUF_LTE_SI_BUF1_ADDR)
+#endif
+
+#define IND_MSG_LTE_ISLAND_ADDR ((Z_LTE_P_MAX_SI_BUF_SIZE>>CPU_SHIFT) + DATA_BUF_LTE_ETWS_ADDR)
+#define CTRL_INFO_LTE_SUBFRAMENUM_ADDR (sizeof(T_zPS_LTE_Island_Ind) + IND_MSG_LTE_ISLAND_ADDR)
+
+#define CTRL_INFO_LTE_HARQBUF_ADDR (sizeof(UINT32) + CTRL_INFO_LTE_SUBFRAMENUM_ADDR) //³¤¶È64×Ö½Ú£¬12»ò16¸öÏÂÐÐLTE HARQ BUF BLOCK ADDR£¬Ã¿¸öBLOCK´óС128KB
+
+#define CTRL_INFO_UTC_TIME_ADDR ((Z_LTE_P_HARQ_BUF_SIZE>>CPU_SHIFT) + CTRL_INFO_LTE_HARQBUF_ADDR) //sizeof(T_zPs_Phy_UtcInfo)
+
+#define CTRL_INFO_UL_PARAM_ADDR (sizeof(T_zPs_Phy_UtcInfo) + CTRL_INFO_UTC_TIME_ADDR) //sizeof(T_zPs_Phy_UlParam)
+
+
+
+/**************************************************************************
+ * PSµÄPDU BUFÕ¼ÓÃDDR ¿Õ¼ä *
+ **************************************************************************/
+#define MACPDU_BUF_LTE_DDR_ADDR (ICP_DATA_BASE_ADDR<<CPU_SHIFT)
+
+/* Á¬Ðø86¸öÏÂÐÐMAC PDU BUF(´ó¿é) */
+#define DATA_BUF_LTE_LARGE_DLMACPDUBUF_ADDR MACPDU_BUF_LTE_DDR_ADDR
+
+/*Á¬Ðø8¸öÉÏÐÐMAC PDU BUF 8*9696 Byte ,ÒÔ80KB¼ÆËã*/
+#define DATA_BUF_LTE_ULMACPDUBUF0_ADDR (DATA_BUF_LTE_LARGE_DLMACPDUBUF_ADDR + 0xC6F00)//9472*86+256
+
+/* ÉÏÐÐPDCP PDU BUF ½öPSʹÓà ---¸ÄΪ¶¯Ì¬ÉêÇ룬²»ÐèÒª */
+//#define DATA_BUF_LTE_ULPDCPPDUBUF_ADDR (DATA_BUF_LTE_ULMACPDUBUF0_ADDR + 0x13000) //9696*8+256
+//#define DATA_BUF_LTE_DLPDCPSDUBUF_ADDR (DATA_BUF_LTE_ULPDCPPDUBUF_ADDR + 0x1E100)//15*8200B+16B(padding)
+
+#define DATA_BUF_LTE_ULMACPDUBUF0_END_ADDR (DATA_BUF_LTE_ULMACPDUBUF0_ADDR + 0x13000) //9696*8+256
+
+
+//#endif //#if defined(_CHIP_ZX297520) || defined(_CHIP_ZX2804)??
+
+/* ÏÂÐÐPDCP SDU BUF */
+#define DATA_BUF_LTE_DLRLCSDUBUF_ADDR DATA_BUF_LTE_ULMACPDUBUF0_END_ADDR
+//#define DATA_BUF_LTE_DLRLCSDUBUF_ADDR (DATA_BUF_LTE_ULMACPDUBUF0_ADDR + 0x12900)
+#define DATA_BUF_LTE_LOGOUTPUT_1SBUF0_ADDR (DATA_BUF_LTE_DLRLCSDUBUF_ADDR + 0xC400)
+#define DATA_BUF_LTE_LOGOUTPUT_1SBUF1_ADDR (DATA_BUF_LTE_LOGOUTPUT_1SBUF0_ADDR + 0x1000)
+#define DATA_BUF_LTE_LOGOUTPUT_100MSBUF0_ADDR (DATA_BUF_LTE_LOGOUTPUT_1SBUF1_ADDR + 0x1000)
+#define DATA_BUF_LTE_LOGOUTPUT_100MSBUF1_ADDR (DATA_BUF_LTE_LOGOUTPUT_100MSBUF0_ADDR + 0x7850)
+#define DATA_BUF_LTE_LOGOUTPUT_40MSBUF0_ADDR (DATA_BUF_LTE_LOGOUTPUT_100MSBUF1_ADDR + 0x7850)
+#define DATA_BUF_LTE_LOGOUTPUT_40MSBUF1_ADDR (DATA_BUF_LTE_LOGOUTPUT_40MSBUF0_ADDR + 0x1518)
+#define DATA_BUF_LTE_LOGOUTPUT_40MSBUF2_ADDR (DATA_BUF_LTE_LOGOUTPUT_40MSBUF1_ADDR + 0x1518)
+#define DATA_BUF_LTE_LOGOUTPUT_40MSBUF3_ADDR (DATA_BUF_LTE_LOGOUTPUT_40MSBUF2_ADDR + 0x1518)
+
+#define ZPS_PHY_LTE_VALID_START_BUFFER_ADDR DATA_BUF_LTE_LARGE_DLMACPDUBUF_ADDR
+#define ZPS_PHY_LTE_VALID_END_BUFFER_ADDR DATA_BUF_LTE_ULMACPDUBUF0_END_ADDR - 4
+//#define ZPS_PHY_LTE_VALID_END_BUFFER_ADDR Z_UPLINK_LTE_PDCP_PDU_BASE_ADDR
+
+#define DATA_PS_EPHY_UL_DATA_PROTECT_FLAG_ADDR (ZPS_PHY_LTE_VALID_END_BUFFER_ADDR)
+
+/* ÏÂÐÐÊý¾ÝÀàÐÍ*/
+#define ZPS_LTE_DLDATATYPE_PCH 1
+#define ZPS_LTE_DLDATATYPE_SI0 2
+#define ZPS_LTE_DLDATATYPE_SI1 4
+#define ZPS_LTE_DLDATATYPE_PDU 8
+#define ZPS_LTE_DLDATATYPE_ETWS 16
+
+#ifdef BTRUNK_SUPPORT
+#define ZPS_LTE_GET_TPCHBUF_PTR (PBYTE) DATA_BUF_LTE_TPCH_ADDR
+#endif
+
+#define ZPS_LTE_GET_HFN (*(volatile UINT32 *)(CTRL_INFO_LTE_SUBFRAMENUM_ADDR))
+
+#define ZPS_LTE_SET_PS_EPHY_UL_DATA_PROTECT_FLAG (*(volatile UINT32 *)(DATA_PS_EPHY_UL_DATA_PROTECT_FLAG_ADDR) = 0x5a5a5a5a)
+
+#define ZPS_PHY_INTER_CORE_SYNC_FLAG (*(volatile UINT32 *)(CTRL_INFO_INTER_CORE_SYNC_ADDR))
+
+
+#endif//#ifndef _OS_WIN
+
+#endif /*_PS_EPHY_INTERFACE_H*/