VSF Documented
Data Structures | Macros | Typedefs | Enumerations | Variables
sdio.h File Reference
#include "hal/vsf_hal_cfg.h"
#include "hal/driver/common/template/vsf_template_hal_driver.h"
#include "../../__device.h"
#include "utilities/ooc_class.h"

Go to the source code of this file.

Data Structures

class  vsf_$
 
struct  vsf_sdio_status_t
 
struct  vsf_sdio_isr_t
 sdio interrupt configuration More...
 
struct  vsf_sdio_cfg_t
 sdio configuration More...
 
struct  vsf_sdio_capability_t
 

Macros

#define __HAL_DRIVER_   ${SERIES/SDIO_IP}_SDIO_H__
 
#define VSF_   ${SDIO_IP}_SDIO_CFG_MULTI_CLASS VSF_SDIO_CFG_MULTI_CLASS
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_MODE   ENABLED
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_STATUS   ENABLED
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_IRQ_MASK   ENABLED
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CTRL   ENABLED
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CFG   ENABLED
 
#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CAPABILITY   ENABLED
 
#define SDIO_RESP_NONE   0
 
#define SDIO_RESP_R1   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)
 
#define SDIO_RESP_R1B   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC | SDIO_CMDOP_RESP_BUSY)
 
#define SDIO_RESP_R2   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_LONG_CRC)
 
#define SDIO_RESP_R3   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT)
 
#define SDIO_RESP_R4   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT)
 
#define SDIO_RESP_R5   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)
 
#define SDIO_RESP_R6   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)
 
#define SDIO_RESP_R7   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)
 

Typedefs

typedef enum vsf_sdio_mode_t vsf_sdio_mode_t
 
typedef enum vsf_sdio_reqop_t vsf_sdio_reqop_t
 
typedef enum vsf_sdio_irq_mask_t vsf_sdio_irq_mask_t
 
typedef enum vsf_sdio_reqsts_t vsf_sdio_reqsts_t
 
typedef struct vsf_sdio_status_t vsf_sdio_status_t
 
typedef struct vsf_sdio_t vsf_sdio_t
 
typedef void vsf_sdio_isr_handler_t(void *target_ptr, vsf_sdio_t *sdio_ptr, vsf_sdio_irq_mask_t irq_mask, vsf_sdio_reqsts_t status, uint32_t resp[4])
 
typedef struct vsf_sdio_isr_t vsf_sdio_isr_t
 
typedef struct vsf_sdio_cfg_t vsf_sdio_cfg_t
 
typedef struct vsf_sdio_capability_t vsf_sdio_capability_t
 

Enumerations

enum  vsf_sdio_mode_t {
  VSF_SDIO_MODE_HOST = (0x1ul << 0) ,
  VSF_SDIO_MODE_SLAVE = (0x0ul << 0) ,
  VSF_SDIO_MODE_MASK = (0x1ul << 0)
}
 
enum  vsf_sdio_reqop_t {
  SDIO_CMDOP_BYTE = (0ul << 0) ,
  SDIO_CMDOP_STREAM = (1ul << 0) ,
  SDIO_CMDOP_SINGLE_BLOCK = (2ul << 0) ,
  SDIO_CMDOP_MULTI_BLOCK = (3ul << 0) ,
  SDIO_CMDOP_WRITE = (1ul << 2) ,
  SDIO_CMDOP_READ = (0ul << 2) ,
  SDIO_CMDOP_RESP_BUSY = (1ul << 3) ,
  __SDIO_CMDOP_RESP = (1ul << 4) ,
  __SDIO_CMDOP_RESP_SHORT = (1ul << 5) ,
  __SDIO_CMDOP_RESP_SHORT_CRC = (2ul << 5) ,
  __SDIO_CMDOP_RESP_LONG_CRC = (3ul << 5) ,
  SDIO_CMDOP_CLKHOLD = (1ul << 7) ,
  SDIO_CMDOP_TRANS_STOP = (1ul << 8)
}
 
enum  vsf_sdio_irq_mask_t {
  SDIO_IRQ_MASK_HOST_RESP_DONE = (0x1ul << 0) ,
  SDIO_IRQ_MASK_HOST_DATA_DONE = (0x1ul << 1) ,
  SDIO_IRQ_MASK_HOST_DATA_ABORT = (0x1ul << 2) ,
  SDIO_IRQ_MASK_HOST_ALL
}
 
enum  vsf_sdio_reqsts_t {
  SDIO_REQSTS_DONE = 0 ,
  SDIO_REQSTS_ERR_RESP_NONE = (0x1ul << 0) ,
  SDIO_REQSTS_ERR_RESP_CRC = (0x1ul << 1) ,
  SDIO_REQSTS_ERR_DATA_CRC = (0x1ul << 2) ,
  SDIO_REQSTS_DATA_BUSY = (0x1ul << 3) ,
  SDIO_REQSTS_BUSY = (0x1ul << 4) ,
  SDIO_REQSTS_ERR_MASK
}
 

Variables

class vsf_$reg
 
vsf_sdio_isr_t isr
 

Macro Definition Documentation

◆ __HAL_DRIVER_

#define __HAL_DRIVER_   ${SERIES/SDIO_IP}_SDIO_H__

◆ VSF_

#define VSF_   ${SDIO_IP}_SDIO_CFG_MULTI_CLASS VSF_SDIO_CFG_MULTI_CLASS
Note
When vsf_peripheral_status_t is inherited, vsf_template_hal_driver.h needs to be included

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_MODE

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_MODE   ENABLED

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_STATUS

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_STATUS   ENABLED

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_IRQ_MASK

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_IRQ_MASK   ENABLED

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_CTRL

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CTRL   ENABLED

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_CFG

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CFG   ENABLED

◆ VSF_SDIO_CFG_REIMPLEMENT_TYPE_CAPABILITY

#define VSF_SDIO_CFG_REIMPLEMENT_TYPE_CAPABILITY   ENABLED

◆ SDIO_RESP_NONE

#define SDIO_RESP_NONE   0

◆ SDIO_RESP_R1

#define SDIO_RESP_R1   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)

◆ SDIO_RESP_R1B

◆ SDIO_RESP_R2

#define SDIO_RESP_R2   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_LONG_CRC)

◆ SDIO_RESP_R3

#define SDIO_RESP_R3   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT)

◆ SDIO_RESP_R4

#define SDIO_RESP_R4   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT)

◆ SDIO_RESP_R5

#define SDIO_RESP_R5   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)

◆ SDIO_RESP_R6

#define SDIO_RESP_R6   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)

◆ SDIO_RESP_R7

#define SDIO_RESP_R7   (__SDIO_CMDOP_RESP | __SDIO_CMDOP_RESP_SHORT_CRC)

Typedef Documentation

◆ vsf_sdio_mode_t

◆ vsf_sdio_reqop_t

◆ vsf_sdio_irq_mask_t

◆ vsf_sdio_reqsts_t

◆ vsf_sdio_status_t

◆ vsf_sdio_t

typedef struct vsf_sdio_t vsf_sdio_t

◆ vsf_sdio_isr_handler_t

typedef void vsf_sdio_isr_handler_t(void *target_ptr, vsf_sdio_t *sdio_ptr, vsf_sdio_irq_mask_t irq_mask, vsf_sdio_reqsts_t status, uint32_t resp[4])

◆ vsf_sdio_isr_t

◆ vsf_sdio_cfg_t

◆ vsf_sdio_capability_t

Enumeration Type Documentation

◆ vsf_sdio_mode_t

Enumerator
VSF_SDIO_MODE_HOST 
VSF_SDIO_MODE_SLAVE 
VSF_SDIO_MODE_MASK 

◆ vsf_sdio_reqop_t

Enumerator
SDIO_CMDOP_BYTE 
SDIO_CMDOP_STREAM 
SDIO_CMDOP_SINGLE_BLOCK 
SDIO_CMDOP_MULTI_BLOCK 
SDIO_CMDOP_WRITE 
SDIO_CMDOP_READ 
SDIO_CMDOP_RESP_BUSY 
__SDIO_CMDOP_RESP 
__SDIO_CMDOP_RESP_SHORT 
__SDIO_CMDOP_RESP_SHORT_CRC 
__SDIO_CMDOP_RESP_LONG_CRC 
SDIO_CMDOP_CLKHOLD 
SDIO_CMDOP_TRANS_STOP 

◆ vsf_sdio_irq_mask_t

Enumerator
SDIO_IRQ_MASK_HOST_RESP_DONE 
SDIO_IRQ_MASK_HOST_DATA_DONE 
SDIO_IRQ_MASK_HOST_DATA_ABORT 
SDIO_IRQ_MASK_HOST_ALL 

◆ vsf_sdio_reqsts_t

Enumerator
SDIO_REQSTS_DONE 
SDIO_REQSTS_ERR_RESP_NONE 
SDIO_REQSTS_ERR_RESP_CRC 
SDIO_REQSTS_ERR_DATA_CRC 
SDIO_REQSTS_DATA_BUSY 
SDIO_REQSTS_BUSY 
SDIO_REQSTS_ERR_MASK 

Variable Documentation

◆ reg

class vsf_$* reg

◆ isr

Generated from commit: vsfteam/vsf@2b286be