⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bspuicc_lnk_msgutil.h

📁 MMI层OBJ不能完全编译
💻 H
📖 第 1 页 / 共 4 页
字号:
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_REF_DATA_OCTET_OFFSET   0
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_REF_DATA_BIT_OFFSET     0
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_REF_DATA_BIT_WIDTH      5

#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_PIN_QUAL_OCTET_OFFSET   0
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_PIN_QUAL_BIT_OFFSET     7
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_PIN_QUAL_BIT_WIDTH      1

#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_APP_PIN_VALUE           0x1
#define BSP_UICC_LNK_MSG_UTIL_VERIFY_PIN_P2_GLOBAL_PIN_VALUE        0x0
 
/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  P2 field of the Change PIN command
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
| Pin   |               |               Ref Data                |
| Qual  |               |                                       |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_REF_DATA_OCTET_OFFSET   0
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_REF_DATA_BIT_OFFSET     0
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_REF_DATA_BIT_WIDTH      5

#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_PIN_QUAL_OCTET_OFFSET   0
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_PIN_QUAL_BIT_OFFSET     7
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_PIN_QUAL_BIT_WIDTH      1

#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_APP_PIN_VALUE           0x1
#define BSP_UICC_LNK_MSG_UTIL_CHANGE_PIN_P2_GLOBAL_PIN_VALUE        0x0
 
/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  P2 field of the Change PIN command
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|                       |          Auth context                 |
|                       |            Ref Data                   |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_UMTS_AUTH_P2_REF_DATA_OCTET_OFFSET   0
#define BSP_UICC_LNK_MSG_UTIL_UMTS_AUTH_P2_REF_DATA_BIT_OFFSET     0
#define BSP_UICC_LNK_MSG_UTIL_UMTS_AUTH_P2_REF_DATA_BIT_WIDTH      5

/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  NAD byte in the Block header/Prologue
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|  RFU  |  Destination Address  |  RFU  |    Source Address     |
|       |        DAD            |       |        SAD            |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_SAD_OCTET_OFFSET               0
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_SAD_BIT_OFFSET                 0
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_SAD_BIT_WIDTH                  3

#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_DAD_OCTET_OFFSET               0
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_DAD_BIT_OFFSET                 4
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_DAD_BIT_WIDTH                  3

#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_SAD_VALUE                      0x0
#define BSP_UICC_LNK_MSG_UTIL_T1_NAD_DAD_VALUE                      0x0

/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  PCB byte in the I Block header/Prologue
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
| Block |Seq Num|  More |             RFU                       |
| Type  |   N   |  Data |                                       |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_TYPE_OCTET_OFFSET      1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_TYPE_BIT_OFFSET        7
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_TYPE_BIT_WIDTH         1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_SEQ_NUM_OCTET_OFFSET   1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_SEQ_NUM_BIT_OFFSET     6
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_SEQ_NUM_BIT_WIDTH      1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_MORE_DATA_OCTET_OFFSET 1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_MORE_DATA_BIT_OFFSET   5
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_MORE_DATA_BIT_WIDTH    1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_I_BLOCK_TYPE_VALUE             0x0
/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  PCB byte in the R Block header/Prologue
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|  Block Type   | Not   |Seq Num|          Error Ind            |
|     R         | Used  |   N   |             Err               |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_TYPE_OCTET_OFFSET      1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_TYPE_BIT_OFFSET        6
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_TYPE_BIT_WIDTH         2

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_UNDEF_OCTET_OFFSET     1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_UNDEF_BIT_OFFSET       5
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_UNDEF_BIT_WIDTH        1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_SEQ_NUM_OCTET_OFFSET   1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_SEQ_NUM_BIT_OFFSET     4
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_SEQ_NUM_BIT_WIDTH      1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_ERR_IND_OCTET_OFFSET   1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_ERR_IND_BIT_OFFSET     0
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_ERR_IND_BIT_WIDTH      4

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_NO_ERROR_VALUE         0x0
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_EDC_ERROR_VALUE        0x1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_OTHER_ERROR_VALUE      0x2

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_UNDEF_VALUE            0x0

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_R_BLOCK_TYPE_VALUE             0x2

/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  PCB byte in the S Block header/Prologue
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|  Block Type   | Direc |              Block Info               |
|     S         | -tion |                  Info                 |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_TYPE_OCTET_OFFSET      1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_TYPE_BIT_OFFSET        6
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_TYPE_BIT_WIDTH         2

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_DIRECTION_OCTET_OFFSET 1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_DIRECTION_BIT_OFFSET   5
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_DIRECTION_BIT_WIDTH    1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_OCTET_OFFSET      1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_BIT_OFFSET        0
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_BIT_WIDTH         5

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_TYPE_VALUE             0x3

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_DIRECTION_REQ_VALUE    0x0
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_DIRECTION_RSP_VALUE    0x1

#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_RESYNCH_VALUE     0x0
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_IFS_VALUE         0x1
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_ABORT_VALUE       0x2
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_WTX_VALUE         0x3
#define BSP_UICC_LNK_MSG_UTIL_T1_PCB_S_BLOCK_INFO_VPP_ERROR_VALUE   0x4


/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  Length byte of a block
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|                            Length                             |
|                             Len                               |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_LENGTH_OCTET_OFFSET             2
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_LENGTH_BIT_OFFSET               0
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_LENGTH_BIT_WIDTH                8

/*===========================================================================
 * Description:
 *  These macros are used to set and get the bits from the
 *  epilogue field of a block, No octet offset as the inf
 *  size can vary.
----------------------------------------------------------------- 
|   8   |   7   |   6   |   5   |   4   |   3   |   2   |   1   |
-----------------------------------------------------------------
|                          Epilogue                             |
|                                                               |
-----------------------------------------------------------------
*/
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_EPILOGUE_OCTET_OFFSET           0
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_EPILOGUE_BIT_OFFSET             0
#define BSP_UICC_LNK_MSG_UTIL_BLOCK_EPILOGUE_BIT_WIDTH              8



#define BSP_UICC_LNK_MSG_UTIL_GET( _name,                       \
                                   _msgPtr )                    \
(                                                               \
    BSPUTIL_BITUTIL_BIT_FIELD_GET                               \
        ( (((SYS_UWORD8 *)(_msgPtr)) + (_name ##_OCTET_OFFSET)),     \
          BSPUTIL_BITUTIL_DATAUNIT_8,                           \
          _name ##_BIT_OFFSET,                                  \
          _name ##_BIT_WIDTH )                                  \
)

#define BSP_UICC_LNK_MSG_UTIL_SET( _name ,                      \
                                   _msgPtr ,                    \
                                   _newValue )                  \
{                                                               \
    BSPUTIL_BITUTIL_BIT_FIELD_SET                               \
        ( (((SYS_UWORD8 *)(_msgPtr)) + (_name ##_OCTET_OFFSET)),     \
             _newValue,                                         \
             BSPUTIL_BITUTIL_DATAUNIT_8,                        \
             _name ##_BIT_OFFSET,                               \
             _name ##_BIT_WIDTH );                              \
}

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -