WE310F5  39.00.000
m2mb_sdio_slave.h File Reference

SDIO slave support. More...

Go to the source code of this file.

Data Structures

struct  M2MB_SLAVE_SDIO_WRITE_REQUEST_S
 
struct  M2MB_SLAVE_MBOX_MSG_S
 
struct  M2M_SLAVE_SDIO_BUFFER_S
 
struct  M2MB_SLAVE_SDIO_S
 
#define M2MB_SLAVE_WRITE_DONE_EVT   (0x00000001)
 
#define M2MB_SLAVE_INIT_DONE_EVT   (0x00000002)
 
#define M2MB_SDIO_SLAVE_RECEIVE_BUFFER_COUNT   (16)
 
#define M2MB_SDIO_SLAVE_RECEIVE_BUFFER_SIZE   (1536)
 
#define M2MB_NUM_BUFFERS_PER_MBOX   (16)
 
#define M2MB_SDIO_SLAVE_WRITE_BUFFER_SIZE   (2048)
 
#define M2MB_MBOX_BLOCK_SIZE   256
 
#define M2MB_MBOX_MSG_HDR_SIZE   (2)
 
#define M2MB_MBOX_PAYLOAD_MAX_SIZE   (M2MB_SDIO_SLAVE_RECEIVE_BUFFER_SIZE-M2MB_MBOX_MSG_HDR_SIZE)
 
#define M2MB_SDIO_SLAVE_WRITE_BUFFER_MAX   (1)
 
#define M2MB_MBOX_MAX_TX_SIZE   256
 
#define M2MB_SDIO_SLAVE_FLOW_CTRL_LOW_THRESHOLD   6
 
#define M2MB_SDIO_SLAVE_FLOW_CTRL_HIGH_THRESHOLD   9
 
#define M2MB_SDIO_SLAVE_MBOX_ID   (0)
 
enum  qapi_HTC_Instance_id_t {
  M2MB_SDIO_SLAVE_INSTANCE_ID = 0,
  M2MB_SPI_SLAVE_INSTANCE_ID,
  M2MB_MAX_INSTANCES
}
 
typedef struct M2MB_SLAVE_SDIO_WRITE_REQUEST_S M2MB_SLAVE_SDIO_WRITE_REQUEST_T
 
typedef struct M2MB_SLAVE_MBOX_MSG_S M2MB_SLAVE_MBOX_MSG_T
 
typedef struct M2M_SLAVE_SDIO_BUFFER_S M2MB_SLAVE_SDIO_BUFFER_T
 
typedef struct M2MB_SLAVE_SDIO_S M2MB_SLAVE_SDIO_T
 
INT32 m2mb_slave_sdio_send_buflist_enqueue (INT32 instance_id, INT32 mbox, M2MB_SLAVE_SDIO_BUFFER_T *bufinfo)
 enques tx buffer. More...
 
INT32 m2mb_slave_sdio_send_buflist_dequeue (INT32 instance_id, INT32 mbox, M2MB_SLAVE_SDIO_BUFFER_T **pbufinfo)
 deques a list of completed send buffers. More...
 
INT32 m2mb_slave_sdio_recv_buflist_enqueue (INT32 instance_id, INT32 mbox, M2MB_SLAVE_SDIO_BUFFER_T *bufinfo)
 enques recieve buffer. More...
 
INT32 m2mb_slave_sdio_recv_buflist_dequeue (INT32 instance_id, INT32 mbox, M2MB_SLAVE_SDIO_BUFFER_T **pbufinfo)
 deques a list of completed receive buffers. More...
 
void m2mb_slave_sdio_resume_recv (INT32 instance_id, INT32 mbox)
 sends rx resume indication to host More...
 
void m2mb_slave_sdio_pause_recv (INT32 instance_id, INT32 mbox)
 sends rx pause indication to host More...
 
void m2mb_slave_sdio_tx_credit_inc (INT32 instance_id, INT32 mbox)
 Increments the Host Tx credit counter registers. More...
 
void m2mb_slave_sdio_deinit (int instance_id, int mbox)
 stops mbox h/w and deallocates dma resources More...
 
void m2mb_slave_sdio_post_init (UINT32 instance_id, INT32 mbox, UINT32 block_size, UINT32 rxmsg_size, void *pResetCb)
 additional initialisation needed for mbox More...
 
INT32 m2m_slave_sdio_is_initialized (void)
 mobox initialisation More...
 
INT32 m2mb_slave_sdio_pre_init (UINT32 instance_id, INT32 mbox, UINT32 rx_buf_size, void *pInitCb, void *pSendCb, void *pRecvCb, void *pContext)
 mobox initialisation More...
 

Detailed Description

SDIO slave support.

we866e4/epl/inc/driver/m2mb_sdio_slave.h

library for slave SDIO. The following functions are implemented: m2mb_slave_sdio_open m2mb_slave_sdio_close m2mb_slave_sdio_read m2mb_slave_sdio_write

Note
Dependencies:
"#include <m2mb_types.h>"
"#include <m2mb_status.h>"
Author
Prasad Reddy
Date
19/04/2018

Definition in file m2mb_sdio_slave.h.