| /****************************************************************************** |
| *(C) Copyright 2018 ASR Microelectronics |
| * All Rights Reserved |
| ******************************************************************************/ |
| /* ---------------------------------------------------------------------------- |
| * |
| * Filename: mbim_stk.h |
| * |
| * |
| * Description: all stk mbim related functions should be added here |
| * |
| * |
| * Notes: |
| * |
| ******************************************************************************/ |
| #ifndef MBIM_STK_H |
| #define MBIM_STK_H |
| |
| /****************************************************************************** |
| * Include files |
| ******************************************************************************/ |
| #include <stdlib.h> |
| |
| #include "mbim_types.h" |
| #include "mbim_protocol.h" |
| |
| /****************************************************************************** |
| * Macros |
| ******************************************************************************/ |
| |
| |
| /****************************************************************************** |
| * Defines |
| ******************************************************************************/ |
| #define STK_CID_PARAMS UINT32 cid, UINT32 transactionId, UINT32 commandType, UINT32 infoBufLen, char *infoBuf_p |
| #define STK_CID_PARAMS_USAGE cid, transactionId, commandType, infoBufLen, infoBuf_p |
| |
| typedef int (*stkUuidProcessors)(STK_CID_PARAMS); |
| |
| /****************************************************************************** |
| * External variables |
| ******************************************************************************/ |
| |
| |
| /****************************************************************************** |
| * MBIM_CID_STK_PAC (Chapter 10.5.26) |
| ******************************************************************************/ |
| |
| typedef enum _MBIM_STK_PAC_PROFILE |
| { |
| MBIMSTKNotHandledByFunctionCannotBeHandledByHost = 0, |
| MBIMSTKNotHandledByFunctionMayBeHandledByHost, |
| MBIMSTKHandledByFunctionOnlyTransparentToHost, |
| MBIMSTKHandledByFunctionNotificationToHostPossible, |
| MBIMSTKHandledByFunctionNotificationsToHostEnabled, |
| MBIMSTKHandledByFunctionCanBeOverriddenByHost, |
| MBIMSTKHandledByHostFunctionNotAbleToHandle, |
| MBIMSTKHandledByHostFunctionAbleToHandle, |
| }MBIM_STK_PAC_PROFILE; |
| |
| typedef enum _MBIM_STK_PAC_TYPE |
| { |
| MBIMSTKProactiveCommand = 0, |
| MBIMSTKNotification, |
| }MBIM_STK_PAC_TYPE; |
| |
| typedef struct _MBIM_SET_STK_PAC |
| { |
| UINT8 PacHostControl[32]; |
| }MBIM_SET_STK_PAC, *P_MBIM_SET_STK_PAC; |
| |
| typedef struct _MBIM_STK_PAC_INFO |
| { |
| UINT8 PacSupport[256]; |
| }MBIM_STK_PAC_INFO, *P_MBIM_STK_PAC_INFO; |
| |
| typedef struct _MBIM_STK_PAC |
| { |
| UINT32 PacType; |
| char DataBuffer[0]; |
| }MBIM_STK_PAC, *P_MBIM_STK_PAC; |
| |
| typedef struct _MBIM_SET_STK_TERMINAL_RESPONSE |
| { |
| UINT32 ResponseLength; |
| char *DataBuffer; |
| }MBIM_SET_STK_TERMINAL_RESPONSE, *P_MBIM_SET_STK_TERMINAL_RESPONSE; |
| |
| typedef struct _MBIM_STK_TERMINAL_RESPONSE_INFO |
| { |
| UINT32 ResultDataStringOffset; |
| UINT32 ResultLength; |
| UINT32 StatusWords; |
| char DataBuffer[0]; |
| }MBIM_STK_TERMINAL_RESPONSE_INFO, *P_MBIM_STK_TERMINAL_RESPONSE_INFO; |
| |
| |
| typedef struct _MBIM_SET_STK_ENVELOPE |
| { |
| char *DataBuffer; |
| }MBIM_SET_STK_ENVELOPE, *P_MBIM_SET_STK_ENVELOPE; |
| |
| typedef struct _MBIM_STK_ENVELOPE_INFO |
| { |
| char EnvelopeSupport[32]; |
| }MBIM_STK_ENVELOPE_INFO, *P_MBIM_STK_ENVELOPE_INFO; |
| |
| #endif |