Linux LITE MBIM  MBPL_SDK_R25_ENG3
Data Fields
MbimTransport Struct Reference

#include <MbimTransport.h>

Data Fields

int deviceFd
 
bool devRemoved
 
int shutdownFd
 
pthread_mutex_t writeLock
 
pthread_t readThread
 
uint32_t transactionId
 
pthread_mutex_t transactionIdLock
 
MbimTransactiontransactionList
 
pthread_mutex_t transactionListLock
 
struct MultiFragmentMessage * pIncomingMessage
 
MbimIndicatorindicatorList
 
pthread_mutex_t indicatorListLock
 
MBIM_TRANSPORT_ERR_CALLBACK pErrCallback
 
void * pErrCallbackContext
 
int initRetry
 
time_t timeOut
 

Detailed Description

This structure abstracts a MBIM transport layer. It is responsible for applying MBIM headers to packets destined for MBIM device services and forwarding them to the device. It is responsible for receiving MBIM packets from the device. On the basis of MBIM headers, it assembles multi-fragment responses and indications and delivers them back to user.

Parameters
deviceFd
  • File descriptor of device.
devRemoved
  • Flag indicating device has been removed.
shutdownFd
  • Event descriptor. Used to signal read thread to terminate.
writeLock
  • Provides mutual exclusion for write operations.
readThread
  • Thread responsible for reading from device.
transactionId
  • MBIM transaction ID. Upper limit 0xffffffff. Never 0. Increments for each transaction.
transactionIdLock
  • Mutex to make transactionId access thread-safe.
transactionList
  • Head of linked list of outstanding transactions.
transactionListLock
  • Provides thread safety for the transaction list.
pIncomingMessage
  • Private workspace to assemble incoming information fragments.
indicatorList
  • Head of linked list of indicators which are called when MBIM indications are received.
indicatorListLock
  • Provides thread safety for the indicators list.
pErrCallback
  • Callback function called by MbimTransport when an error has occurred
pErrCallbackContext

Copyright (c) 2011-2020 Sierra Wireless, Inc. All rights reserved