zte's code,first commit
Change-Id: I9a04da59e459a9bc0d67f101f700d9d7dc8d681b
diff --git a/pub/include/ps_phy/pswphyint.h b/pub/include/ps_phy/pswphyint.h
new file mode 100644
index 0000000..102f7b5
--- /dev/null
+++ b/pub/include/ps_phy/pswphyint.h
@@ -0,0 +1,2452 @@
+ /*==============================================================================***
+ *°æ±¾ËùÓÐ (C)2012ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾
+ * Ä£¿éÃû £º
+ * ÎļþÃû £ºpswphyint.h
+ * Îļþ±êʶ£º
+ * Ïà¹ØÎļþ£º
+ * ʵÏÖ¹¦ÄÜ£ºWCDMA psºÍWCDMA PHYµÄ½Ó¿Ú¶¨Òå
+ * ×÷Õß £º
+ * °æ±¾ £º
+ * Íê³ÉÈÕÆÚ£º
+ * ÆäËü˵Ã÷£º
+*/
+
+#ifndef Z_PS_WPHY_INTERFACE_H
+#define Z_PS_WPHY_INTERFACE_H
+
+
+#ifndef Z_SEND_TO_SIMPHY
+#include "ram_config.h"
+#endif
+ /*==============================================================================
+* Í·Îļþ°üº¬ *
+==============================================================================*/
+
+/****************************************************************************/
+/* ICP ÖжÏ״̬붨Òå */
+/****************************************************************************/
+/***********************************************************************/
+#define CONFIG_OPT_SIZE (1) /*for size optimize, if found some exception please disable it*/
+
+/* PHY_CPU -> PS_CPU ICP STAUTS*/
+#define PHY_PS_FRAME_ICP_MASK (DWORD)0x00000001
+#define PHY_PS_WAKEUP_ICP_MASK (DWORD)0x00000002
+
+/* PS_CPU -> PHY_CPU ICP STAUTS*/
+#define PS_PHY_UPA_DATA_ICP_MASK (DWORD)0x00000001
+#define PS_PHY_WAKEUP_ICP_MASK (DWORD)0x00000002
+
+ /*==============================================================================
+* È«¾Öºê¶¨Òå *
+==============================================================================*/
+
+
+/*start:Ð¡ÇøËÑË÷²¿·ÖºêÖµ¶¨Òå*/
+#define Z_W_P_MAX_NO_OF_FREQSCAN_FREQ (WORD)64 /*ÐèҪɨÃèµÄ×î´óƵ¶ÎÊýÄ¿*/
+#define Z_W_P_MAX_NO_OF_RSSI_RESULTS (WORD)32 /*ɨƵÉϱ¨µÄ×î´óƵµãÊýÄ¿*/
+#define Z_W_P_MAX_NO_OF_SEARCH_RESULTS (WORD)8 /*Ð¡ÇøËÑË÷Éϱ¨µÄ×î´óÐ¡ÇøÊýÄ¿*/
+
+#define Z_W_P_CELLSRHTYPE_STRONGEST (WORD)0 /*·µ»ØÖ¸¶¨ÆµµãµÄ×îÇ¿Ð¡Çø*/
+#define Z_W_P_CELLSEARCHTYPE_BLIND (WORD)1 /*·µ»ØÖ¸¶¨ÆµµãµÄÐ¡ÇøÁбí*/
+#define Z_W_P_CELLSEARCHTYPE_SPEC (WORD)2 /*·µ»ØÖ¸¶¨PrimSrcµÄÐ¡Çø*/
+
+
+/*ÉèÖÃWÎïÀí²ãÊÇ·ñÖ÷ģʽ*/
+#define Z_W_P_IRAT_MODE_SLAVE (WORD)0 /*ÉèÖÃΪ¸¨Ä£Ê½*/
+#define Z_W_P_IRAT_MODE_MASTER (WORD)1 /*ÉèÖÃΪÖ÷ģʽ*/
+
+/*FDDƵ¶ÎºÅ¶¨Òå*/
+#define Z_W_P_BAND_FDDI (WORD)1
+#define Z_W_P_BAND_FDDII (WORD)2
+#define Z_W_P_BAND_FDDIII (WORD)3
+#define Z_W_P_BAND_FDDIV (WORD)4
+#define Z_W_P_BAND_FDDV (WORD)5
+#define Z_W_P_BAND_FDDVI (WORD)6
+#define Z_W_P_BAND_FDDVII (WORD)7
+#define Z_W_P_BAND_FDDVIII (WORD)8
+#define Z_W_P_BAND_FDDIX (WORD)9
+#define Z_W_P_BAND_FDDX (WORD)10
+#define Z_W_P_BAND_FDDXI (WORD)11
+#define Z_W_P_BAND_FDDXII (WORD)12
+#define Z_W_P_BAND_FDDXIII (WORD)13
+#define Z_W_P_BAND_FDDXIV (WORD)14
+#define Z_W_P_BAND_FDDXIX (WORD)15
+#define Z_W_P_BAND_FDDXX (WORD)16
+#define Z_W_P_BAND_FDDXXI (WORD)17
+/*end Ð¡ÇøËÑË÷²¿·ÖºêÖµ¶¨Òå*/
+
+/*start:ϵͳÐÅÏ¢²¿·ÖºêÖµ¶¨Òå*/
+#define Z_W_P_MAX_NUM_OF_BCH (WORD)8
+#define Z_W_P_MAX_NO_OF_SIB_OFFS (WORD)16 /*ϵͳÐÅÏ¢Æ«ÒÆ×î´óÊý×é¸öÊý*/
+#define Z_W_P_MAX_NO_OF_SIB_SCHEDULES (WORD)30 /*×î´óµ÷¶ÈÐÅÏ¢¸öÊý*/
+/*ϵͳÐÅÏ¢¿éÀàÐÍ*/
+#define Z_W_P_URRC_MIB (WORD)0
+#define Z_W_P_URRC_SIB1 (WORD)1
+#define Z_W_P_URRC_SIB2 (WORD)2
+#define Z_W_P_URRC_SIB3 (WORD)3
+#define Z_W_P_URRC_SIB4 (WORD)4
+#define Z_W_P_URRC_SIB5 (WORD)5
+#define Z_W_P_URRC_SIB6 (WORD)6
+#define Z_W_P_URRC_SIB7 (WORD)7
+#define Z_W_P_URRC_SIB11 (WORD)11
+#define Z_W_P_URRC_SIB12 (WORD)12
+#define Z_W_P_URRC_SIB14 (WORD)18
+#define Z_W_P_URRC_SIB15 (WORD)19
+#define Z_W_P_URRC_SIB16 (WORD)23
+#define Z_W_P_URRC_SIB18 (WORD)26
+#define Z_W_P_URRC_SB1 (WORD)27
+#define Z_W_P_URRC_SB2 (WORD)28
+#define Z_W_P_URRC_SIB5BIS (WORD)30
+#define Z_W_P_URRC_SIB_TYPE_EXTENSION_TYPE (WORD)31
+#define Z_W_P_URRC_SIB11BIS (WORD)32
+#define Z_W_P_URRC_SIB15BIS (WORD)33
+/*SIB-TypeExt2*/
+#define Z_W_P_URRC_SIB19 (WORD)40
+#define Z_W_P_URRC_SIB20 (WORD)42
+
+#define Z_W_P_BCH_REQ_ONE (WORD)0 /*ÇëÇóÎïÀí²ãÒÔÖ¸¶¨·½Ê½¶Ábch*/
+#define Z_W_P_BCH_REQ_ALL (WORD)1 /*ÇëÇóÎïÀí²ãÁ¬Ðø¶Ábch*/
+
+#define Z_W_P_STTD_NOTUSED (WORD)0 /*²»Ê¹ÓÃSTTD*/
+#define Z_W_P_STTD_USED (WORD)1 /*ʹÓÃSTTD*/
+#define Z_W_P_STTD_UNNOTIFY (WORD)2 /*δ֪£¬¼´ps²»È·Èϵ±Ç°Ð¡ÇøÊÇ·ñʹÓÃSTTD*/
+/*end:ϵͳÐÅÏ¢²¿·ÖºêÖµ¶¨Òå*/
+
+/*start:×ÊÔ´²¿·ÖºêÖµ¶¨Òå*/
+#define Z_W_P_MAX_UL_TRCH_NUM (WORD)8
+#define Z_W_P_MAX_DL_TRCH_NUM (WORD)8
+#define Z_W_P_MAX_UL_TF_NUM (WORD)32
+#define Z_W_P_MAX_DL_TF_NUM (WORD)64
+#define Z_W_P_MAX_UL_TFC_NUM (WORD)64
+#define Z_W_P_MAX_DL_TFC_NUM (WORD)128
+#define Z_W_P_MAX_NO_OF_RL (WORD)8/*×î´óRLÊýÄ¿*/
+#define Z_W_P_MAX_EDCH_NO_OF_RL (WORD)4
+#define Z_W_P_MAX_NO_OF_DPCHS (WORD)8
+#define Z_W_P_MAX_H_PROCESS (WORD)8
+#define Z_W_P_MAX_HS_SCCH_CODES (WORD)4
+#define Z_W_P_MAX_REF_ETFCI (WORD)8
+#define Z_W_P_MAX_HSCCHLESS_TFS_NUM (WORD)4
+
+#define Z_W_P_TTI_2MS (WORD)1
+#define Z_W_P_TTI_10MS (WORD)2
+#define Z_W_P_TTI_20MS (WORD)3
+#define Z_W_P_TTI_40MS (WORD)4
+#define Z_W_P_TTI_80MS (WORD)5
+
+#define Z_W_ACT_TIME_IMMEDIATELY (WORD)256/*¼¤»îʱ¼äÊÇÁ¢¼´¼¤»î*/
+/*end ×ÊÔ´²¿·ÖºêÖµ¶¨Òå*/
+
+/*start²âÁ¿Ïà¹Øºê¶¨Òå*/
+#define Z_W_P_MAX_CELL_NUM (WORD)32 /*ͬƵÒìÆµ×î´óÖ§³ÖÐ¡ÇøÊýÄ¿*/
+#define Z_W_P_MAX_INTRAFREQ_NUM (WORD)1 /*ͬƵƵµãÊýÄ¿£¬²»¿¼ÂǵڶþÉÏÐÐÆµµãʱ¸ÃֵΪ1*/
+#define Z_W_P_MAX_INTERFREQ_NUM (WORD)8 /*ÒìÆµÅäÖÃÆµµãÊýÄ¿*/
+#define Z_W_P_MAX_BLIND_INTERFREQ_NUM (WORD)16 /*ÒìÆµÃ¤ÆµµãµÄƵµãÊýÄ¿*/
+#define Z_W_P_MAX_BLIND_INTERFREQ_CELL_NUM (WORD)3 /*äƵµãÏÂÐ¡ÇøÊýÄ¿*/
+#define Z_W_P_MAX_CM_NUM (WORD)6 /*ѹËõģʽÅäÖÃÏîÊýÄ¿*/
+#define Z_W_P_MAX_FRAME_GAP_NUM (WORD)2 /*Ò»¸öÖ¡ÖÐ×î´óGAPÊýÄ¿*/
+/*end²âÁ¿Ïà¹Øºê¶¨Òå*/
+
+/*start²ã¶þÏà¹Øºê¶¨Òå*/
+/*ÎÞÏß×ÊÔ´ÅäÖÃÏà¹Øºê¶¨Òå*/
+
+#define Z_W_P_MAX_UL_FREQUENCY_NUM (WORD)2
+#define Z_W_P_MAX_DL_FREQUENCY_NUM (WORD)2
+
+/*´«ÊäÐŵÀÀàÐÍ,½öÓÃÓÚºÍÎïÀí²ãµÄ½Ó¿ÚÖÐ*/
+#define Z_W_P_PCH (WORD)0
+#define Z_W_P_FACH (WORD)1
+#define Z_W_P_DL_DCH (WORD)2
+#define Z_W_P_RACH (WORD)3
+#define Z_W_P_UL_DCH (WORD)4
+
+/*UPAÏà¹Ø²ÎÊý*/
+//#define Z_W_P_MAX_REF_ETFCI_NUM (WORD)8/*Z_W_P_MAX_REF_ETFCI*/
+#define Z_W_P_MAX_RG_NUM (WORD)4
+
+/*Êý¾Ý½Ó¿Ú´óС*/
+#define Z_W_P_MAX_NO_OF_UL_BYTES (WORD)1168
+
+#define Z_W_P_MAX_NO_OF_DL_BYTES (WORD)1168
+#define Z_W_P_MAX_NO_OF_HSDPA_BYTES (WORD)5274
+
+#define Z_W_P_MAX_NO_OF_HSUPA_BYTES (WORD)2876
+
+
+#define Z_W_P_MAX_ETFCI_NUM (WORD)128
+#define Z_W_P_MAX_NTR_NUM (WORD)8
+
+/*rachÏà¹Ø*/
+#define Z_W_P_RACH_ACCESS_ACK (WORD)0
+#define Z_W_P_RACH_ACCESS_NACK (WORD)1
+#define Z_W_P_RACH_ACCESS_NO_ACK (WORD)2
+
+/*ÏÂÐÐÊý¾ÝÀàÐÍ*/
+#define Z_W_P_PCH_FACH_DCH_DATA (WORD)0
+#define Z_W_P_DPA_DATA (WORD)1
+/*end²ã¶þÏà¹Øºê¶¨Òå*/
+
+
+
+/*wÖ÷Ä£Á¬½Ó̬(FACH ¡¢DCH)ÎïÀí²ãÉϱ¨GAPÐèÒª¿Û³ýµÄÉ䯵±£»¤¼ä¸ôµ¥Î»CHIP, 7520°æ±¾Í·Î²·Ö±ð¿Û³ý30chips(7.8125us) 660chips(171.875us). */
+
+#define Z_W_P_MEAS_DCHGAP_START_OFF (WORD)30
+#define Z_W_P_MEAS_DCHGAP_TAIL_OFF (WORD)660
+
+
+#define Z_ZWPCG_VALFG_NUM (WORD)8
+#define Z_ZWPCG_PARAM_NUM (WORD)25
+
+ /*==============================================================================
+* È«¾ÖÊý¾ÝÀàÐͶ¨Òå *
+==============================================================================*/
+
+
+ /*==============================================================================
+ * Ð¡ÇøËÑË÷È«¾ÖÊý¾ÝÀàÐͶ¨Òå start *
+ ==============================================================================*/
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_W_FREQUENCY_SCAN_REQ
+ ¹¦ÄÜ:
+ ¿ÉÄܳöÏÖµÄÔÚ³õʼ״̬£¬IDLE̬£¬CELL_PCH̬£¬CELL_URA̬£¬L1¸ù¾ÝÏûÏ¢ÖÐ
+ Я´øµÄƵµã»òƵ¶ÎÐÅÏ¢½øÐÐɨƵ£¬Ê×ÏÈÖ´ÐÐÆµ¶ÎɨƵ£¬Ö®ºóÔÙ½«Æµ¶ÎɨÃè½á
+ ¹ûƵµãÓëÐÒéջϷ¢µÄÀëɢƵµã·ÅÔÚÒ»Æð½øÐÐÀëɢƵµãɨƵ
+ ½á¹¹:
+ T_zW_P_frequency_scan_req
+==============================================================================*/
+ typedef struct{
+ WORD wFreqStartRange;
+ WORD wFreqEndRange;
+ WORD wBandInd;
+ WORD wPadding;
+}T_zW_P_frequency_range;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wFreqRangeNum;
+ WORD wSeqNum;
+ WORD wWonlyFlg; /*µ±Ç°ÊÇ·ñÊÇWµ¥Ä££¬wWonlyFlg=1Ϊµ¥Ä££¬·ñÔòΪ¶àÄ£*/
+ T_zW_P_frequency_range atFrequencyRange[Z_W_P_MAX_NO_OF_FREQSCAN_FREQ];
+}T_zW_P_frequency_scan_req;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_W_ABORT_FREQ_SCAN_REQ
+ ¹¦ÄÜ:
+ Í£Ö¹L1ƵÂÊɨÃèÇëÇó
+ ½á¹¹:
+ T_zW_P_abort_frequency_scan_req,¿Õ½á¹¹
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_frequency_scan_req;
+
+
+/*==============================================================================
+ PHY->L1W
+ ʼþ£ºP_ABORT_FREQ_SCAN_CNF
+ ¹¦ÄÜ:
+ Í£Ö¹L1ƵÂÊɨÃèÈ·ÈÏ
+ ½á¹¹:
+ T_zW_P_abort_frequency_scan_cnf,¿Õ½á¹¹
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_frequency_scan_cnf;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_FREQUENCY_SCAN_IND
+ ¹¦ÄÜ:
+ L1Íê³ÉɨƵºó£¬Í¨¹ýÏûÏ¢P_FREQUENCY_SCAN_INDÉϱ¨É¨Æµ½á¹û,ÎïÀí²ã¸ù¾Ý
+ RSSI²âÁ¿Öµ¼°PSCHÏà¹ØÄÜÁ¿¶ÔƵÂʽøÐÐÅÅÐò£¬×î¿ÉÄÜפÁôµÄƵÂÊ·ÅÔÚÊ×룬
+ ÒÀ´ÎÀàÍÆ£¬²»ÄÜפÁôµÄƵÂʲ»Éϱ¨¡£
+ Èç¹ûɨƵ½á¹û³¬¹ý32£¬ÎïÀí²ã½«Ç°32ǿƵµã×÷Ϊ½á¹ûÉϱ¨ÐÒéÕ»¡£
+ ½á¹¹:
+ T_zW_P_frequency_scan_ind
+==============================================================================*/
+ typedef struct{
+ WORD wFrequency;
+ WORD wPadding;
+ }T_zW_P_scan_result;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wScanRltNum;
+ WORD wSeqNum;
+ WORD wPadding;
+ T_zW_P_scan_result atScanResult[Z_W_P_MAX_NO_OF_RSSI_RESULTS]; /*ÎïÀí²ã½«É¨Æµ½á¹ûǰ32Ç¿Éϱ¨*/
+}T_zW_P_frequency_scan_ind;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_CELL_SEARCH_REQ
+ ¹¦ÄÜ:
+ Ö¸¶¨ÆµµãÉϲéÕÒÖ¸¶¨ÊýÄ¿Ð¡Çø¡£Èç¹ûµ±Ç°ÒÑÓзþÎñÐ¡Çø£¬L1ÐèҪͬʱ±£³Ö·þÎñÐ¡ÇøÍ¬²½£¬
+ ÒÔ¼°½ÓÊÕѰºôµÈ¡£Èç¹ûÊÕµ½Ñ°ºôµÈÇé¿öÐèÒªÖжÏL1Ð¡ÇøËÑË÷£¬ÖжϺóL1²»ÔÙÏòÐÒéÕ»Éϱ¨ÒÑ
+ ·¢ÏÖÐ¡ÇøÐÅÏ¢¡£Èç¹ûnum_of_cell_idÈ¡0£¬ÇëÇóL1ÔÚÖ¸¶¨ÆµµãÉÏäËÑÐ¡Çø£¬Âú×ã¡°ÃÅÏÞ¡±µÄ
+ num_of_result¸öÐ¡ÇøÉϱ¨¡£Èç¹ûnum_of_cell_idÈ¡·Ç0Öµ£¬ÇëÇóL1ÔÚÖ¸¶¨cell_parameter_idµÄ
+ Ð¡ÇøÁбíÖÐËÑË÷Âú×ã¡°ÃÅÏÞ¡±µÄÐ¡ÇøÉϱ¨¡£ÆäÖеġ° ÃÅÏÞ¡± ÓÉÎïÀí²ã¸ù¾ÝÐÔÄÜÈ·¶¨
+ ½á¹¹:
+ T_zW_P_cell_search_req
+==============================================================================*/
+typedef struct
+{
+ WORD wTxDiversityInd; /*²Î¼ûºê¶¨Òå,½öµ±wSearchTypeΪָ¶¨ËÑË÷ʱÓÐЧ*/
+ WORD wPrimSrc;
+}T_zW_P_cellsrh_info;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wSeqNum;
+ WORD wFrequency;
+ WORD wSearchType; /*²Î¼ûºê¶¨Òå*/
+ WORD wNumOfResult;
+ WORD wNumOfCell;
+ T_zW_P_cellsrh_info atCellSrhInfo[Z_W_P_MAX_NO_OF_SEARCH_RESULTS];
+}T_zW_P_cell_search_req;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_ABORT_CELL_SEARCH_REQ
+ ¹¦ÄÜ:
+ Í£Ö¹ÎïÀí²ãµÄcell search¡£
+ ½á¹¹:
+ T_zW_P_abort_cell_search_req,¿Õ½á¹¹
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_cell_search_req;
+
+
+/*==============================================================================
+ PHY->L1W
+ ʼþ£ºP_ABORT_CELL_SEARCH_CNF
+ ¹¦ÄÜ:
+ Í£Ö¹ÎïÀí²ãµÄcell searchÈ·ÈÏ¡£
+ ½á¹¹:
+ T_zW_P_abort_cell_search_cnf,¿Õ½á¹¹
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_cell_search_cnf;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_CELL_SEARCH_IND
+ ¹¦ÄÜ:
+ Éϱ¨Ö¸¶¨ÆµµãÉÏÂú×ãÎïÀí²ã×îµÍÃÅÏÞÖµµÄ£¨Ö¸¶¨£©Ð¡Çø²âÁ¿½á¹û¡£
+ ½á¹¹:
+ T_zW_P_cell_search_ind
+==============================================================================*/
+typedef struct{
+ WORD wPrimSrc;
+ WORD wCpichRscp;
+ WORD wCpichEcNo;
+ WORD wPadding;
+}T_zW_P_cell_params;
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wSeqNum;
+ WORD wFrequency;
+ WORD wNumOfFoundCells;
+ T_zW_P_cell_params atCell[Z_W_P_MAX_NO_OF_SEARCH_RESULTS];
+}T_zW_P_cell_search_ind;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_BCH_OPEN_REQ
+ ¹¦ÄÜ:
+ ¸ÃÏûÏ¢ÔÚ·ÇDCH̬»áÏ·¢,´ò¿ªBCH¶ÁϵͳÐÅÏ¢,¿ÕÏÐ̬,PCH̬¿ÉÒÔ¶ÁÈ¡·þÎñÐ¡Çø
+ ºÍÏàÁÚÐ¡ÇøÏµÍ³ÐÅÏ¢£¬FACHÖ»ÄܶÁÈ¡·þÎñÐ¡ÇøÏµÍ³ÐÅÏ¢¡£¸ÃÏûÏ¢ÎÞÏìÓ¦ÏûÏ¢¡£
+ ½á¹¹:
+ T_zP_TD_bch_open_req
+==============================================================================*/
+typedef struct
+{
+ WORD wSibType; /*²Î¼ûºê¶¨Òå*/
+ WORD wSegCount;/* SIBÏûÏ¢µÄ·Ö¶ÎÊýÄ¿£¬·¶Î§1..16*/
+ WORD wSibRep; /* SIBÖØ¸´ÖÜÆÚ*/
+ WORD wSibPos;/* SIBµÚÒ»¸ö·Ö¶ÎµÄλÖÃ*/
+ WORD wSibOff[Z_W_P_MAX_NO_OF_SIB_OFFS];
+} T_sib_schedule_info;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wType; /*²Î¼ûºê¶¨Òå*/
+ WORD wTxDivMode; /*²Î¼ûºê¶¨Òå*/
+ WORD wFrequency;
+ WORD wPrimSrc;
+ WORD wCellReselectFlg;/*wCellReselectFlg=1±íʾ´Ë´Î¶ÁSIBÊÇÒòÖØÑ¡·¢Æð¡£Îª0±íʾ·ÇÐ¡ÇøÖØÑ¡ÒýÆð*/
+ WORD wNumOfSchedule;
+ WORD wPadding;
+ T_sib_schedule_info tSibScheduleInfo[Z_W_P_MAX_NO_OF_SIB_SCHEDULES];
+}T_zW_P_bch_open_req;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_BCH_IND
+ ¹¦ÄÜ:
+ ´ò¿ªBCHºóL1Öð¿éÉϱ¨ÏµÍ³ÐÅϢָʾ, ¿ÕÏûÏ¢£¬ÐÒéÕ»ÊÕµ½´ËָʾºóÈ¥
+ ¹Ì¶¨Buffer¶ÁϵͳÐÅÏ¢Êý¾Ý
+ ½á¹¹:
+ T_zW_P_Bch_Buffer
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wSfn;
+ WORD wCrcCheck;
+ WORD wFrequency;
+ WORD wPrimSrc;
+ WORD wSfnDecodeRlt; /*0:ʧ°Ü£¬1³É¹¦*/
+ WORD awDataArea[Z_W_P_MAX_NUM_OF_BCH*2];
+}T_zW_P_Bch_Ind;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_BCH_RELEASE_REQ
+ ¹¦ÄÜ:
+ ÐÒéÕ»ÇëÇóL1Í£Ö¹½ÓÊÕϵͳÐÅÏ¢£¬ÊÍ·ÅBCH
+ ½á¹¹:
+ T_zW_P_bch_release_req
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_bch_release_req;
+
+
+/*==============================================================================
+ PHY->L1W
+ ʼþ£ºP_BCH_RELEASE_CNF
+ ¹¦ÄÜ:
+ L1È·ÈÏÐÒéջֹͣ½ÓÊÕϵͳÐÅÏ¢
+ ½á¹¹:
+ T_zW_P_bch_release_cnf
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_bch_release_cnf;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_CAMPON_A_CELL_REQ
+ ¹¦ÄÜ:
+ RRCÔÚϵͳÐÅÏ¢¶ÁÈ¡Íê³Éºó£¬ÈÏÎªÐ¡Çø¿ÉפÁô£¬·¢ËÍ´ËÏûϢ֪ͨ
+ ÎïÀí²ã´ËÐ¡ÇøÎª·þÎñÐ¡Çø¡£
+ ½á¹¹:
+ T_zW_P_camp_on_a_cell_req
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wUlFrequency;
+ WORD wDlFrequency;
+ WORD wPrimSrc;
+ WORD wPreDlFrequency;
+ WORD wPadding;
+}T_zW_P_camp_on_a_cell_req;
+
+
+/*==============================================================================
+ PHY->L1W
+ ʼþ£ºP_CAMPON_A_CELL_CNF
+ ¹¦ÄÜ:
+ µ×²ãÈ·ÈÏפÁôÐ¡Çø¡£
+ ½á¹¹:
+ T_zW_P_camp_on_a_cell_cnf
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_camp_on_a_cell_cnf;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_SET_IRAT_MODE_REQ
+ ¹¦ÄÜ:
+ ÐÒéջ֪ͨÎïÀí²ãģʽÀàÐÍ£¬ÊÇFDD mode¼´FDDΪÖ÷ģʽ£¬
+ »òÕß²»ÊÇFDD mode¼´FDDΪ¸¨¡£²»²Ù×÷É䯵¡£
+ ½á¹¹:
+ T_zW_P_set_irat_mode_Req
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wModeTypes; /*0-·ÇÖ÷£¬1-Ö÷Ä££¬²Î¼ûºê¶¨Òå*/
+}T_zW_P_set_irat_mode_Req;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_RESET_REQ
+ ¹¦ÄÜ:
+ ÐÒéջ֪ͨÎïÀí²ã¸´Î»
+ ½á¹¹:
+ T_zW_P_Reset_req
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_Reset_req;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_RESET_CNF
+ ¹¦ÄÜ:
+ ÎïÀí²ã֪ͨÐÒéÕ»ÊÍ·ÅËùÓÐ×ÊÔ´½áÊø
+ ½á¹¹:
+ T_zW_P_Reset_cnf
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_reset_cnf;
+
+
+/*==============================================================================
+ RRC->PHY
+ ʼþ£ºP_W_REL_REQ
+ ¹¦ÄÜ:
+ ÎïÀí²ãÊÍ·ÅËùÓÐÐÒéջϷ¢µÄÒµÎñÇëÇó¼°É䯵¡£
+ ½á¹¹:
+ T_zW_P_release_req
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_release_req;
+
+
+/*==============================================================================
+ PHY->RRC
+ ʼþ£ºP_W_REL_CNF
+ ¹¦ÄÜ:
+ ÎïÀí²ã֪ͨÐÒéÕ»ÊÍ·ÅËùÓÐ×ÊÔ´½áÊø
+ ½á¹¹:
+ T_zW_P_release_cnf
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_release_cnf;
+
+
+ /*==============================================================================
+ * Ð¡ÇøËÑË÷È«¾ÖÊý¾ÝÀàÐͶ¨Òå --------end *
+ ==============================================================================*/
+
+
+ /*==============================================================================
+ * ×ÊÔ´ÅäÖÃÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå --------start *
+ ==============================================================================*/
+
+
+typedef struct{
+ WORD wNum;
+ WORD awList[21];
+}T_zW_P_Imsi;
+
+typedef struct{
+ WORD wSrncId;
+ WORD wPadding;
+ DWORD dwSrnti;
+}T_zW_P_Urnti;
+
+typedef struct {
+ WORD wUeIdValidBitmap;/*bit0..bit3ÓÐЧ£¬ÒÀ´Î·Ö±ðָʾÐÅÔªTmsiGsm¡¢PTmsiGsm¡¢ImsiGsm¡¢URntiÊÇ·ñ´æÔÚ¡£bitλΪ1±íʾ¶ÔÓ¦ÐÅÔª´æÔÚ£¬·ñÔò²»´æÔÚ*/
+ WORD wPadding;
+ WORD awTmsiGsm[4];
+ WORD awPTmsiGsm[4];
+ T_zW_P_Imsi tImsiGsm;
+ T_zW_P_Urnti tUrnti; /*PCH̬ʹÓÃ*/
+}T_zW_P_ue_id;
+
+
+typedef struct
+{
+ WORD wPichChanCode;
+ WORD wNumOfPiPerFrame;
+ WORD wPichSttdInd;
+ WORD wDrxCycleLengthCoeff;
+ WORD wPichPowerOff;
+ WORD wNumOfSccpch;
+ T_zW_P_ue_id tUeIdInfo;
+} T_zW_P_pich_info;
+
+
+typedef struct{
+ WORD wSecScrambCodeFlg;
+ WORD wSecScrambCode;
+ WORD wChanCode;
+ WORD wScrambCodeChangeFlg;
+} T_zW_P_dpch_ChannelCode;
+
+
+typedef struct{
+ DWORD dwCtfc;
+ WORD wTfci;
+ WORD wTfcPowerParaFlg;/*¹¦ÂÊ¿ØÖƲÎÊý±êʶ£¬1±íʾÐèÒª²Î¿¼ÏÂÊö¹¦ÂʲÎÊýÐÅÏ¢£¨PowerOffPpmÐÅÏ¢£¬ÏÔʾBetaCºÍBetaDÐÅÏ¢£¬²Î¿¼TFCIDÐÅÏ¢£©¡£0±íʾÎÞ¹¦¿Ø²ÎÊý*/
+ WORD wPowerOffPpmFlg;
+ WORD wPowerOffPpm;/*Needed only for PRACH*/
+ WORD wGainFactorInfo;/*±íʾBetaC£¬BetaDÓÃÏÔʾ¸ø³öµÄ·½Ê½»¹ÊÇÓòο¼TFC¼ÆËãµÄ·½Ê½¡£
+ ȡֵ0»ò1£¬0:±íʾÏÔʾ֪ͨ, BetaÖµ²ÉÓýӿÚÖÐÅäÖõÄwBetaD, wBetaC
+ 1:±íʾ²Î¿¼·½Ê½,¸ù¾ÝwRefTfcIdÕÒµ½¶ÔÓ¦µÄBetaÖµ*/
+ WORD wBetaC;/*signalledGainFactorsÏÔʾ¸ø³öµÄBetaC ȡֵ0~15*/
+ WORD wBetaD; /*signalledGainFactorsÏÔʾ¸ø³öµÄBetaD ȡֵ0~15*/
+ WORD wRefTfcIdFlg;
+ WORD wRefTfcId; /*computedGainFactors Ref tfci£¬0~3 £¬ÐèÒªµ½²Î¿¼TFCIDÏÂѰÕÒ±¾TFCIDÐèÒªµÄBetaC£¬BetaD*/
+ WORD wPadding;
+}T_zW_P_ul_ctfc_tfc;
+
+typedef struct{
+ DWORD dwCtfc;
+ WORD wTfci;
+ WORD wPadding;
+}T_zW_P_dl_ctfc_tfc;
+
+
+typedef struct{
+ /*Unit is bits;UURRC should compute the TB size by the rlc size*/
+ WORD wTransBlockSize;
+ WORD wNumOfTransBlocks;
+
+ WORD wTfi;
+ WORD wPadding;
+}T_zW_P_dynamic_tfs;
+
+
+typedef struct{
+ WORD wTrchId;
+ WORD wTrchType; /*רÓÃÐŵÀ OR ¹«¹²ÐŵÀ*/
+ WORD wCodingTypeOfChannel;
+ WORD wTti;
+ WORD wCrcLength;
+ WORD wRmAttribute;
+ WORD wNumOfDynamicTfs;
+ WORD wPadding;
+}T_zW_P_static_tfs;
+
+
+typedef struct{
+ WORD wNumOfTrch;
+ WORD wNumOfTfc;
+ T_zW_P_static_tfs atStaticTFS[Z_W_P_MAX_UL_TRCH_NUM];
+ T_zW_P_dynamic_tfs atDynamicTFS[Z_W_P_MAX_UL_TF_NUM];
+ T_zW_P_ul_ctfc_tfc atCtfc[Z_W_P_MAX_UL_TFC_NUM];
+}T_zW_P_ul_dpch_trch_reconfig;
+
+typedef struct
+{
+ WORD wPrimSrc; /* PrimaryCPICH */
+ WORD wPcpichUsageForChannelEst; /*SecondaryCPICH-Info*/
+
+ WORD wDpchFrameOffset;
+ WORD wSecCpScrCodeFlg;
+ WORD wSecCpichScrambCode; /* SecondaryCPICH-Info*/
+ WORD wSecCpChanCodeFlg;
+ WORD wSecCpichChanCode;/* SecondaryCPICH-Info*/
+ WORD wTpcCombIndex; /* TPC-CombinationIndex */
+
+ WORD wClosedLoopTimAdjMode;
+ WORD wPowerOffTpcPdpdch; /* PowerOffsetTPC-pdpdch */
+ WORD wTxDivMode; /* DL-CommonInformation-r8*/
+ WORD wNumOfDpchs;
+
+ T_zW_P_dpch_ChannelCode atDlDpchChannelCode[Z_W_P_MAX_NO_OF_DPCHS];
+} T_zW_P_dedicated_rl_params;
+
+typedef struct{
+
+ WORD wNumOfTrch;
+
+ WORD wNumOfTfc;
+ /* ´ÓÓÒµ½×óBITλ¶ÔÓ¦µÄ´«ÊäÐŵÀ˳ÐòÓëatStaticTFSÏàͬ£»bitÖµ0±íʾ²»ÐèÒª½âÎö£¬1±íʾÐèÒª½âÎö */
+ WORD wEnableDecodeBitmap;
+ WORD wPadding;
+
+ /* ¸Ã¸ÃÊý×éÔÚDCH̬ʱÓÐЧ£¬Êý×éÔªËØ¶ÔÓ¦µÄ´«ÊäÐŵÀ˳ÐòÓëatStaticTFSÏàͬ£»
+ Target_BLERΪ¿ÉÑ¡²ÎÊý£¬ÖµµÄ·¶Î§Îª0ÖÁ63£¬0xffff±íʾ²ÎÊý²»´æÔÚ£»ÎïÀí²ãÊÕµ½ºóÒª*£¨-0.1£©µÃµ½Êµ¼ÊÖµ */
+ WORD awTargetBler[Z_W_P_MAX_DL_TRCH_NUM];
+
+ T_zW_P_static_tfs atStaticTfs[Z_W_P_MAX_DL_TRCH_NUM];
+
+ T_zW_P_dynamic_tfs atDynamicTfs[Z_W_P_MAX_DL_TF_NUM];
+ T_zW_P_dl_ctfc_tfc atCtfc[Z_W_P_MAX_DL_TFC_NUM];
+}T_zW_P_dl_trch_reconfig;
+
+typedef struct
+{
+ WORD wPrimSrc; /** PrimaryCPICH */
+ WORD wPcpichUsageForChannelEst; /*SecondaryCPICH-Info*/
+ WORD wDpchFrameOffset;
+ WORD wFdpchSlotFormat;
+
+ WORD wSecCpScrCodeFlg;
+ WORD wSecCpichScrambCode; /* SecondaryCPICH-Info*/
+
+ WORD wSecCpChanCodeFlg;
+ WORD wSecCpichChanCode;
+
+ WORD wFdpchSecScrambCodeFlg;
+ WORD wFdpchSecScrambCode;
+
+ WORD wTpcCombIndex; /* TPC-CombinationIndex */
+ WORD wSttdIndication;
+ WORD wFdpchChanCode;
+ WORD wPadding;
+}T_zW_P_fdpch_dedicated_rl_params;
+
+
+typedef struct{
+ WORD wNumOfTfc;
+ WORD wPadding;
+ T_zW_P_static_tfs tStaticTFS;
+ T_zW_P_dynamic_tfs atDynamicTFS[Z_W_P_MAX_UL_TF_NUM];
+ T_zW_P_ul_ctfc_tfc atCtfc[Z_W_P_MAX_UL_TFC_NUM];
+} T_zW_P_rach_tfs_tfcs_config;
+
+
+typedef struct{
+ WORD wMaxTxPower;
+ WORD wPrachScrambCode; /* Preamble scrambling code number0-15 */
+ WORD wMinSpreadingFactor;/* Available SF In chips per symbol
+ Defines the minimum allowed SF */
+ /* Each bit indicates availability for a signature, where the signatures are numbered "signature 0" up to "signature 15". The value 1 of a bit indicates that the corresponding signature is available and the value 0 that it is not available*/
+ WORD wPuncturingLimit;
+
+ /*10.3.6.55*/
+ /* Preamble_Initial_Power = Primary CPICH TX power - CPICH_RSCP + UL interference + Constant Value */
+ /* Preamble_Initial_Power= wInitialPowerOffset - CPICH_RSCP */
+ WORD wInitialPowerOff;
+ /*Prach Power Offset*/
+ WORD wPowerRampStep;/*PRACH¹¦ÂÊÆ«ÒÆ Power Ramp Step */
+ WORD wPreambleMaxRetrans;
+
+
+ /*10.3.6.2*/
+ WORD wAichChanCode;
+ WORD wAichTxdivMode; /*·¢ËÍ·Ö¼¯Ö¸Ê¾*/
+ WORD wAichTransTiming; /*AICH´«Êäʱ¼ä */
+ WORD wAichPowerOff;
+
+ WORD wRachTfsTfcsCfgFlg;
+
+ T_zW_P_rach_tfs_tfcs_config tRachTfsAndTfcsConfig;
+} T_zW_P_prach_sysinfo;
+
+typedef struct{
+ WORD wPowerOffHspdsch;
+ /* CQI feedback cycle count (0..160 ms) */
+ WORD wCqiFeedbackCycle;
+ /* CQI repetition factor (1..4) */
+ WORD wCqiRepFactor;
+ /* delta CQI (0..8) */
+ WORD wDeltaCqi;
+}T_zW_P_MeasFeedBack;
+
+
+typedef struct{
+
+ T_zW_P_MeasFeedBack tMeasFeedBack;
+
+ WORD wDeltaAck; /* delta ACK (0..8) */
+
+ WORD wDeltaNack; /* delta NACK (0..8) */
+
+ /* ACK-NACK repetition factor (1..4) UL-DPCH-PowerControlInfo-r7 */
+ WORD wAckNackRepFactor; /*DPCH¹¦ÂÊ¿ØÖÆ*/
+
+ /*(0, 1)1 indicates that preamble and postamble are used on the HS-DPCCH - see [29]*/
+ WORD wHarqPreambleMode; /* (MP)*/
+}T_zW_P_hs_dpcch;
+
+typedef struct{
+ WORD wNumbOfProcess;
+ /*memory partitioning 0:implicit 1:explicit*/
+ WORD wMemoryPartition;
+
+ DWORD dwProcessMemorySize[2*Z_W_P_MAX_H_PROCESS];
+}T_zW_P_hs_harq_info;
+
+typedef struct {
+ WORD wHsscchLessTfci;
+ WORD whsscchLessSecCodeSup;
+} T_zW_P_hsscch_LessTfsList;
+
+typedef struct {
+ WORD wHspdschCodeIndex;
+ WORD wHsscchLessTfsNum;
+ WORD wHsscchLessActiveFlg;
+ WORD wPadding;
+ T_zW_P_hsscch_LessTfsList atHsscchLessTfsList[Z_W_P_MAX_HSCCHLESS_TFS_NUM];
+} T_zW_P_hsscch_less;
+
+typedef struct{
+ WORD wDtxCycle1;
+ WORD wDtxCycle2;
+ WORD wDtxLongPreambleLength;
+ WORD wCqiDtxTimer;
+ WORD wDpcchBurst1;
+ WORD wDpcchBurst2;
+ WORD wCycle2InactivityThred;
+ WORD wDtxActiveFlg;
+
+} T_zW_P_dtx_info;
+
+typedef struct{
+ WORD wDrxCycle;
+ WORD wDrxCycleInacteThred;
+ WORD wDrxGrantMonitor;
+ WORD wDrxActiveFlg;
+} T_zW_P_drx_info;
+
+typedef struct{
+ WORD wEnableDelay;
+ WORD wDtxDrxOff;
+ WORD wUlDpcchSlotFormat;
+ WORD wDrxFlg;
+
+ T_zW_P_dtx_info tDtxInfo;
+ T_zW_P_drx_info tDrxInfo;
+} T_zW_P_dtx_drx_config;
+
+typedef struct{
+ /* indicate if secondary scrambling code exists for HS SCCH channel */
+ WORD wSecScrambCodeFlg;
+ /* secondary scrambling code value.
+ Valid only if sec_scr_code_valid is set to TRUE.
+ If not valid then primary CPICH scrambling code is used */
+ WORD wSecScrambCode;
+ /* number of channelisation codes to SCCH */
+ WORD wNumOfChannelCode;
+ WORD wPadding;
+ /* SCCH channelisation codes */
+ WORD awScchChannelCode [Z_W_P_MAX_HS_SCCH_CODES];
+}T_zW_P_hs_scch;
+
+typedef struct{
+ WORD wDlfreq;
+ /* serving HS-PDSCH radio link primary scrambling code */
+ WORD wPrimSrc;
+ WORD wHrnti;
+ WORD wDl64QAMConfigured;
+ WORD wHsDschTbSizeTable;
+ WORD wResetDpaFlg;
+
+ T_zW_P_hs_scch tHsscchConfigInfo;
+}T_zW_P_hsdpa_info;
+
+typedef struct{
+ WORD wDlfreq;
+ WORD wNewHrnti;
+ WORD wPrimSrc;
+
+ WORD wMeasPowerOff;
+ WORD wDl64QAMConfigured;
+ WORD wDiffTxDivers;
+ WORD wHsDschTbSizeTable;
+ WORD wSecHsdpaActiveFlg;
+
+ T_zW_P_hs_scch tHsscchConfigInfo;
+}T_zW_P_sec_hsdpa_info;
+
+typedef struct{
+ /*0:normalpattern,Ϊ0Ê±ÇøÓòIEÎÞЧ; 1: diversityPattern */
+ WORD wSecondCpichPattern;
+ WORD wScpichPowerOffFlg;
+ WORD wChanCode;
+ /*ȡֵ·¶Î§£º94-100 µ¥Î»dB,ÕæÊµÈ¡Öµ·¶Î§£º-6-0*/
+ WORD wScpichPowerOff;
+}T_zW_P_mimo_pilot_info;
+
+typedef struct{
+ /*ÓÃÓÚ´æ´¢mimoN-M-RatioÖÐö¾ÙÖµ¶ÔÓ¦µÄNµÄÖµ*/
+ WORD wMimoNRatio;
+ /*ÓÃÓÚ´æ´¢mimoN-M-RatioÖÐö¾ÙÖµ¶ÔÓ¦µÄMµÄÖµ*/
+ WORD wMimoMRatio;
+ WORD wPrecodeWeigRestr;
+ WORD wPadding;
+ T_zW_P_mimo_pilot_info tMimoPilotCfg;
+} T_zW_P_mimo_info;
+
+typedef struct{
+ /* 10.3.6.69a*/
+ WORD wRefTfci;
+ WORD wTfciPo;
+} T_zW_P_edch_tfci_po;
+
+typedef struct{
+ WORD wEdchRefEtfciNum;
+ WORD wPadding;
+ T_zW_P_edch_tfci_po atEdchTfciPo[Z_W_P_MAX_REF_ETFCI];
+} T_zW_P_edch_grant_config_info;
+
+typedef struct{
+ WORD wMinReducedEdpdchGainFactor;
+ WORD wMinEtfcSet; /*0XFFFF±íʾûÓÐÅäÖÃ×îСETFC×Ó¼¯*/
+ T_zW_P_edch_grant_config_info tEdchGrantConfigInfo;
+} T_zW_P_edpdch_info;
+
+typedef struct{
+ WORD wEdpcchPowerOffFlg;
+ WORD wDpcchPowerOff;
+ WORD wEdpdchPowerInterpolation;
+
+ /* E-TFC Boost Info */
+ WORD wEtfcBoostInfoFlg;
+ WORD wEtfciBoost;
+ WORD wDeltaT2TP;
+} T_zW_P_edpcch_info;
+
+typedef struct{
+ WORD wEdchTti;
+
+ /* 25.331, 10.3.5.7d:
+ If "rv0" is indicated, the UE shall only use E_DCH RV index 0.
+ Default value is "rvtable", in which case the UE shall use an RSN based
+ RV index. */
+ WORD wHarqRvConfig;/*0ºÍ1£¬·Ö±ð±íʾrv0ºÍrvtable*/
+
+ T_zW_P_edpdch_info tEdpdchInfo;
+ T_zW_P_edpcch_info tEdpcchInfo;
+} T_zW_P_edch_ul_info;
+
+typedef struct{
+ WORD wEagchChanCode;
+ WORD wPadding;
+} T_zW_P_edch_agch_info;
+
+
+typedef struct
+{
+ /* E-HICH-RGCH-SignatureSequence Signature Sequence; Ref: 10.3.6.122 in 25.331*/
+ WORD wSignatSequence; /* 0..39 */
+ WORD wPadding;
+}T_zW_P_comm_edch_rgch_info;
+
+typedef struct{
+ /* RG combination index; Ref: 10.3.6.100 in 25.331*/
+ WORD wRgchCombIdx; /* 0..5 */
+ /* E-HICH-RGCH-SignatureSequence Signature Sequence; Ref: 10.3.6.100 in 25.331*/
+ WORD wSignatSequence; /* 0..39 */
+} T_zW_P_edch_rgch_info;
+
+typedef struct{
+ /* HICH channelization code; Ref: 10.3.6.101 in 25.331 E-HICH-ChannelisationCode */
+ WORD wEhichChannlCode; /* 0..127 */
+ /* E-HICH-RGCH-SignatureSequence Signature Sequence; Ref: 10.3.6.100 in 25.331*/
+ WORD wSignatSequence; /* 0..39 */
+} T_zW_P_edch_hich_info;
+
+typedef struct{
+ WORD wEchDlChanBitmap;
+
+ /* primary scrambling code of this RL */
+ WORD wEdchRlPrimSrc;
+
+ T_zW_P_edch_rgch_info tEdchErgchInfo;
+ T_zW_P_edch_hich_info tEdchEhichInfo;
+} T_zW_P_edch_dl_per_rl_info;
+
+typedef struct{
+ WORD wPrimErntiFlg;
+ WORD wSecErntiFlg;
+
+ WORD wPrimErnti;
+ WORD wSecErnti;
+ /* Serving RL index in array atEdchDRlAddRecfgInfo[ [MAX_edch_RL] */
+ WORD wEdchServRlIdx; /* 0..(MAX_edch_RL-1) */
+
+ /* number of enteries valid in array e_rl_info[L1_MAX_edch_RL] */
+ WORD wNumOfEdchRl;
+ T_zW_P_edch_agch_info tEdchEagchInfo;
+ T_zW_P_edch_dl_per_rl_info atEdchDlRlInfo[Z_W_P_MAX_EDCH_NO_OF_RL];
+} T_zW_P_edch_dl_info;
+
+
+typedef struct{
+ T_zW_P_edch_ul_info tEdchUlInfo;
+ T_zW_P_edch_dl_info tEdchDlInfo;
+}T_zW_P_edch_info;
+
+typedef struct{
+ WORD wUlFreq;
+ WORD wScrambCodeType;
+ DWORD dwScrambCodeNum;
+ WORD wPowerPreambleLen;
+ WORD wDpcchPowerOff;
+
+ WORD wNumOfRl;
+ WORD wSecEdchActiveFlg;
+ T_zW_P_fdpch_dedicated_rl_params atFdpchDedicatedRlParams[Z_W_P_MAX_NO_OF_RL];
+
+ T_zW_P_edch_ul_info tEdchUlInfo;
+ T_zW_P_edch_dl_info tEdchDlInfo;
+} T_zW_P_sec_edch_info;
+
+typedef struct
+{
+ WORD wT321;
+ WORD wDrx;
+ WORD wRxBurst;
+ WORD wDrxInterrupHsdsch;
+} T_zW_P_fach_dpa_drx_info;
+
+typedef struct
+{
+ /* ACK-NACK repetition factor (1..4) UL-DPCH-PowerControlInfo-r7 */
+ WORD wAackNackRepFactor; /*DPCH¹¦ÂÊ¿ØÖÆ*/
+
+ WORD wPowerControlAlgorith;
+ WORD wTpcStepSize;
+
+ WORD wMeasFeedBackFlg;
+ T_zW_P_MeasFeedBack tMeasFeedBack;
+
+ WORD wDeltaAckFlg;
+ WORD wDeltaAck; /* delta ACK (0..8) */
+
+ WORD wDeltaNAckFlg;
+ WORD wDeltaNack; /* delta NACK (0..8) */
+} T_zW_P_fach_dpcch;
+
+typedef struct
+{
+ WORD wHrntiType;
+ WORD wHrnti;
+ WORD wBcchHrnti;
+ WORD wHsdpaDrxFlg;
+ WORD wHsdpcchSupAck;
+ WORD wFachDpcchFlg;
+ T_zW_P_hs_scch tHsscchConfig;
+ T_zW_P_hs_harq_info tHsHarqInfo;
+ T_zW_P_fach_dpa_drx_info tHsdpaDrxInfo;
+ T_zW_P_fach_dpcch tFachDpcch;
+} T_zW_P_fach_dpa_info;
+
+typedef struct
+{
+ WORD wSymbolOff;
+ WORD wFdpchChanCode;
+ WORD wUlDpcchScrambCodeType;
+ WORD wCommEdchRgchFlg;
+ DWORD dwUlDpcchScrambCode;
+ T_zW_P_comm_edch_rgch_info tCommEdchRgchInfo;
+ T_zW_P_edch_hich_info tEdchEhichInfo;
+}T_zW_P_common_edch_resource_list;
+
+typedef struct
+{
+ WORD wPriErntiFlg;
+ WORD wPriErnti;
+ WORD wResetFlg;
+ WORD wMaxTxPower;
+ WORD wFdpchTpcCommandErrorRate;
+ /* 25.331, 10.3.5.7d:
+ If "rv0" is indicated, the UE shall only use E_DCH RV index 0.
+ Default value is "rvtable", in which case the UE shall use an RSN based
+ RV index. */
+ WORD wHarqRvConfig;
+
+ WORD wAddEdchBackOff;
+ WORD wEdchTti;
+ WORD wEtfciTableIndex;
+ WORD wCommonEdchResourceNum;
+
+ T_zW_P_edch_agch_info tEdchEagchInfo;
+ T_zW_P_edpdch_info tEdpdchInfo;
+ T_zW_P_edpcch_info tEdpcchInfo;
+ T_zW_P_common_edch_resource_list atCommonEdchResourcelist[32];
+ } T_zW_P_fach_upa_info;
+
+typedef struct{
+
+ WORD wEaiInd;
+ WORD wDpcchPowerOffPe;
+ WORD wEaiPowerOff;
+ WORD wPadding;
+ T_zW_P_prach_sysinfo tPrachSysinfo;/* ÔöÇ¿ÏÂPRACHÖ»ÓÐÒ»×é¡£*/
+}T_zW_P_hspa_plus_prach_info;
+
+typedef struct
+{
+ WORD wHrnti;/*½ÓÊÕÏÂÐÐHS-SCCHʱÓõ½µÄUE ±êʶ*/
+ WORD wBcchHrnti; /*ÔÚÏÂÐеÚÒ»ÌõHS-SCCHÉϽÓÊÕBCCHÉϵÄÏûϢʱÓõ½µÄרÓÃUE±êʶ*/
+
+ T_zW_P_hs_scch tHsscchConfig;
+ T_zW_P_hs_harq_info tHsHarqInfo;
+} T_zW_P_dcch_dtch_relate_info;
+
+typedef struct
+{
+ WORD wSecScrambCodeFlg;
+ WORD wSecScrambCode;
+ WORD wSubFrameNumOfPcch;/*number of subframes used to transmit the PAGING TYPE 1*/
+ WORD wHsdpaChanCode;
+ WORD wTbsNum;
+ WORD wPadding;
+ WORD awTbsList[2];
+}T_zW_P_pcch_relate_info;
+
+typedef struct
+{
+ WORD wDcchDtchRec;/*µ±Ç°ÊÇ·ñÖ§³Ö½ÓÊÕDTCHºÍDCCH£»0£º²»Ö§³Ö£»1£ºÖ§³Ö*/
+ WORD wPadding;
+ T_zW_P_dcch_dtch_relate_info tDcchDtchInfo; /*Dcch/DtchÉϵĽÓÊÕÅäÖÃÐÅÏ¢£¬½öµ±wDcch_dtch_rec_fg=1ʱÓÐЧ*/
+ T_zW_P_pcch_relate_info tPcch_info; /*PcchÉϵĽÓÊÕÅäÖÃÐÅÏ¢£¬½öµ±wDcch_dtch_rec_fg=0ʱÓÐЧ*/
+} T_zW_P_pch_dpa_info;
+
+
+
+
+/*==============================================================================
+ ÔÓP_ADD_PRACH_REQ( URRC->PHY )
+ ˵Ã÷: URRCÅäÖÃÎïÀí²ãËæ»ú½ÓÈëÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+ T_zW_P_prach_sysinfo tPrachSysinfo;
+}T_zW_P_add_prach_req;
+
+
+/*==============================================================================
+ ÔÓP_W_UL_DPCH_SETUP_MODIFY_REQ( URRC->PHY )
+ ˵Ã÷: URRC½¨Á¢ÉÏÐÐרÓÃÎïÀíÐŵÀ ÓÃÓÚ·ÇDCH½¨Á¢µ½DCH¼°DCHÈíÓ²Çл»,
+ ÒÔ¼°È¡Ïû°éËæDPCH£¬ÉÏÐÐUPA£¬ÏÂÐÐFDPCH¶ÔÓ¦µÄÉÏÐÐDPCCHÅäÖá£
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+ /*ÓÐͬƵ£¬ÒìÆµÓ²ÇУ¬DCH̬¿çÖÆÊ½Çл»£¬CCO»ØÍËÅäULDPCHʱ wHandoverConfigReturnFlg==1.ÆäËûÇé¿öwHandoverConfigReturnFlg==0
+*/
+// WORD wHandoverConfigReturnFlg;
+
+ WORD wHandoConfReturBitmap;/*Ó²ÇÐʧ°Ü»ØÍËָʾBITMAP. ´ÓÓÒÏò×óBIT0ÖÃ1±íʾµ±Ç°ÎªÖÆÊ½ÄÚÓ²ÇÐʧ°Ü»ØÍË£¬BIT1ÖÃ1±íʾ¿çÖÆÊ½Çл»Ê§°Ü»ØÍË£¬BIT2ÖÃ1±íʾ¿çÖÆÊ½CCOʧ°Ü»ØÍË*/
+ WORD wUlFreq;
+
+ WORD wDlFreq;
+ WORD wSpreadingFactor;
+ DWORD dwUlScrambCode;
+
+ WORD wScrambCodeType;
+ WORD wNumOfDPDCH;/*0±íʾûÓÐÅäÖÃDPDCH,Èç¹ûÈ¡0£¬´ËʱtUlTrchReconfig Ò²ÊÇÎÞЧµÄ¡£½ö½öÅäÖÃULDPCCH**/
+ WORD wTfciFlg;
+ WORD wNumOfFbiBits;
+
+ /*µ±wTfciExist; wNumFbiBits ¶¼²»´æÔÚʱ£¬wNumTPCBits¿ÉÑ¡´æÔÚ*/
+ WORD wNumOfTPCBits;
+ WORD wPunctLimit;/*DPDCH²»Îª0ÊDzÅÓÐЧ*/
+
+ WORD wPowerPreambleLen;
+ WORD wDpcchPowerOff;
+
+ WORD wDpcchPowerOffStep;
+ WORD wPowerControlAlgorithm;
+ WORD wTpcStepSize;
+ WORD wMaxTxPower;
+
+
+T_zW_P_ul_dpch_trch_reconfig tUlTrchReconfig;
+}T_zW_P_ul_dpch_setup_modify_req;
+
+/*==============================================================================
+ ÔÓP_W_DL _DPCH_SETUP_MODIFY_REQ( URRC->PHY )
+ ˵Ã÷: URRCÇëÇóÎïÀí²ã½¨Á¢×¨ÓÃÎïÀíÐŵÀ£¨ÓÃÓÚDPDCH¼°DPCCHµÄÅäÖã©
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wSoftHandoverFlg;
+ WORD wActTime;
+ /*ʱ¼ä±£³Ö(ÐèҪͬ²½ºÍ²»ÐèҪͬ²½)»¹ÊÇʱ¼äÖØ½¨Ó²ÇÐָʾ ȡֵ·¶Î§£¨0-3£© 0±íʾ³õʼ»¯ 1±íʾ²»ÐèҪͬ²½µÄʱ¼ä±£³ÖÓ²ÇУ¬2±íʾÐèҪͬ²½µÄʱ¼ä±£³ÖÓ²ÇУ¬3±íʾʱ¼äÖØ½¨Ó²ÇС£*/
+ WORD wTimingIndication;
+
+ WORD wDpcMod;
+ WORD wPowerOffPilotPdpdch;
+ WORD wSf;
+ WORD wNumOfPilotBits;
+ WORD wTfciFlg;
+ WORD wTrCHFixedFlg;
+ /*N312,N313,N315*/
+ WORD wN312;
+ WORD wN313;
+ WORD wN315;
+ WORD wPadding;
+ DWORD dwDoff;
+ WORD wPostVerifyPeriodFlg;
+ WORD wNumOfRl;
+ T_zW_P_dedicated_rl_params atDedRlParams[Z_W_P_MAX_NO_OF_RL];
+ T_zW_P_dl_trch_reconfig tDlTrchReconfig;
+}T_zW_P_dl_setup_modify_req;
+
+
+/*==============================================================================
+ ÔÓP_W_DL _FDPCH_SETUP_MODIFY_REQ( URRC->PHY )
+ ˵Ã÷: URRCÇëÇóÎïÀí²ã½¨Á¢²¿·ÖרÓÃÎïÀíÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wSoftHandoverFlg;
+ WORD wActTime;
+ /*Enumerated(Initialise,Maintain) 0:Initialise,1:Maintain*/
+ WORD wTimingIndication;
+ WORD wDpcMod;
+ WORD wFdpchTpcErrorRate;
+
+ /*N312,N313,N315*/
+ WORD wN312;
+ WORD wN313;
+ WORD wN315;
+ WORD wPadding;
+ DWORD dwDoff;
+ WORD wPostVerifyPeriodFlg;
+ WORD wNumOfRl;
+ T_zW_P_fdpch_dedicated_rl_params atFdpchDedRlParams[Z_W_P_MAX_NO_OF_RL];
+}T_zW_P_dl_fdpch_setup_modify_req;
+
+/*==============================================================================
+ ÔÓP_W_DPCH_SETUP_MODIFY_CNF( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ã֪ͨURRCÅäÖü¤»îʱ¼äµ½,ÎïÀí²ãÒѾÆôÓÃеÄÅäÖÃ,
+ ´ËʱUURRCÆô¶¯T312¶¨Ê±Æ÷.´ËÏûÏ¢ÓÃÓÚP_DL _DPCH_SETUP_MODIFY_REQºÍ
+ P_dl_FDPCH_SETUP_MODIFY_REQµÄ·´À¡
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wRlt ;
+}T_zW_P_dl_dpch_setup_modify_cnf;
+
+/*==============================================================================
+ ÔÓP_W_IN_SYNC_IND( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ãÔÚ½¨Á¢×¨ÓÃÎïÀíÐŵÀʱ,֪ͨURRCͬ²½³É¹¦£¬ÌØÖ¸Ö÷ƵµãµÄͬ²½
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_in_sync_ind;
+
+/*==============================================================================
+ ÔÓP_W_OUT_SYNC_IND( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ã֪ͨURRCʧ²½£¬ÌØÖ¸Ö÷ƵµãµÄʧ²½
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_out_sync_ind;
+
+/*==============================================================================
+ ÔÓP_W_UL_DPCH_REL_REQ( URRC->PHY )
+ ˵Ã÷: URRCÓÃÓÚÊÍ·ÅÉÏÐÐרÓÃÎïÀíÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+}T_zW_P_ul_dpch_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_DL_DPCH_REL_REQ( URRC->PHY )
+ ˵Ã÷: URRCÓÃÓÚÊÍ·ÅÏÂÐÐרÓÃÎïÀíÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+}T_zW_P_dl_dpch_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_DPCH_REL_CNF( PHY->URRC )
+ ˵Ã÷: µ×²ãÈ·ÈÏDPCHÐŵÀÊÍ·ÅÍê±Ï()¡£
+ ÊÇP_ul_DPCH_REL_REQ»òP_dl_DPCH_REL_REQµÄ·´À¡ÏûÏ¢¡£
+ µ±ÉÏÏÂÐÐDPCHÒ»Æðɾ³ýʱ£¬ÎïÀí²ãÖ»ÐèÒª»Ø¸´Ò»ÌõP_DPCH_REL_CNF
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_dpch_rel_cnf;
+
+/*==============================================================================
+ ÔÓP_W_REL_SCCPCH_REQ( URRC->PHY )
+ ˵Ã÷: URRC ÓÃÓÚÊͷŸ¨¹«¹²ÎïÀíÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+}T_zW_P_rel_sccpch_req;
+
+/*==============================================================================
+ ÔÓP_W_REL_SCCPCH_CNF( PHY->URRC )
+ ˵Ã÷: µ×²ãÈ·ÈÏSCCPCHÐŵÀÊÍ·ÅÍê±Ï
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_rel_sccpch_cnf;
+
+/*==============================================================================
+ ÔÓP_W_ADD_MODIFY_SCCPCH_REQ( URRC->PHY )
+ ˵Ã÷: URRC ÓÃÓÚÅäÖø¨¹«¹²ÎïÀíÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wSecScramblCodeFlg;
+ WORD wSecScramblCode; /*Secondary scrambling code */
+ WORD wTxDivMode;
+ WORD wSpreadingFactor;
+ WORD wSccpchChanCode;
+ WORD wSccpchChipsOffset;
+ WORD wPilotExistence;
+ WORD wTfciFlg;
+ WORD wTrCHFixedFlg;
+ T_zW_P_dl_trch_reconfig tDlTrchReconfig;
+}T_zW_P_add_modify_sccpch_req;
+
+/*==============================================================================
+ ÔÓP_W_PAGING_REQ( URRC->PHY )
+ ˵Ã÷: URRC ÓÃÓÚÅäÖÃѰºôÐŵÀ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+ T_zW_P_add_modify_sccpch_req tAddModifySccpchReq;
+ T_zW_P_pich_info tPichInfo;
+}T_zW_P_paging_req;
+
+/*==============================================================================
+ ÔÓP_W_STOP_PAGING_REQ( URRC->PHY )
+ ˵Ã÷: URRC ÓÃÓÚֹͣѰºô
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_stop_paging_req;
+
+/*==============================================================================
+ ÔÓP_W_STOP_PAGING_CNF( PHY->URRC )
+ ˵Ã÷: µ×²ãÈ·ÈÏÊÍ·ÅѰºôÐŵÀÍê±Ï
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_stop_paging_cnf;
+
+/*==============================================================================
+ ÔÓP_W_ADD_HSDPA_REQ( URRC->PHY )
+ ˵Ã÷: URRC ÓÃÓÚÅäÖÃHSDPAÏà¹ØÐŵÀ£¨ÐèÒªÓëDPCH»òFDPCHÅäÖÃÅäºÏʹÓã©
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime; /*0~255; 256:ÎÞЧ*/
+ WORD wDtxDrxConfigFlg;
+ WORD wHsscchLessFlg;
+
+ WORD wSecHsdpaInfoFlg;
+ WORD wMimoParamFlg;/*¶ÔÓ¦atMimoInfo[0]ÖеIJÎÊý*/
+ WORD wSecCellMimoParaFlg; /*¶ÔÓ¦atMimoInfo[1]ÖеIJÎÊý*/
+ WORD wMacHdTyp;
+
+ T_zW_P_hs_dpcch tHsdpcchConfigInfo;
+ T_zW_P_hs_harq_info tHsHarqInfo;
+ T_zW_P_hsscch_less tHsscchLessInfo;
+ T_zW_P_dtx_drx_config tDtxDrxConfig;
+ T_zW_P_hsdpa_info tHsdpaInfo;
+ T_zW_P_sec_hsdpa_info tSecHsdpaInfo;
+ T_zW_P_mimo_info atMimoInfo[2];
+}T_zW_P_hsdpa_config_req;
+
+/*==============================================================================
+ ÔÓP_W_REL_HSDPA_REQ( URRC->PHY )
+ ˵Ã÷: URRCÊÍ·ÅHSDPAÅäÖÃÇëÇó
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+}T_zW_P_hsdpa_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_REL_HSDPA_CNF( PHY->URRC )
+ ˵Ã÷: µ×²ãÈ·ÈÏÊÍ·ÅHSDPAÐŵÀÍê±Ï
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_hsdpa_rel_cnf;
+
+/*==============================================================================
+ ÔÓP_W_ADD_HSUPA_REQ( URRC->PHY )
+ ˵Ã÷: URRCÅäÖÃHSUPA
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+ WORD wUlfreq;
+ WORD wMaxTxPower;
+
+ WORD wUl16QAMFlg;
+ WORD wEtfciTableIndex;/* ·Ç16QAMʱȡֵ·¶Î§ÊÇ0µ½1.16QAMʱȡֵ·¶Î§ÊÇ2µ½3*/
+ WORD wSecEdchFlg;
+ WORD wPadding;
+ T_zW_P_edch_info tEdchInfo;
+ T_zW_P_sec_edch_info tSecEdchInfo;
+}T_zW_P_hsupa_config_req;
+
+/*==============================================================================
+ ÔÓP_W_HSUPA_REL_REQ( URRC->PHY )
+ ˵Ã÷: URRCɾ³ýHSUPA×ÊÔ´
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;
+}T_zW_P_hsupa_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_HSUPA_REL_CNF( PHY->URRC )
+ ˵Ã÷: µ×²ãÈ·ÈÏɾ³ýHSUPA×ÊÔ´Íê±Ï
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_hsupa_rel_cnf;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_FACH_REQ( URRC->PHY )
+ ˵Ã÷: ÅäÖÃL1 FACHºÍIDLE̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ.½áºÏPRACHÅäÖÃÒ»ÆðʹÓÃ.
+ ÔöÇ¿FACH̬µ±ÏÂÐвÉÓÃDPAÊÇ£¬´ËʱwPlusUpaFlgÖÃ0£¬
+ ÉÏÐÐÐèÒªP_W_ADD_PRACH_REQÆÕͨRACHÅäÖÃ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wDlFreq;
+ WORD wPlusUpaFlg;
+ WORD wPadding;
+ T_zW_P_fach_dpa_info tFachDpaInfo;
+ T_zW_P_fach_upa_info tFachUpaInfo;
+ T_zW_P_hspa_plus_prach_info tPlusPrachInfo;
+} T_zW_P_hspa_plus_fach_req;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_PCH_REQ( URRC->PHY )
+ ˵Ã÷: ÅäÖÃL1 PCH̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wDlFreq;
+ T_zW_P_pch_dpa_info tPchDpaInfo;
+ T_zW_P_pich_info tPichInfo;
+} T_zW_P_hspa_plus_pch_req;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_FACH_REL_REQ( URRC->PHY )
+ ˵Ã÷: ɾ³ýL1 FACHºÍIDLE̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime; /*0~255; 256:Á¢¼´ÆðЧ*/
+} T_zW_P_hspa_plus_fach_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_PCH_REL_REQ( URRC->PHY )
+ ˵Ã÷: ɾ³ýL1 PCH̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_hspa_plus_pch_rel_req;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_FACH_REL_CNF( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ã»Ø¸´¸øL1TµÄÔöÇ¿FACHÅäÖÃɾ³ýÈ·ÈÏÏûÏ¢
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_hspa_plus_fach_rel_cnf;
+
+/*==============================================================================
+ ÔÓP_W_HSPA_PLUS_PCH_REL_CNF( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ã»Ø¸´¸øL1TµÄÔöÇ¿PCHÅäÖÃɾ³ýÈ·ÈÏÏûÏ¢
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_hspa_plus_pch_rel_cnf;
+
+/*==============================================================================
+ ÔÓP_W_HSSCCH_ORDER_IND( PHY->URRC )
+ ˵Ã÷: ÎïÀí²ãÊÕµ½HSSCCH ORDERºóÉϱ¨PS
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wHsscchOrderTypeInd;/*ͨ¹ý´Ë±êʶ£¬PHY֪ͨPS£¬¸Õ¸ÕÊÕµ½µÄORDERÖÐЯ´øµÄÀàÐÍ£¬¸ÃÀàÐ͵碌îÈ¥»îÐèÒª¸ù¾ÝwHsscchOrderTypeÏàӦλÅжϡ£*/
+ WORD wHsscchOrderType;
+ WORD wPadding;
+}T_zW_P_Hscch_Order_Ind;
+
+/*wHsscchOrderTypeInd ±íʾµ±Ç°ÊÕµ½ÁËÄÄЩORDERµÄÀàÐÍ¡£ÓëwHsscchOrderTypeÖеÄÀàÐÍÒ»Ò»¶ÔÓ¦¡£
+´ÓÓÒÏò×ó£¬Ã¿¸öBIT·Ö±ð±íʾHSDSCH·þÎñ±ä¸ü£¬EPCHʱÔÚHS_SCCHÉÏÊÕµ½HRNTI,LESS£¬µÚ¶þƵµãDPA£¬µÚ¶þƵµãUPAÇé¿ö£¬ÏàӦλ ÖÃÒ»±íʾÊÕµ½ÁËÏàÓ¦ÀàÐ͵ÄORDER,¡£
+µÚ0±ÈÌØ£º1±íʾ¸ÕÊÕµ½HSDSCH·þÎñÐ¡Çø¸ü¸ÄµÄORDER £»
+µÚ1±ÈÌØ£»1±íʾ¸ÕÊÕµ½EPCHʱÔÚHS_SCCHÉÏÊÕµ½HRNTIµÄORDER
+µÚ2±ÈÌØ£º1±íʾ¸ÕÊÕµ½DTXÏà¹ØORDER
+µÚ3±ÈÌØ£º1±íʾ¸ÕÊÕµ½µÄÊÇDRX Ïà¹ØORDER
+µÚ4±ÈÌØ£º1±íʾ¸Õ¸ÕÊÕµ½µÄÊÇHS_SCCH_LESSÏà¹ØµÄORDER
+µÚ5±ÈÌØ£º1±íʾ¸Õ¸ÕÊÕµ½µÄÊǵÚ2ƵµãÏÂÐÐDPAÏà¹ØµÄORDER
+µÚ6±ÈÌØ£º1±íʾ¸Õ¸ÕÊÕµ½µÄÊǵÚ2ƵµãÉÏÐÐUPAÏà¹ØµÄORDER
+*/
+/*
+wHsscchOrderType´ÓÓÒÏò×ó£¬Ã¿¸öBIT·Ö±ð±íʾHSDSCH·þÎñ±ä¸ü£¬EPCHʱÔÚHS_SCCHÉÏÊÕµ½HRNTI,LESSµÄ¼¤»îÈ¥»î£¬µÚ¶þƵµãDPA¼¤»îÈ¥»î£¬µÚ¶þƵµãUPAµÄ¼¤»îÈ¥»îÇé¿ö
+µÚ0±ÈÌØ£º0±íʾHSDSCH·þÎñÐ¡Çø¸ü¸Ä,1±íʾδÊÕµ½HSDSCH·þÎñÐ¡Çø¸ü¸Ä. £»
+µÚ1±ÈÌØ£»1±íʾEPCHʱÔÚHS_SCCHÉÏÊÕµ½HRNTI
+µÚ2±ÈÌØ£º0±íʾȥ»îDTX£¬1±íʾ¼¤»îDTX
+µÚ3±ÈÌØ£º0±íʾȥ»îDRX£¬1±íʾ¼¤»îDRX
+µÚ4±ÈÌØ£º0±íʾȥ»îHS_SCCH_LESS£¬ 1±íʾ¼¤»îHS_SCCH_LESS
+µÚ5±ÈÌØ£º0±íʾȥ»îµÚ2ƵµãÏÂÐÐDPA£¬1±íʾ¼¤»îµÚ2ƵµãÏÂÐÐDPA
+µÚ6±ÈÌØ£º0±íʾȥ»îµÚ2ƵµãÉÏÐÐUPA£¬1±íʾ¼¤»îµÚ2ƵµãÉÏÐÐUPA
+
+*/
+/*==============================================================================
+ ÔÓP_W_NERBERCELL_HSSCCH_ORDER_REQ( URRC->PHY )
+ ˵Ã÷: ÇëÇóÎïÀí²ã¶Áȡָ¶¨Ð¡ÇøµÄHSSCCH ORDER.ÏìÓ¦ÏûÏ¢ÊÇP_Hscch_Order_Ind.
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPriSrc;
+ WORD wMonitorTimeLen;
+ WORD wPadding;
+ T_zW_P_hs_scch tHsscchConfigInfo;
+}T_zW_P_Hscch_Order_Req;
+
+/*==============================================================================
+ ÔÓP_W_NERBERCELL_HSSCCH_ORDER_ABORT_REQ( URRC->PHY )
+ ˵Ã÷: ÇëÇóÎïÀí²ãÈ¡Ïû¶Áȡָ¶¨Ð¡ÇøµÄHSSCCH ORDER.
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wPaddng;
+}T_zW_P_Hscch_Order_Abort_Req;
+
+
+/*==============================================================================
+ ÔÓW_P_EFACH_UPDATE_RNTI_REQ( URRC->PHY )
+ ˵Ã÷: ֪ͨÎïÀí²ã¸üÐÂרÓõÄHRNTI»òERNTI
+==============================================================================*/
+typedef struct{
+ WORD wMsgId;
+ WORD wActTime;/*0~255; 256:Á¢¼´ÆðЧ*/
+ WORD wUpdateType;/*1£ºÖ»¸üÐÂH-RNTI£»2£ºÖ»¸üÐÂE-RNTI£»3£º¸üÐÂH-RNTIºÍE-RNTI;*/
+ WORD wHrnti;
+ WORD wPriErnti; /*רÓÃÖ÷ERNTI*/
+ WORD wPadding;
+ }T_zW_P_efach_update_rnti_req;
+
+ /*==============================================================================
+ * RBCÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå -------end *
+ ==============================================================================*/
+ /*==============================================================================
+ * MCRÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå --------start *
+ ==============================================================================*/
+
+ /*==============================================================================
+ RRC<->PHY
+ ¹¦ÄÜ:
+ RRCºÍPHY²ã¼äµÄͬƵ²âÁ¿ÅäÖýӿÚ
+ ½á¹¹:
+ ͬƵ²âÁ¿ÅäÖÃÏûÏ¢ W_P_INTRA_FREQ_MEAS_REQ
+ ͬƵ²âÁ¿½á¹ûÏûÏ¢ W_P_INTRA_FREQ_MEAS_IND
+ ==============================================================================*/
+typedef struct {
+ WORD wCellId;
+ WORD wPrimSrc;
+ WORD wChipAccuracy;
+ WORD wRefTimeDiff;
+ WORD wTxDivInd;
+ WORD wSynInforNeed;
+}T_zW_P_cell_info;
+
+typedef struct {
+ WORD wCellNum;
+ WORD wUarfcn;
+ T_zW_P_cell_info atMeasCellInfo[Z_W_P_MAX_CELL_NUM];
+}T_zW_P_freq_meas_info;
+
+typedef struct {
+ WORD wUarfcn;
+ WORD wCellNum;
+ WORD awPrimSrc[Z_W_P_MAX_CELL_NUM];
+}T_zW_P_freq_not_meas_info;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wDetectedSetQuantity;
+ WORD wMeasFreqNum;
+ WORD wNotMeasFreqNum;
+ DWORD dwMeasId;
+ T_zW_P_freq_meas_info atIntraFreqMeasInfo[Z_W_P_MAX_INTRAFREQ_NUM];
+ T_zW_P_freq_not_meas_info atNotMeasFreqInfo[Z_W_P_MAX_INTRAFREQ_NUM];
+}T_zW_P_intra_freq_meas_req;
+
+
+typedef struct {
+ WORD wCellId;
+ WORD wPrimSrc;
+ WORD wSfnFlag:1;
+ WORD wCpichRscp:8;
+ WORD wCpichEcNo:7;
+ WORD wSfn;
+ WORD wOff;
+ WORD wTm;
+} T_zW_P_cell_meas_rlt;
+
+typedef struct{
+ WORD wUarfcn;
+ WORD wCellNum:8;
+ WORD wRssi:8;
+ T_zW_P_cell_meas_rlt atCellMeasRlt[Z_W_P_MAX_CELL_NUM];
+} T_zW_P_freq_meas_rlt;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wFreqNum;
+ DWORD dwMeasId;
+ T_zW_P_freq_meas_rlt atIntraFreqMeasRlt[Z_W_P_MAX_INTRAFREQ_NUM];
+}T_zW_P_intra_freq_meas_ind;
+
+ /*==============================================================================
+ RRC<->PHY
+ ¹¦ÄÜ:
+ RRCºÍPHY²ã¼äµÄÒìÆµ²âÁ¿ÅäÖýӿÚ
+ ½á¹¹:
+ ÒìÆµ²âÁ¿ÅäÖÃÏûÏ¢ W_P_INTER_FREQ_MEAS_REQ
+
+==============================================================================*/
+typedef struct{
+ WORD wUarfcn;
+ WORD wCearchCellFlg; /*1±íʾ¸ÃƵµã²»½ö²âÁ¿RSSI»¹ÐèÒª½øÐÐÐ¡ÇøËÑË÷£¬²¢½øÐÐÐ¡Çø²âÁ¿½á¹ûÉϱ¨¡£0±íʾ¸ÃƵµã½ö²âÁ¿RSSI*/
+}T_zW_P_Blind_freq_meas_req;
+
+
+typedef struct {
+ WORD wMsgId;
+ WORD wFreqNum;
+ WORD wBlindFreqNum;
+ WORD wLbsFlag;
+ DWORD dwTmeasInial;
+ DWORD dwTmeas;
+ DWORD dwMeasId;
+ T_zW_P_freq_meas_info atInterFreqMeasInfo[Z_W_P_MAX_INTERFREQ_NUM]; /*wFreqNumÊýĿָʾ*/
+ T_zW_P_Blind_freq_meas_req atBlindFreq[Z_W_P_MAX_BLIND_INTERFREQ_NUM]; /*wBlindFreqNumÊýĿָʾ*/
+}T_zW_P_inter_freq_meas_req;
+
+ /*==============================================================================
+ RRC<->PHY
+ ¹¦ÄÜ:
+ RRCºÍPHY²ã¼äµÄÒìÆµ²âÁ¿ÅäÖýӿÚ
+ ½á¹¹:
+ ÒìÆµ²âÁ¿½á¹ûÏûÏ¢ W_P_INTER_FREQ_MEAS_IND
+==============================================================================*/
+typedef struct
+{
+ WORD wPrimSrc;
+ WORD wCpichRscp;
+ WORD wCpichEcNo;
+ WORD wPadding;
+}T_zW_blind_cell_rlt;
+
+typedef struct
+{
+ WORD wUarfcn;
+ WORD wRssi;
+ WORD wCellNum; /* ¸ÃƵµãÏÂä²âÁ¿µÄÐ¡Çø¸öÊý */
+ WORD wPadding;
+ T_zW_blind_cell_rlt atBlindCellRlt[Z_W_P_MAX_BLIND_INTERFREQ_CELL_NUM];
+}T_zW_blind_uarfcn_rlt;
+
+
+typedef struct{
+ WORD wMsgId;
+ WORD wInterFreqNum;
+ WORD wBlindFreqNum;
+ WORD wRptFlg; /*0:ÖÜÆÚÉϱ¨ 1:ÌáǰÉϱ¨*/
+ DWORD dwMeasId;
+ T_zW_P_freq_meas_rlt atInterFreqMeasRlt[Z_W_P_MAX_INTERFREQ_NUM];
+ T_zW_blind_uarfcn_rlt atBlindFreqRlt[Z_W_P_MAX_BLIND_INTERFREQ_NUM];
+}T_zW_P_inter_freq_meas_ind;
+
+
+/*==============================================================================
+ PHY->RRC
+ ¹¦ÄÜ:
+ RHYÏòRRC·¢ËÍ·þÎñÐ¡Çø²âÁ¿½á¹ûÉϱ¨
+ ½á¹¹:
+ ·þÎñÐ¡Çø²âÁ¿½á¹ûÉϱ¨ÏûÏ¢ W_P_SERVCELL_MEAS_IND
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wPrimSrc;
+ WORD wCpichRscp;
+ WORD wCpichEcNo;
+ DWORD dwMeasId;
+ WORD wRssi; //·þÎñƵµãRSSIÖµ£¬È¡Öµ·¶Î§:0~76£¬¶ÔÓ¦-25dBm~-100dBm
+ WORD wPadding;
+}T_zW_P_servcell_meas_ind;
+
+/*==============================================================================
+ RRC<->PHY
+ ¹¦ÄÜ:
+ RRCºÍPHY²ã¼äµÄUEÄÚ²¿²âÁ¿ÅäÖýӿÚ
+ ½á¹¹:
+ UEÄÚ²¿²âÁ¿ÇëÇóÏûÏ¢ W_P_UE_INTERNAL_MEAS_REQ
+ UEÄÚ²¿²âÁ¿½á¹ûÉϱ¨ W_P_UE_INTERNAL_MEAS_IND
+==============================================================================*/
+
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+ WORD wRepInterval;
+ WORD wTxPowerNeed:1;
+ WORD wRxTxNeed:1;
+ WORD wRssiNeed:1;
+ WORD :13;
+ DWORD dwMeasId;
+}T_zW_P_ueinternal_meas_req;
+
+
+typedef struct {
+ WORD wPrimSrc;
+ WORD wRxTxTimeDiff;
+}T_zW_P_rxtx_time_diff_rlt;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+ WORD wTxPowerFlag:1;
+ WORD wRssiFlag:1;
+ WORD :14;
+ WORD wTxPower;
+ WORD wRssi;
+ WORD wNumOfRxTxResults;
+ DWORD dwMeasId;
+ T_zW_P_rxtx_time_diff_rlt atRxTxTimeDiffRlt[Z_W_P_MAX_NO_OF_RL];
+}T_zW_P_ueinternal_meas_ind;
+
+ /*==============================================================================
+ RRC->PHY
+ ¹¦ÄÜ:
+ RRCÏòPHY·¢Ë͵IJâÁ¿É¾³ýָʾ
+ ½á¹¹:
+ ²âÁ¿ÊÍ·ÅÏûÏ¢ W_P_MEAS_REL_REQ_EV
+ wMeasTypes±àÂ룺ÏàÓ¦bitλÖÃ1±íʾÊÍ·Å´ËÀàÐͲâÁ¿£»·ñÔò²»ÊÍ·Å
+ bit0: ServCellMeas
+ bit1: IntraFreq
+ bit2: InterFreq
+ bit3£ºUeInterMeas
+ ==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wMeasTypes;
+}T_zW_P_meas_rel_req;
+
+ /*==============================================================================
+ RRC->PHY
+ ¹¦ÄÜ:
+ Fach̬ϲâÁ¿Ê±»úÅäÖÃ
+ ½á¹¹:
+ FMOÐÅÏ¢ÅäÖà W_P_FMO_INFO_REQ
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wFMONeed; /*ָʾÊÇ·ñʹÓÃFMO¡£0±íʾȡÏûFMO£¬·Ç0Öµ±íʾÅäÖÃFMO*/
+ WORD wTtiPeriod; /*=M_REP, measurement occasion cycle length */
+ WORD wTtiOffset; /*=C_rnti RNTImod M_REP*/
+}T_zW_P_fmo_req;
+
+ /*==============================================================================
+ RRC->PHY
+ ¹¦ÄÜ:
+ Dch̬ÏÂѹËõģʽÐÅÏ¢ÅäÖÃ
+ ½á¹¹:
+ ѹËõģʽÐÅÏ¢ÅäÖà W_P_COMPRESS_MODE_REQ
+==============================================================================*/
+typedef struct {
+ WORD wCompressedModeUsage; /*ÓÃÓÚÉÏÐУ¬ÏÂÐл¹ÊÇÉÏÏÂÐÐ*/
+ WORD wDlCompModeMethod;
+ WORD wUlCompModeMethod;
+ WORD wDlFrameType; /*Ö¡ÀàÐÍA OR B*/
+ WORD wRpp; /* Recovery Period Power control mode during the frame after the transmission gap within the compressed frame ģʽ0»¹ÊÇģʽ1*/
+ WORD wItp;/* nitial Transmit Power is the uplink power control method to be used to compute the initial transmit power after the compressed mode gapģʽ0»¹ÊÇģʽ1*/
+ WORD wDeltaSir1;/*ÏÂÐÐSIRµ÷ÕûÖµ*/
+ WORD wDeltaSirAfter1;
+ WORD wDeltaSir2; /*Real(0..3 by step of 0.1),À©´ó10±¶*/
+ WORD wDeltaSirAfter2;
+}T_zW_P_static_info;
+
+typedef struct {
+ WORD wTgpsi; /*gap ID 1-6 */
+ WORD wActiveFlg; /*1=¼¤»î£»0=È¥»î*/
+ WORD wMeasPurpose; /*1=ÒìÆµ £¬2=RAT*/
+ WORD wTgsn; /*Æðʼʱ϶ºÅ*/
+ WORD wTgprc; /*´«Êä¼ä¸ôÖØ¸´´ÎÊý, 0xFFFF±íʾÎÞÏÞ´ÎÊý*/
+ WORD wTgcfn; /*´«Êä¼ä¸ôÁ¬½ÓÖ¡ºÅ£¬ÊǵÚһģʽµÄµÚÒ»¸öÎÞÏßÖ¡µÄCFN*/
+ WORD wTgl1; /*µÚÒ»¸öGAPµÄ³¤¶È£¬Ê±Ï¶Êý*/
+ WORD wTgl2; /*µÚ¶þ¸öGAPµÄ³¤¶È*/
+ WORD wTgpl; /*´«Êä¼ä¸ô³¤¶È£¬Ö¡Êý*/
+ WORD wTgd; /*Á½¸öGAPÆðʼµãµÄ¾àÀ룬ʱ϶Êý£¬0xFFFF±íÃ÷GapÄ£ÐÍÖв»´æÔÚµÚ¶þ¸öGap*/
+ T_zW_P_static_info tCmStaicInfo;
+}T_zW_P_compress_gap_pattern;
+
+
+typedef struct {
+ WORD wMsgId;
+ WORD wCmPatternNum;
+ WORD wActTime; /*ȡֵ·¶Î§0-255£¬256£¬ÆäÖÐ256±íʾÁ¢¼´¼¤»î*/
+ WORD wCmCellInfoFlg; /*ȡֵ0»ò1£¬±íʾÊÇ·ñЯ´øÁËÐ¡ÇøÐÅÏ¢wDlUarfcnºÍwPrimSrc. ȡֵ1ʱwDlUarfcnºÍwPrimSrcÓÐЧ£¬·ñÔòÎÞЧ*/
+ WORD wDlUarfcn;
+ WORD wPrimSrc;
+ T_zW_P_compress_gap_pattern atCopressModePattern[Z_W_P_MAX_CM_NUM];
+}T_zW_P_compress_mode_req;
+
+/*==============================================================================
+ L1W->PHY
+ ¹¦ÄÜ:
+ FDDΪ¸¨Ä£Ê½Ï£¬ÊÕµ½µÄGAPÅäÖÃW_P_IRATGAPCONFIG_REQ
+ ½á¹¹:
+ GAPÇëÇóÐÅÏ¢ W_P_IRATGAPCONFIG_REQ
+==============================================================================*/
+
+typedef struct
+{
+ WORD wMsgId;
+ WORD wIdleOrConnectFlg;/*FDDΪ¸¨ÖÆÊ½Ê±Ö÷ÖÆÊ½µÄ״̬£¬È¡ÖµÎª0±íʾ¿ÕÏÐ̬ȡֵΪ1±íʾÁ¬½Ó̬*/
+ WORD wStartSfn;/*GAPÆðʼµãÖ¡ºÅ,ȡֵ·¶Î§ 0--4096*/
+ WORD wStartOffChip; /*GAPÆðʼµã.CHIPÆ«ÒÆ£¨chips£©,ÕæÕýµÄGAPÆðʼµãÊÇwStartSfn+wStartOffChip*/
+ DWORD dwLength;/* GAPÄ£ÐͳÖÐøÊ±¼ä,µ¥Î»ÊÇ£¨chips£©*/
+}T_zW_P_irat_gap_config_req;
+
+/*==============================================================================
+ L1W<->PHY
+ ¹¦ÄÜ:
+ L1WºÍPHY²ã¼äµÄABORT GAPÅäÖýӿÚ
+ ½á¹¹:
+ ÇëÇóÎïÀí²ãֹͣʹÓÃGAPÏûÏ¢ W_P_ABORT_IRAT_GAP_REQ
+ ÎïÀí²ã²»ÔÚʹÓÃGAPµÄÈ·ÈÏ W_P_ABORT_IRAT_GAP_CNF
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_irat_gap_req;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_abort_irat_gap_cnf;
+
+ /*==============================================================================
+ PHY->L1W
+ ¹¦ÄÜ:
+ ÎïÀí²ãÉϱ¨gapʱ¼äÐÅÏ¢
+ ½á¹¹:
+ ÎïÀí²ãÉϱ¨GAPʱ¼äÐÅÏ¢ÏûÏ¢ W_P_INACTIVE_TIME_IND
+==============================================================================*/
+typedef struct {
+ WORD wStartRtFrame; /*GAPÆðʼµãÖ¡ºÅ,ȡֵ·¶Î§0-255£¬ÓÉÎïÀí²ãRTʱ»úÄ£256µÃµ½*/
+ WORD wStartChipOff; /*GAPÆðʼµãÏà¶ÔÓÚwStartCfnµÄCHIPÆ«ÒÆ*/
+ DWORD dwLengthChip; /*GAP³¤¶È*/
+
+}T_zW_P_gap_info;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wSeqNum;
+ WORD wGapNum;
+ WORD Wpadding;
+ T_zW_P_gap_info atGapInfo[Z_W_P_MAX_FRAME_GAP_NUM];
+}T_zW_P_inact_time_ind;
+
+/*==============================================================================
+ L1W->PHY
+ ¹¦ÄÜ:
+ ÅäÖÃL1ÊÇ·ñÉϱ¨Æägapʱ¼ä£¬ÓÃÀ´½øÐÐ2G/LTEÐ¡ÇøµÄ¹¤×÷
+ ½á¹¹:
+ ÅäÖÃL1ÊÇ·ñÉϱ¨Æägapʱ¼äÏûÏ¢ W_P_IDLE_PERIOD_REPMODE_REQ
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wReportingMode; /*0: not reprot gap, 1:report gap*/
+ WORD wSeqNum;
+ WORD wPadding;
+
+}T_zW_P_idle_period_repmode_req;
+
+/*==============================================================================
+ * ²âÁ¿È«¾ÖÊý¾ÝÀàÐͶ¨Òå --------end *
+ ==============================================================================*/
+
+
+ /*==============================================================================
+ * Êý¾ÝÃæÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå start *
+ ==============================================================================*/
+ /*==============================================================================
+ ÏûÏ¢£ºP_RACH_PROCEDURE_REQ_EV( WMAC->PHY )
+ ˵Ã÷: MACÏ·¢Ëæ»ú½ÓÈëÇëÇó¸øÎïÀí²ã
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wSignatureBitmap; /*¿ÉÓÃÇ©Ãûbitmap(16λ), BIT0ָʾµÚÒ»¸ö£¬BIT15ָʾ×îºóÒ»¸ö£¬ÓÒ±ßÊÇ×îµÍλ*/
+ WORD wSubchannelBitmap; /*¿ÉÓÃ×ÓÐŵÀbitmap(12λ), BIT0ָʾµÚÒ»¸ö£¬BIT11ָʾ×îºóÒ»¸ö£¬ÓÒ±ßÊÇ×îµÍλ*/
+ WORD wLastFlag; /*ָʾMACµÄRACH½ÓÈë¹ý³ÌÖд˴ÎÊÇ·ñÒÑΪµÚMmax´Î£¬¼´×îºóÒ»´Î£¨0~1£©*/
+}T_zW_P_rach_procedure_req;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºP_RACH_PROCEDURE_IND_EV( PHY->WMAC )
+ ˵Ã÷: ÎïÀí²ã»Ø¸´Ëæ»ú½ÓÈë³É¹¦
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wResult; /*RACH ACCESS½á¹û£¨0~2£©£»0£ºACK£¬1£ºNACK£¬2£ºNO ACK*/
+}T_zW_P_rach_procedure_ind;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºP_POST_VERFY_FAIL_IND_EV( PHY->WMAC )
+ ˵Ã÷: ÔÚÓ²ÇÐL1ͬ²½A¹ý³Ìʱ£¬Èç¹û²ÉÓÃPostverfy£¬ÇÒÖ÷ÉÏÐÐÆµÂÊÉϵÄpost verfyʧ°ÜʱÎïÀí²ãÉϱ¨Ê§°Üָʾ
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+} T_zW_P_post_verfy_fail_ind;
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_upa_grant_harq_info( PHY->WMAC )
+ ˵Ã÷: Ö¡ÖжÏÖÐÎïÀí²ãЯ´øµÄÊÚȨ¼°HARQÐÅÏ¢
+==============================================================================*/
+typedef struct {
+ WORD wHarqId; /*¶ÔÓ¦½ø³ÌID£¨0~7£©*/
+ WORD wStatus; /*¶ÔÓ¦½ø³ÌHARQ·´À¡½á¹û£¬0£ºACK£¬ 1£ºNACK */
+ WORD wServCellStatus; /*·þÎñÐ¡ÇøÉÏָʾµÄHARQ·´À¡½á¹û£¬0£ºACK£¬ 1£ºNACK*/
+ WORD wPadding;
+}T_zW_P_harq_process_status;
+
+
+typedef struct {
+ WORD wCycle2Flag; /*¸Ã±êʶÓÃÓÚ֪ͨPSÊÇ·ñ ¿ªÊ¼ÓÉCycle1½øÈëCycle2 £º0£ºÃ»ÓнøÈ룬1£ºÓÉcycle1½øÈëCycle2 .¸Ã±ê¼ÇÖ»Óе±ÎïÀí²ã´Ócycle1½øÈëcycle2ʱÖÃλΪ1£¬Í¨ÖªPS½øÈëCycle2£¬ÆäËûCycle1¼°Cycle2ÆÚ¼äµÄÉϱ¨µÄ¸Ã±ê¼Ç¾ùΪ0.*/
+ WORD wAGFlag; /*ÊÇ·ñЯ´øAGÐÅÏ¢£¨0~1£©*/
+ WORD wAGIndex; /*ÊÚȨֵË÷Òý£¨0~31£©£¬µ±wAGFlagΪ1ʱÓÐЧ*/
+ WORD wAGTypeAndScope; /*IDÀàÐͺͷ¶Î§ÐÅÏ¢£¨0~2£©£»0:Primary ID&PerHARQ, 1:Primary ID&AllHARQ, 2:Secondary ID£¬µ±wAGFlagΪ1ʱÓÐЧ*/
+ WORD wPadding;
+ WORD wRGNum; /*ָʾ·þÎñRGºÍ·Ç·þÎñRGµÄ¸öÊý£¨0~4£©£»*/
+ WORD awRGValue[Z_W_P_MAX_RG_NUM]; /*RGÊý×飨0~3£©£¬0±íʾÎÞЧ£¬1±íʾ"UP"£¬2±íʾ"DOWN"£¬3±íʾ"HOLD"£¬ÆäÖеÚÒ»¸öĬÈÏÌîд·þÎñRGµÄÖµ*/
+}T_zW_P_hsupa_grant_info;
+
+
+typedef struct {
+ WORD wHarqBitmap; /*ָʾÊÇ·ñЯ´øHARQ½ø³ÌÐÅÏ¢£¨bitmap£©£»BIT0£¨LSB£©£º¶ÔÓ¦Ö÷Ƶµã£¬BIT1¶ÔÓ¦¸¨Æµµã*/
+ WORD wGrantBitmap; /*ָʾÊÇ·ñЯ´øÊÚȨÐÅÏ¢£¨bitmap£©£»BIT0£¨LSB£©£º¶ÔÓ¦Ö÷Ƶµã£¬BIT1¶ÔÓ¦¸¨Æµµã*/
+ T_zW_P_harq_process_status tHarq[Z_W_P_MAX_UL_FREQUENCY_NUM];
+ T_zW_P_hsupa_grant_info tGrant[Z_W_P_MAX_UL_FREQUENCY_NUM];
+}T_zW_P_upa_grant_harq_info;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_grant_monitor_req( WMAC->PHY )
+ ˵Ã÷: ָʾµ±Ç°TTIÊÇ·ñÂú×ãmonitorÌõ¼þ,ÎïÀí²ã´Ó¹Ì¶¨»º´æÄÚ¶ÁÈ¡
+==============================================================================*/
+typedef struct {
+ WORD wFreqId; /*ÔØ²¨ÐÅÏ¢£¬0±íʾµÚÒ»¸öÔØ²¨£¬1±íʾµÚ¶þ¸öÔØ²¨*/
+ WORD wActMonitor; /*ָʾÊÇ·ñÂú×ãMonitorÌõ¼þ£¬0£º²»Âú×㣬1£ºÂú×ã*/
+}T_zW_P_grant_monitor_req;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºP_EFACH_NO_DATA_REQ_EV( WMAC->PHY )
+ ˵Ã÷: EFACHÏÂmacÎÞÊý¾Ý·¢ËÍʱ£¬Í¨ÖªÎïÀí²ãÎÞÊý¾Ý£¬ÎïÀí²ãÆôT321¶¨Ê±Æ÷
+==============================================================================*/
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+}T_zW_P_efach_no_data_req;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºW_P_ MAC_DTX_CYCLE_INFO_REQ_EV( WMAC->PHY )
+ ˵Ã÷: DCH̬MAC½øÈëMAC_DTXºó֪ͨÎïÀí²ãÖÜÆÚÄ£ÐÍ£¬ÒÔ±ãÎïÀí²ãÔÚEDCHÊý¾Ýǰ×î¶àÌáǰһ֡·¢DPCCH preamble
+==============================================================================*/
+
+typedef struct {
+ WORD wMsgId;
+ WORD wMacDtxInfoFlg;/*ȡֵ0»ò1£¬È¡ÖµÎª1ʱ£¬±íʾMAC_DTXcycle ÓÐЧ£¬È¡ÖµÎª0ʱÎÞЧ£¬¼´Í˳öMAC_DTX*/
+ WORD wMacDtxStartCfn;/*MAC_DRX cycleµÄÆðʼ֡ºÅ*/
+ WORD wMacDtxStartSubCfn;/*MAC_DRX cycleµÄÆðʼ×ÓÖ¡ºÅ*/
+ WORD wMacDtxCycle;/*MAC_DRX cycleµÄÖÜÆÚ³¤¶È*/
+ WORD wPadding;
+} T_zW_P_mac_dtx_cycle_info;
+
+/*==============================================================================
+ ÏûÏ¢£ºW_P_TFCI_CM_INFO_IND_EV( PHY->WMAC )
+ ˵Ã÷: ÿ´ÎÉÏÐÐDPCHÖØÅäÖÃʱ,ÎïÀí²ã±¨¸æ7×éTFCSÖиöTFCIµÄÖ§³ÖÇé¿ö Ntr=[8,14]ʱ
+==============================================================================*/
+
+typedef struct {
+ WORD awSupFlag[Z_W_P_MAX_UL_TFC_NUM]; // Z_W_P_MAX_UL_TFC_NUM = 64, Êý×éϱê±íʾtfci£¬ÔªËØÄÚÈݱíʾ¸ÃTFCIÊÇ·ñÖ§³Ö£¬1-Ö§³Ö£¬0-²»Ö§³Ö¡£
+} T_zW_P_tfci_sup_Info;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wPadding;
+ T_zW_P_tfci_sup_Info atTfciSupInfo[Z_W_P_MAX_NTR_NUM];// Ntr-8¶ÔÓ¦Êý×éϱê
+} T_zW_P_tfci_cm_Info;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_ul_data_buffer( WMAC->PHY )
+ ˵Ã÷: ÉÏÐÐÊý¾Ý½Ó¿Ú( ·ÇUPA )
+==============================================================================*/
+typedef struct {
+ DWORD dwTrchBuffOff; /*¸÷´«ÊäÐŵÀÊý¾ÝÔÚÊý×éÖжÔÓ¦µÄÆ«ÒÆ£¬ÒÔWORDΪµ¥Î»£¨0~583£©*/
+ WORD wTbNumAndTrchId; /*´«ÊäÐŵÀidºÍ¶ÔÓ¦µÄtb¿é¸öÊý£¬¸ß8λ¶ÔÓ¦Trch Id£¬µÍ8λ¶ÔÓ¦Tb num*/
+ WORD wTbSize; /*TB¿é´óС£¬µ¥Î»bit*/
+}T_zW_P_ul_trch_header;
+
+
+typedef struct {
+ WORD wTotalLength; /*Êý¾Ý×ܹ²Õ¼ÓõÄWORDÊý£¨0~584£©*/
+ WORD wNumOfTrch; /*´«ÊäÐŵÀ¸öÊý£¨1~8£©*/
+ WORD wTfci; /*Ñ¡ÔñµÄTfci£¨0~63£©*/
+ WORD wPadding;
+ T_zW_P_ul_trch_header atUlTrchHeader[Z_W_P_MAX_UL_TRCH_NUM];
+ WORD awUlData[Z_W_P_MAX_NO_OF_UL_BYTES/2];
+}T_zW_P_ul_data_buffer;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_dl_data_buffer( PHY->WMAC )
+ ˵Ã÷: ÏÂÐÐÊý¾Ý½Ó¿Ú( ·ÇDPA )
+==============================================================================*/
+typedef struct {
+ DWORD dwTrchBuffOff; /*¸÷´«ÊäÐŵÀÊý¾ÝÔÚÊý×éÖжÔÓ¦µÄÆ«ÒÆ£¬ÒÔWORDΪµ¥Î»£¨0~583£©*/
+ WORD wTrchId; /*´«ÊäÐŵÀid £¨1~8£©*/
+ WORD wTrchType; /*´«ÊäÐŵÀÀàÐÍ£¨0~4£©,¼ûºê¶¨Òå*/
+ WORD wCfnAndTbNum; /*Êý¾Ý·¢ËÍʱµÄCfnºÍTb¿é¸öÊý£¬¸ß8λΪTb num£¬µÍ8λΪCfn*/
+ WORD wSfn; /*Êý¾Ý·¢ËÍʱµÄϵͳ֡ºÅ£¨0~4095£©*/
+ WORD wTbSize; /*TB¿é´óС£¬µ¥Î»bit*/
+ WORD wPadding;
+ DWORD dwCrcCheck; /*CRC½á¹û bitmap*/
+}T_zW_P_dl_trch_header;
+
+
+typedef struct {
+ WORD wTotalLength; /*Êý¾Ý×ܹ²Õ¼ÓõÄWORDÊý£¨0~584£©*/
+ WORD wNumOfTrch; /*´«ÊäÐŵÀ¸öÊý£¨1~8£©*/
+ WORD wTfci; /*Ñ¡ÔñµÄTfci£¨0~127£©*/
+ WORD wPadding;
+ T_zW_P_dl_trch_header atDlTrchHeader[Z_W_P_MAX_DL_TRCH_NUM];
+ WORD awDlData[Z_W_P_MAX_NO_OF_DL_BYTES/2];
+}T_zW_P_dl_data_buffer;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_hsupa_buffer( WMAC->PHY )
+ ˵Ã÷: ÉÏÐÐÊý¾Ý½Ó¿Ú( UPA )
+==============================================================================*/
+typedef struct {
+ WORD wL; /*±íʾʹÓøÃE-TFCËùÓеÄE-DPDCHs£¬È¡Öµ·¶Î§(1~4)*/
+ WORD wBetaEc; /*ȡֵ·¶Î§5~239¡£*/
+ WORD awBetaEd[4]; /*wL¸öÖµ£¬È¡Öµ·¶Î§5~377*/
+ WORD wSf; /*µÚÒ»ÌõE-dpdchµÄSF.ȡֵ·¶Î§0--512*/
+ WORD wPadding;
+}T_zW_p_etfc_gain_factor;
+
+
+typedef struct {
+ WORD wCfn; /*Á¬½ÓÖ¡ºÅ0--255*/
+ WORD wSubFrameNum; /*×ÓÖ¡ºÅ0--4*/
+}T_zW_P_upa_trans_frame_num;
+
+typedef struct {
+ WORD wNej;
+ WORD wNdataJ;
+}T_zW_P_etfc_rm_info;
+
+typedef struct {
+ WORD wFreqId; /*ָʾµ±Ç°ÊÇÄǸöÔØ²¨¶ÔÓ¦µÄÉÏÐÐÊý¾Ý£¬0±íʾµÚÒ»¸öÔØ²¨£¬1±íʾµÚ¶þ¸öÔØ²¨*/
+ WORD wErnti; /*´ËÊý¾Ý°ü¶ÔÓ¦µÄERNTI*/
+ WORD wHarqId; /*HARQ½ø³ÌID£¨0~7£©*/
+ WORD wEtfci; /*Ñ¡ÔñµÄEtfci£¨0~127£©*/
+ T_zW_p_etfc_gain_factor tEtfcGainFactor;
+ T_zW_P_etfc_rm_info tEtfcRmInfo;
+ WORD wTbSize; /*¶ÔÓ¦TB¿é´óСbits£¨18~22995£©*/
+ WORD wRsn; /*Tb¿é¶ÔÓ¦RSN£¨0~3£©*/
+ WORD wHappyBit; /*Happy Bitָʾ£¨0~1£©*/
+ WORD wSchDataFg; /*ָʾµ±Ç°ÊÇ·ñÊǵ÷¶ÈÊý¾Ý£¨0~1£©*/
+ T_zW_P_upa_trans_frame_num tUpaTransFrameNum;
+// WORD awHsupaData[Z_W_P_MAX_NO_OF_HSUPA_BYTES/2]; /*UPAÊý¾ÝÍ·ÐÅÏ¢·ÅÈë¹²ÏíRAM£¬UPAÊý¾ÝÐÅÏ¢Ö±½Ó°áÖÁÎïÀí²ãÓ²¼þ¼ÓËÙÆ÷E-UTR RAM*/
+}T_zW_P_hsupa_buffer;
+
+
+/*==============================================================================
+ ÏûÏ¢£ºT_zW_P_hsdpa_buffer( PHY->WMAC )
+ ˵Ã÷: ÏÂÐÐÊý¾Ý½Ó¿Ú( DPA )
+==============================================================================*/
+typedef struct {
+ WORD wTbSize; /*Tb¿é´óСbit£¨120~27952£©*/
+ WORD wDataType; /*ָʾ½ÓÊÕµÄÊý¾Ý¿éÀàÐÍ£¬0£ºÆäËû 1£ºPCCH 2£ºBCCH£»
+ ÔÚEPCH̬»òEFACH̬ʹÓÃBCCH RNTI½âÂëʱ£¬Ôò¶ÔÓ¦wDataTypeÌîдBCCH£»
+ ÔÚEPCH̬²»Ê¹ÓÃBCCH RNTI½âÂëʱ£¬¶ÔÓ¦wDataTypeÌîдPCCH£»
+ ÆäËûÇé¿öÏÂwDataTypeÌîдÆäËû*/
+ WORD awHsdpaData[Z_W_P_MAX_NO_OF_HSDPA_BYTES/2];
+}T_zW_P_hsdpa_buffer;
+
+/*==============================================================================
+ÏûÏ¢£ºP_TFC_ETFC_PARAM_IND( WPHY->WMAC )
+˵Ã÷: L1½«¼ÆËãºÃµÄTFC gain factorÖµ¸øMAC£¬ÓÃÓÚETFCÏÞÖÆ¹ý³ÌʹÓÃ
+==============================================================================*/
+
+typedef struct {
+ WORD wTfci; /*Tfciֵ*/
+ WORD wPadding;
+ DWORD dwAjNumeratorLow; /*¼ÆËãAjƽ·½ËùÓõķÖ×Ó,µÍ32λ*/
+ DWORD dwAjNumeratorHigh; /*¼ÆËãAjƽ·½ËùÓõķÖ×Ó,¸ß32λ*/
+ DWORD dwAjDenominatorLow; /*¼ÆËãAjƽ·½ËùÓõķÖĸ,µÍ32λ*/
+ DWORD dwAjDenominatorHigh; /*¼ÆËãAjƽ·½ËùÓõķÖĸ,¸ß32λ*/
+}T_zW_P_tfc_gain_factor;/*signalledGainFactors & computedGainFactors*/
+
+typedef struct
+{
+ WORD wiMantissa; /*βÊý*/
+ WORD wiExp; /*¸ºÊý¼ÓÆ«ÒÆ¡£Ö¸Êý*/
+}T_zW_P_pc_flot_data;
+
+typedef struct {
+ WORD wMsgId;
+ WORD wNumOfTfc; /*Tfc Êý*/
+ WORD wUlDpdchNum; /*ÓëT_zW_P_ul_dpch_setup_modify_reqÖÐÐÅÔªwNumOfDPDCHÏàͬ*/
+ WORD wPadding;
+
+ T_zW_P_tfc_gain_factor atTfcParam[Z_W_P_MAX_UL_TFC_NUM];/*ËùÓÐTFCµÄBetaC,BetaD*/
+ T_zW_P_pc_flot_data tPMax;
+}T_zW_P_tfc_etfc_param_ind;
+
+
+/*==============================================================================
+ÏûÏ¢£ºT_zW_P_ul_power_info( WPHY->WMAC )
+˵Ã÷: TFC¹¦ÂÊ¿ØÖÆ
+==============================================================================*/
+typedef struct {
+ WORD wTfcPowerFlag; /*ÊÇ·ñЯ´øtfc power info£¨0~1£©*/
+ WORD wCompressedFlg;
+ WORD awExcessPowerFlag[Z_W_P_MAX_UL_TFC_NUM]; /*TFCIÊÇ·ñ³¬¹ý×î´ó´«Ê书ÂʵÄָʾ£¬Êý×éϱêΪTFCI£»Êý×éÄÚÈÝΪÈý¸öʱ϶µÄ²âÁ¿½á¹û£¨bitmap£©£¬BIT0£¨LSB£©£ºµÚÒ»¸öʱ϶²âÁ¿½á¹û£¬BIT1£ºµÚ¶þ¸öʱ϶²âÁ¿½á¹û£¬BIT2£ºµÚÈý¸öʱ϶²âÁ¿½á¹û*/
+}T_zW_P_ul_power_info;
+
+/*==============================================================================
+ÏûÏ¢£ºT_zW_P_upa_etfc_restrict_info( WPHY->WMAC )
+˵Ã÷: ETFCÏÞÖÆ¹ý³ÌÐÅÏ¢
+==============================================================================*/
+typedef struct {
+ WORD wNpilotC; /*ѹËõÖ¡ÖУ¬Ã¿¸öʱ϶ÉÏDPCCHµÄpilot bitÊýÁ¿¡£È¡Öµ·¶Î§3~8bit*/
+ WORD wNpilotN; /*·ÇѹËõÖ¡ÖУ¬Ã¿¸öʱ϶ÉÏDPCCHµÄpilot bitÊýÁ¿¡£È¡Öµ·¶Î§3~8bit*/
+ WORD wNSlotC; /*ѹËõģʽ֡ÖУ¬²»·¢ËÍÊý¾ÝµÄʱ϶Êý¡£È¡Öµ·¶Î§1~15*/
+ WORD wPadding;
+}T_zW_P_dpch_compressed_info;
+
+typedef struct {
+ WORD wCompressedFlg; /*0-ÎÞѹËõģʽÐÅÏ¢£¬1-´æÔÚѹËõģʽÐÅÏ¢*/
+ WORD wBeltaHs; /*HsdpcchµÄÔöÒæÒò×Ó£¬·¶Î§0~38*15*/
+ WORD wEstimatePdpcchFilterSlotNum; /*Â˲¨Ê±Ï¶¸öÊý*/
+ WORD wPadding;
+ T_zW_P_dpch_compressed_info tDpchCompressedInfo; /*ѹËõģʽÐÅÏ¢*/
+ T_zW_P_pc_flot_data wEstimatePdpcchTarg[Z_W_P_MAX_UL_FREQUENCY_NUM]; /*DPCCHÆÀ¹À¹¦ÂÊ£¬Êý×éϱê0±íʾÖ÷Ƶ£¬Êý×éϱê1±íʾ¸¨Æµ£¬2msTTIʱÆÀ¹À3slots£¬10msTTIʱÆÀ¹À15slots¡£ÓÃÖ¸ÊýÐÎʽ±íʾ¡£Èç¹ûÊÇѹËõģʽ£¬¸Ã¹¦ÂÊÊÇÕÛËãºóµÄ¹¦ÂÊÖµ£¬¼´PDPCCH,target,i = PDPCCH,filtered,i¡Á (Npilot,N/ Npilot,C)*/
+}T_zW_P_upa_etfc_restrict_info;
+
+typedef struct {
+ WORD wPrimFreqTransFlg; /*Ö÷Ƶ,pc preambleÊÇ·ñ¿É·¢Êý¾Ý£¬»òѹËõģʽgapÊÇ·ñ¿É·¢Êý¾Ý¡£0£º²»ÔÊÐí·¢ËÍÊý¾Ý£¬1£ºÔÊÐí·¢Êý¾Ý*/
+ WORD wSecFreqTransFlg;
+ }T_zW_P_upa_trans_info;
+
+typedef struct {
+ WORD wNtr[ Z_W_P_MAX_NTR_NUM];/*CMÔÚN+2--N+9Ö¡ÖУ¬Ã¿Ö¡ÖеÄÕ¼ÓÃʱ϶Êý£¬wNtr[0]¶ÔÓ¦N+2Ö¡,ÎïÀí²ãÔÚÊÕµ½CMÅäÖÃʱ¼°Ê±Éϱ¨£¬Ö®ºóµÄÉϱ¨Âú×ã CFN%8=0 Éϱ¨¡£Éϱ¨µÄÌáǰÁ¿Îª20MS*/
+ WORD wNtrStartCfn;/* Éϱ¨µÄNtr[0]ËùÔÚÖ¡Ö¡ºÅ*/
+ WORD wPadding;
+}T_zW_P_cm_ntr_info;
+
+/*==============================================================================
+ ½á¹¹£ºT_zW_P_data_frame_info( PHY->WMAC )
+ ˵Ã÷: Ö¡ÖжÏÊý¾ÝÐÅÏ¢Éϱ¨
+==============================================================================*/
+typedef struct {
+ WORD wUph;
+ WORD wDtxActive; /*ÅäÖÃÁËDtxDrxºó£¬Ö¸Ê¾DtxÊÇ·ñ¼¤»î»òÈ¥»î£»0£ºÎÞЧ£¬1£ºÖ¸Ê¾¼¤»î£¬2£ºÖ¸Ê¾È¥»î*/
+ WORD wDrxActive; /*ÅäÖÃÁËDtxDrxºó£¬Ö¸Ê¾DrxÊÇ·ñ¼¤»î»òÈ¥»î£»0£ºÎÞЧ£¬1£ºÖ¸Ê¾¼¤»î£¬2£ºÖ¸Ê¾È¥»î*/
+ WORD wSecCellActive; /*ÅäÖõڶþƵµãºó£¬Ö¸Ê¾µÚ¶þƵµãÊÇ·ñ¼¤»î£»0£ºÎÞЧ£¬1£ºÖ¸Ê¾¼¤»î£¬2£ºÖ¸Ê¾È¥»î*/
+ WORD wRachDchTransFg; /*ָʾRACH,DCH´ËÖ¡ÊÇ·ñ¿ÉÒÔ·¢ËÍÊý¾Ý£¬0£º²»ÔÊÐí·¢ËÍÊý¾Ý£¬1£ºÔÊÐí·¢Êý¾Ý*/
+ WORD wCmNtrInfoFlg;
+ T_zW_P_cm_ntr_info tCmNtrInfo;
+ T_zW_P_upa_trans_info tUpaTransInfo;
+ T_zW_P_upa_grant_harq_info tGrantHarqInfo;
+ DWORD dwCmPattern; /*Éϱ¨Ñ¹ËõģʽͼÑù£¬Ã¿¸ö×ÓÖ¡Éϱ¨Ò»´Î£¬Éϱ¨µÄÊÇ3¸ö×ÓÖ¡Ö®ºóµÄÖµ*/
+
+ T_zW_P_ul_power_info tUlPowerInfo;/*Õë¶ÔDPCH,ÎïÀí²ãÉϱ¨µÄÌáǰÁ¿ÊÇ2Ö¡*/
+
+ T_zW_P_upa_etfc_restrict_info tEtfcRestrictInfo;/*Õë¶ÔUPA£¬ÎïÀí²ãÉϱ¨µÄÌáǰÁ¿ÊÇ2¸ö×ÓÖ¡*/
+}T_zW_P_data_frame_info;
+
+/*==============================================================================
+ L1W->PHY
+ ʼþ£ºW_P_ZWPCG_REQ_EV
+ ¹¦ÄÜ:
+ ÐÞ¸Ä/²éѯWÎïÀí²ãÅäÖòÎÊý¡£
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ */
+ WORD awValFg[Z_ZWPCG_VALFG_NUM]; /* ±íʾadwValÊÇ·ñ´æÔÚ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ */
+ DWORD adwVal[Z_ZWPCG_VALFG_NUM]; /* ²ÎÊýÁÐ±í£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö */
+}T_zW_P_Zwpcg_Req;
+
+/*==============================================================================
+ PHY->L1W
+ ʼþ£ºW_P_ZWPCG_CNF_EV
+ ¹¦ÄÜ:
+ ÐÞ¸Ä/²éѯWÎïÀí²ãÅäÖòÎÊýµÄÏìÓ¦ÏûÏ¢¡£
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ£¬bMode=0/1¶¼ÓÐЧ */
+ WORD wRslt; /* ±íʾÉèÖýá¹û£¬Z_TRUEÉèÖóɹ¦£¬Z_FALSEÉèÖÃʧ°Ü wCmdΪÉèÖÃÃüÁîʱÓÐЧ */
+ WORD awValFg[Z_ZWPCG_PARAM_NUM]; /*°´ÕÕϱêºÍdwValÖÐÖµÒ»Ò»¶ÔÓ¦£¬bVal1Fg[0]±íʾdwVal[0]ÊÇ·ñ´æÔÚ,ÒÀ´ÎÀàÍÆ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ*/
+ LONG alVal[Z_ZWPCG_PARAM_NUM]; /*²ÎÊý1/²ÎÊý2¡£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö*/
+}T_zW_P_Zwpcg_Cnf;
+
+
+
+/*==============================================================================
+ L1W->PHY
+ ʼþ£ºW_P_RPI_SET_REQ_EV
+ ¹¦ÄÜ:
+ ÉèÖÃWPHYʹÓõÄ×î´ó·¢É书ÂʵÄRPI VAULE
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ WORD wRpi; /* PUMAX¶ÔÓ¦µÄRPIµµÎ»£¬·¶Î§0/1/2 */
+}T_zW_P_rpi_set_req;
+
+
+#define Z_MAX_RPI_NR (BYTE)3
+#define Z_W_RPI_SUPPORT_MAX_BAND (BYTE)8
+
+
+typedef struct
+{
+ WORD wBand; /* ¶ÔÓ¦µÄBANDºÅ */
+ WORD bPumax[Z_MAX_RPI_NR]; /* ÒÔrpiΪindexÈ·ÈÏ×î´ó·¢É书ÂÊpumax */
+}T_zBandRpiCfg;
+
+/*==============================================================================
+ L1W->PHY
+ ʼþ£ºW_P_RPI_CFG_REQ_EV
+ ¹¦ÄÜ:
+ ÅäÖÃWÏÂ8¸öBAND£¬Ã¿¸öBANDÏÂRPIºÍPUMAXµÄÓ³Éä¹ØÏµ£¬ÆäÖÐRPI·¶Î§0~2
+==============================================================================*/
+typedef struct
+{
+ WORD wMsgId;
+ T_zBandRpiCfg tWBandRpiCfg[Z_W_RPI_SUPPORT_MAX_BAND];
+}T_zW_P_rpi_cfg_req;
+
+
+
+/*==============================================================================
+ * Êý¾ÝÃæÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå end *
+ ==============================================================================*/
+
+
+
+/**************************************************************************
+ * PSÓëWPHY ¹²ÏíDDRµÄ5MB ¿Õ¼ä *
+ **************************************************************************/
+#if 0
+#if defined (_CHIP_ZX297550)
+#define DDR_BASE_ADDR_FOR_W 0x5800000
+#endif
+#if defined (_CHIP_ZX2804)
+#define DDR_BASE_ADDR_FOR_W 0x15800000
+#endif
+
+#endif
+/*PSÓëphy¹²ÏíDDR¸ù¾ÝÒµÎñÇé¿ö·Ö³É5¸öµÈ¼¶*/
+#define PS_WPHY_DL_DATA_DDR_GRADE_NUM (5)
+#define PS_MAC_HEAD_IFNO_SIZE 620//ec616000258401
+
+#define PS_WPHY_DL_DATA_TYPE0_GRADE_BUF_SIZE 0//(86 + PS_MAC_HEAD_IFNO_SIZE)
+#define PS_WPHY_DL_DATA_TYPE1_GRADE_BUF_SIZE 0//(238 + PS_MAC_HEAD_IFNO_SIZE)
+#define PS_WPHY_DL_DATA_TYPE2_GRADE_BUF_SIZE 0//(682 + PS_MAC_HEAD_IFNO_SIZE)
+#define PS_WPHY_DL_DATA_TYPE3_GRADE_BUF_SIZE 0//(1980 + PS_MAC_HEAD_IFNO_SIZE)
+#define PS_WPHY_DL_DATA_TYPE4_GRADE_BUF_SIZE (5282 + PS_MAC_HEAD_IFNO_SIZE)
+
+
+#define PS_WPHY_DL_DATA_TYPE0_GRADE_BUF_NUM 0//505
+#define PS_WPHY_DL_DATA_TYPE1_GRADE_BUF_NUM 0//505
+#define PS_WPHY_DL_DATA_TYPE2_GRADE_BUF_NUM 0//400
+#define PS_WPHY_DL_DATA_TYPE3_GRADE_BUF_NUM 0//300
+#define PS_WPHY_DL_DATA_TYPE4_GRADE_BUF_NUM 131//200
+
+#define PS_WPHY_DL_DATA_TYPE_GRADE_BUF_NUM_ALL (PS_WPHY_DL_DATA_TYPE0_GRADE_BUF_NUM + PS_WPHY_DL_DATA_TYPE1_GRADE_BUF_NUM + PS_WPHY_DL_DATA_TYPE2_GRADE_BUF_NUM\
+ +PS_WPHY_DL_DATA_TYPE3_GRADE_BUF_NUM + PS_WPHY_DL_DATA_TYPE4_GRADE_BUF_NUM)//add by shideyou
+
+/**************************************************************************
+ * PSÓëWPHY ¹²ÏíRAMµÄ60K ¿Õ¼äPS_PHY_BASE_ADDR+144K---PS_PHY_BASE_ADDR+208K *
+ **************************************************************************/
+#ifdef Z_SEND_TO_SIMPHY
+#define PS_PHY_BASE_ADDR 0x00000004//²úÆ·ÏßÌṩ
+#define PS_WPHY_BASE_ADDR (PS_PHY_BASE_ADDR +24000)
+#else
+#define PS_WPHY_BASE_ADDR IRAM_BASE_ADDR_FOR_W
+#endif
+
+#if 0
+#define PS_WPHY_EVENT_ADDR PS_WPHY_BASE_ADDR
+
+/*PS ¸øÎïÀí²ã·¢ËÍÏûÏ¢µÄÆðʼµØÖ·*/
+#define PS_TO_WPHY_EVENT_ADDR PS_WPHY_BASE_ADDR
+
+#define PS_TO_WPHY_ENENT_BUF_SIZE (0X61BC >> CPU_SHIFT) //add by shideyou /*PS->WPHY ÏûÏ¢²¿·ÖÕ¼ÓõÄRAM¿Õ¼ä´óС*/
+
+/*ÎïÀí²ã¸øPS·¢ËÍÏûÏ¢µÄÆðʼµØÖ·*/
+#define WPHY_TO_PS_EVENT_ADDR (PS_WPHY_BASE_ADDR + PS_TO_WPHY_ENENT_BUF_SIZE)
+
+/*PSÓëWPHY ÏûÏ¢²¿·ÖÕ¼ÓõÄRAM¿Õ¼ä´óС*/
+#define PS_WPHY_ENENT_BUF_SIZE (0X8110 >> CPU_SHIFT)
+#endif
+
+/*Êý¾Ý±£»¤Çø´óС*/
+#define PS_WPHY_SAFEGUARD_SIZE (4 >> CPU_SHIFT)
+
+#if 0
+/*ÆÕͨÉÏÐÐÊý¾ÝµÄÆðʼµØÖ·*/
+#define PS_WPHY_UL_DATA_ADDR (PS_WPHY_EVENT_ADDR + PS_WPHY_ENENT_BUF_SIZE +PS_WPHY_SAFEGUARD_SIZE)
+
+#define PS_WPHY_UL_RACH_DPCH_ADDR PS_WPHY_UL_DATA_ADDR
+#define PS_W_UL_RACH_DPCH_BUF_SIZE (2* sizeof(T_zW_P_ul_data_buffer))
+#endif
+/*UPA¿ØÖÆÐÅÏ¢²¿·ÖÆðʼµØÖ·*/
+#define PS_WPHY_UPA_CTRL_INFO_HARQ_NUM 8 //add by shideyou ,ºóÃæÈç¹ûÖ§³ÖMIMOʱÐèÒª¸Ä³É16
+//#define PS_WPHY_UPA_CTRL_INFO_ADDR (PS_W_UL_RACH_DPCH_BUF_SIZE + PS_WPHY_UL_RACH_DPCH_ADDR+ 2* PS_WPHY_SAFEGUARD_SIZE) //modify by shideyou, add 4 byte for share harqid
+#define PS_WPHY_UPA_CTRL_INFO_ADDR (PS_WPHY_BASE_ADDR + 2* PS_WPHY_SAFEGUARD_SIZE) //modify by shideyou, add 4 byte for share harqid
+#define PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE (sizeof(T_zW_P_hsupa_buffer))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR PS_WPHY_UPA_CTRL_INFO_ADDR
+#define PS_WPHY_UPA_CTRL_INFO_HARQ1_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE)
+#define PS_WPHY_UPA_CTRL_INFO_HARQ2_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (2*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ3_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (3*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ4_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (4*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ5_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (5*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ6_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (6*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+#define PS_WPHY_UPA_CTRL_INFO_HARQ7_ADDR (PS_WPHY_UPA_CTRL_INFO_HARQ0_ADDR + (7*PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE))
+
+#define PS_WPHY_UPA_CTRL_INFO_BUF_SIZE (16* PS_WPHY_UPA_ONE_HARQ_CTRL_INFO_BUF_SIZE)/*¿¼Âǵ½Ö§³ÖMIMOµÄÇé¿ö*/
+
+
+/*ÎïÀí²ãÓ²¼þW-EUTR²¿·ÖUPA´æ·ÅÊý¾ÝµØÖ·£º*/
+#if defined (_CHIP_ZX2804)
+/*2804ƽ̨£º 0x5040 0000; wphyÌṩ*/
+#define WPHY_UPA_DATA_BASE_ADDR (0X40B00000 >> CPU_SHIFT)
+#endif
+#if defined(_CHIP_ZX297520) || defined(_CHIP_ZX297520V2) || defined(_CHIP_ZX297520V1_1)
+/*7520ƽ̨£º */
+#define WPHY_UPA_DATA_BASE_ADDR (0XA4000000 >> CPU_SHIFT)
+#endif
+#if defined (_CHIP_ZX297520V3)
+/*7520V3ƽ̨£º */
+#define WPHY_UPA_DATA_BASE_ADDR DDR_BASE_ADDR_WUPA_DATA//(0X2759AC00 >> CPU_SHIFT)
+#endif
+#if defined (_CHIP_ZX297550A)
+/*7550Aƽ̨£º0xA280 0000;*/
+#define WPHY_UPA_DATA_BASE_ADDR (0XA2800000 >> CPU_SHIFT)
+#endif
+#if defined (_CHIP_ZX297520V3)
+/*7520V3ƽ̨£º UPAÊý¾ÝÔÚDDRÉÏ*/
+#define WPHY_UPA_DATA_HARQ_BASE_ADDR 0
+#define WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE ((0X168*4) >> CPU_SHIFT)
+#define WPHY_UPA_DATA_TTI10_HARQ1_BUF_SIZE ((0X2d0*4) >> CPU_SHIFT)
+#else
+#define WPHY_UPA_DATA_HARQ_BASE_ADDR (0Xb000*4)
+#define WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE (0X168*4)
+#define WPHY_UPA_DATA_TTI10_HARQ1_BUF_SIZE (0X2d0*4)
+#endif
+
+#define WPHY_UPA_DATA_TTI2_HARQ0_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR )
+#define WPHY_UPA_DATA_TTI2_HARQ1_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ2_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 2*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ3_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 3*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ4_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 4*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ5_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 5*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ6_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 6*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI2_HARQ7_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 7*WPHY_UPA_DATA_TTI2_HARQ1_BUF_SIZE)
+
+#define WPHY_UPA_DATA_TTI10_HARQ0_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR )
+#define WPHY_UPA_DATA_TTI10_HARQ1_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + WPHY_UPA_DATA_TTI10_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI10_HARQ2_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 2*WPHY_UPA_DATA_TTI10_HARQ1_BUF_SIZE)
+#define WPHY_UPA_DATA_TTI10_HARQ3_BUF_ADDR (WPHY_UPA_DATA_BASE_ADDR + WPHY_UPA_DATA_HARQ_BASE_ADDR + 3*WPHY_UPA_DATA_TTI10_HARQ1_BUF_SIZE)
+
+
+/*Ö¡ÖжÏÐÅÏ¢°üÀ¨Êý¾Ý²¿·Ö£¬ÒÔ¼°Ö¡ºÅ£¬PSÓëÎïÀí²ã¹²ÏíµÄÆäËûÐÅÏ¢ÈçDRX GRANT REQÐÅÏ¢*/
+#define PS_WPHY_FRAME_DATA_INFO_ADDR (PS_WPHY_UPA_CTRL_INFO_ADDR + PS_WPHY_UPA_CTRL_INFO_BUF_SIZE + PS_WPHY_SAFEGUARD_SIZE)
+#define PS_WPHY_FRAME_DATA_BUF_SIZE (sizeof(T_zW_P_data_frame_info))
+
+
+/*Ö¡ºÅÏà¹ØÐÅÏ¢*/
+#define PS_WPHY_CFN_ADDR (PS_WPHY_FRAME_DATA_BUF_SIZE + PS_WPHY_FRAME_DATA_INFO_ADDR + PS_WPHY_SAFEGUARD_SIZE)
+#define PS_WPHY_SUBFRAME_ADDR ((4>>CPU_SHIFT) + PS_WPHY_CFN_ADDR)
+#define PS_WPHY_SFN_ADDR ((4>>CPU_SHIFT) + PS_WPHY_SUBFRAME_ADDR)
+#define PS_WPHY_RTSFN_ADDR ((4>>CPU_SHIFT) + PS_WPHY_SFN_ADDR)
+#define PS_WPHY_RTCFN_ADDR ((4>>CPU_SHIFT) + PS_WPHY_RTSFN_ADDR)/*ÎïÀí²ãÿ¸öÖ¡ÖжÏÉϱ¨µÄRT Ïà¹ØCFN£¬È¡Öµ·¶Î§0-255.ÓÉÎïÀí²ãRTʱ»úÄ£256µÃµ½*/
+
+/*ÓÃÓÚÊý¾Ý·¢ËÍ¿ØÖƵÄTransFlg.ÎïÀí²ãд,PS¶Á*/
+#define PS_WPHY_TRANSFLG_ADDR ((4>>CPU_SHIFT) + PS_WPHY_RTCFN_ADDR)
+
+/*ÓÃÓÚDRX¿ØÖƵÄGRANT MONITOR REQ.PSдÎïÀí²ãÖ¡Í·¶Á*/
+#define PS_WPHY_GRANT_MONITOR_REQ_ADDR ((4>>CPU_SHIFT) + PS_WPHY_TRANSFLG_ADDR + PS_WPHY_SAFEGUARD_SIZE)
+#define PS_WPHY_GRANT_MONITOR_REQ_BUF_SIZE (sizeof( T_zW_P_grant_monitor_req))
+
+
+/*Çý¶¯Î¬»¤¹²ÏíDDRµÄRING BUF¶ÓÁÐÐÅÏ¢£ºÕ¼ÓÃBUFºÍ¿ÕÏÐBUF add by shideyou*/
+
+/*IRAM DL free buf addr add by shideyou*/
+#define PS_WPHY_FREE_BUF_ADDR (PS_WPHY_GRANT_MONITOR_REQ_ADDR + PS_WPHY_GRANT_MONITOR_REQ_BUF_SIZE)
+#define PS_WPHY_FREE_BUF_SIZE ((2*4*PS_WPHY_DL_DATA_DDR_GRADE_NUM + 4*(PS_WPHY_DL_DATA_TYPE_GRADE_BUF_NUM_ALL + PS_WPHY_DL_DATA_DDR_GRADE_NUM))>>CPU_SHIFT)
+
+#if 0
+/*IRAM DL send buf addr add by shideyou*/
+#define PS_WPHY_SEND_BUF_NUM 15
+#define PS_WPHY_SEND_BUF_ADDR (PS_WPHY_FREE_BUF_ADDR + PS_WPHY_FREE_BUF_SIZE)
+#define PS_WPHY_SEND_BUF_SIZE ((2*4 + 4 * (PS_WPHY_SEND_BUF_NUM + 1))>>CPU_SHIFT)
+#endif
+
+/*HFN address add by shideyou.outputed by wphy and used for TMT */
+#define WPHY_HFN_ADDRESS (PS_WPHY_FREE_BUF_ADDR + PS_WPHY_FREE_BUF_SIZE)
+#define WPHY_HFN_SIZE (0x4 >>CPU_SHIFT)
+#endif // Z_PS_WPHY_INTERFACE_H
+
+
+