Morse Micro IoT SDK  2.9.7

Detailed Description

API for communicating with the WLAN transceiver over an SDIO interface.

Warning
These functions shall not be called directly by the end application they are for use by Morselib.

Modules

 SDIO Utilities
 Useful macros and inline utilities function for use by SDIO and SPI HALs.
 

Data Structures

struct  mmhal_wlan_sdio_cmd53_write_args
 Arguments structure for mmhal_wlan_sdio_cmd53_write(). More...
 
struct  mmhal_wlan_sdio_cmd53_read_args
 Arguments structure for mmhal_wlan_sdio_cmd53_read(). More...
 

Enumerations

enum  mmhal_sdio_error_codes {
  MMHAL_SDIO_INVALID_ARGUMENT = -1 , MMHAL_SDIO_HW_ERROR = -2 , MMHAL_SDIO_CMD_TIMEOUT = -3 , MMHAL_SDIO_CMD_CRC_ERROR = -4 ,
  MMHAL_SDIO_DATA_TIMEOUT = -5 , MMHAL_SDIO_DATA_CRC_ERROR = -6 , MMHAL_SDIO_DATA_UNDERFLOW = -7 , MMHAL_SDIO_DATA_OVERRUN = -8 ,
  MMHAL_SDIO_OTHER_ERROR = -9
}
 Enumeration of error codes that may be returned from mmhal_wlan_sdio_XXX() functions. More...
 

Functions

int mmhal_wlan_sdio_startup (void)
 Perform transport specific startup. More...
 
int mmhal_wlan_sdio_cmd (uint8_t cmd_idx, uint32_t arg, uint32_t *rsp)
 Execute an SDIO command without data. More...
 
int mmhal_wlan_sdio_cmd53_write (const struct mmhal_wlan_sdio_cmd53_write_args *args)
 Execute an SDIO CMD53 write. More...
 
int mmhal_wlan_sdio_cmd53_read (const struct mmhal_wlan_sdio_cmd53_read_args *args)
 Execute an SDIO CMD53 read. More...
 

Enumeration Type Documentation

◆ mmhal_sdio_error_codes

Enumeration of error codes that may be returned from mmhal_wlan_sdio_XXX() functions.

Enumerator
MMHAL_SDIO_INVALID_ARGUMENT 

Invalid argument given (e.g., incorrect buffer alignment).

MMHAL_SDIO_HW_ERROR 

Local hardware error (e.g., issue with SDIO controller).

MMHAL_SDIO_CMD_TIMEOUT 

Timeout executing SDIO command.

MMHAL_SDIO_CMD_CRC_ERROR 

CRC error executing SDIO command.

MMHAL_SDIO_DATA_TIMEOUT 

Timeout transferring data.

MMHAL_SDIO_DATA_CRC_ERROR 

CRC error transferring data.

MMHAL_SDIO_DATA_UNDERFLOW 

Underflow filling SDIO controller FIFO.

MMHAL_SDIO_DATA_OVERRUN 

Overflow reading from SDIO controller FIFO.

MMHAL_SDIO_OTHER_ERROR 

Another error not covered by the above error codes.

Definition at line 487 of file mmhal_wlan.h.

Function Documentation

◆ mmhal_wlan_sdio_cmd()

int mmhal_wlan_sdio_cmd ( uint8_t  cmd_idx,
uint32_t  arg,
uint32_t *  rsp 
)

Execute an SDIO command without data.

Parameters
[in]cmd_idxThe Command Index.
[in]argCommand argument. This corresponds to the 32 bits of the command between the Command Index field and the CRC7 field.
[out]rspThe contents of the command response between the Command Index field and the CRC7 field. May be NULL if the response is not required. The returned value is undefined if the return code is not zero.
Returns
0 on success, an error code from mmhal_sdio_error_codes on failure.

◆ mmhal_wlan_sdio_cmd53_read()

int mmhal_wlan_sdio_cmd53_read ( const struct mmhal_wlan_sdio_cmd53_read_args args)

Execute an SDIO CMD53 read.

Parameters
argsThe read arguments.
Returns
0 on success, an error code from mmhal_sdio_error_codes on failure.

◆ mmhal_wlan_sdio_cmd53_write()

int mmhal_wlan_sdio_cmd53_write ( const struct mmhal_wlan_sdio_cmd53_write_args args)

Execute an SDIO CMD53 write.

Parameters
argsThe write arguments.
Returns
0 on success, an error code from mmhal_sdio_error_codes on failure.

◆ mmhal_wlan_sdio_startup()

int mmhal_wlan_sdio_startup ( void  )

Perform transport specific startup.

Returns
0 on success, an error code from mmhal_sdio_error_codes on failure.