VSF Documented
Macros | Functions
sdio_common.c File Reference
#include "hal/driver/driver.h"

Macros

#define VSF_SDIO_CFG_FUNCTION_RENAME   DISABLED
 

Functions

vsf_err_t vsf_sdio_init (vsf_sdio_t *sdio_ptr, vsf_sdio_cfg_t *cfg_ptr)
 Initialize a sdio instance.
 
void vsf_sdio_fini (vsf_sdio_t *sdio_ptr)
 Finalize a sdio instance.
 
void vsf_sdio_irq_enable (vsf_sdio_t *sdio_ptr, vsf_sdio_irq_mask_t irq_mask)
 Enable interrupt masks of sdio instance.
 
void vsf_sdio_irq_disable (vsf_sdio_t *sdio_ptr, vsf_sdio_irq_mask_t irq_mask)
 Disable interrupt masks of sdio instance.
 
vsf_sdio_status_t vsf_sdio_status (vsf_sdio_t *sdio_ptr)
 Get the status of sdio instance.
 
vsf_sdio_capability_t vsf_sdio_capability (vsf_sdio_t *sdio_ptr)
 Get the capability of sdio instance.
 
vsf_err_t vsf_sdio_set_clock (vsf_sdio_t *sdio_ptr, uint32_t clock_hz, bool is_ddr)
 Set the clock of sdio instance.
 
vsf_err_t vsf_sdio_set_bus_width (vsf_sdio_t *sdio_ptr, uint8_t bus_width)
 Set the bus width of sdio instance.
 
vsf_err_t vsf_sdio_host_request (vsf_sdio_t *sdio_ptr, vsf_sdio_req_t *req)
 Start a new request for sdio instance.
 
vsf_err_t vsf_sdio_get_configuration (vsf_sdio_t *sdio_ptr, vsf_sdio_cfg_t *cfg_ptr)
 Get the current configuration of an SDIO instance.
 

Macro Definition Documentation

◆ VSF_SDIO_CFG_FUNCTION_RENAME

#define VSF_SDIO_CFG_FUNCTION_RENAME   DISABLED

Function Documentation

◆ vsf_sdio_init()

vsf_err_t vsf_sdio_init ( vsf_sdio_t sdio_ptr,
vsf_sdio_cfg_t cfg_ptr 
)

Initialize a sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]cfg_ptra pointer to structure vsf_sdio_cfg_t
Returns
vsf_err_t: VSF_ERR_NONE if sdio was initialized, or a negative error code
Note
It is not necessary to call vsf_sdio_fini() to deinitialization. vsf_sdio_init() should be called before any other sdio API except vsf_sdio_capability().

◆ vsf_sdio_fini()

void vsf_sdio_fini ( vsf_sdio_t sdio_ptr)

Finalize a sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
Returns
none

◆ vsf_sdio_irq_enable()

void vsf_sdio_irq_enable ( vsf_sdio_t sdio_ptr,
vsf_sdio_irq_mask_t  irq_mask 
)

Enable interrupt masks of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]irq_maskone or more value of enum vsf_sdio_irq_mask_t
Returns
none.
Note
All pending interrupts should be cleared before interrupts are enabled.

◆ vsf_sdio_irq_disable()

void vsf_sdio_irq_disable ( vsf_sdio_t sdio_ptr,
vsf_sdio_irq_mask_t  irq_mask 
)

Disable interrupt masks of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]irq_maskone or more value of enum vsf_sdio_irq_mask_t, vsf_sdio_irq_mask_t
Returns
none.

◆ vsf_sdio_status()

vsf_sdio_status_t vsf_sdio_status ( vsf_sdio_t sdio_ptr)

Get the status of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
Returns
vsf_sdio_status_t: return all status of current sdio

◆ vsf_sdio_capability()

vsf_sdio_capability_t vsf_sdio_capability ( vsf_sdio_t sdio_ptr)

Get the capability of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
Returns
vsf_sdio_capability_t: return all capability of current sdio vsf_sdio_capability_t

◆ vsf_sdio_set_clock()

vsf_err_t vsf_sdio_set_clock ( vsf_sdio_t sdio_ptr,
uint32_t  clock_hz,
bool  is_ddr 
)

Set the clock of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]clock_hzclock in Hz
[in]is_ddris DDR mode, true means DDR mode while false means SDR mode
Returns
vsf_err_t: VSF_ERR_NONE if sdio set clock was successfully, or a negative error code

◆ vsf_sdio_set_bus_width()

vsf_err_t vsf_sdio_set_bus_width ( vsf_sdio_t sdio_ptr,
uint8_t  bus_width 
)

Set the bus width of sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]bus_widthbus width in 1, 4, 8
Returns
vsf_err_t: VSF_ERR_NONE if sdio was successfully, or a negative error code

◆ vsf_sdio_host_request()

vsf_err_t vsf_sdio_host_request ( vsf_sdio_t sdio_ptr,
vsf_sdio_req_t req 
)

Start a new request for sdio instance.

Parameters
[in]sdio_ptra pointer to structure vsf_sdio_t
[in]reqpointer to structure vsf_sdio_req_t
Returns
vsf_err_t: VSF_ERR_NONE if sdio was successfully, or a negative error code

◆ vsf_sdio_get_configuration()

vsf_err_t vsf_sdio_get_configuration ( vsf_sdio_t sdio_ptr,
vsf_sdio_cfg_t cfg_ptr 
)

Get the current configuration of an SDIO instance.

Parameters
[in]sdio_ptrpointer to structure vsf_sdio_t
[out]cfg_ptrpointer to configuration structure vsf_sdio_cfg_t to store the current configuration
Returns
vsf_err_t: VSF_ERR_NONE if successful, otherwise return error code
Note
This function retrieves the current SDIO configuration including mode and interrupt settings. The SDIO instance should be initialized before calling this function.
Generated from commit: vsfteam/vsf@74aa6ce