VSF Documented
Data Structures | Macros | Typedefs | Enumerations | Functions
vsf_template_flash.h File Reference
#include "./vsf_template_hal_driver.h"
#include "hal/arch/vsf_arch.h"

Go to the source code of this file.

Data Structures

struct  vsf_flash_isr_t
 
struct  vsf_flash_cfg_t
 
struct  vsf_flash_status_t
 
struct  vsf_flash_capability_t
 
struct  vsf_flash_op_t
 
struct  vsf_flash_t
 

Macros

#define VSF_FLASH_CFG_MULTI_CLASS   ENABLED
 
#define VSF_FLASH_CFG_PREFIX   vsf
 
#define VSF_FLASH_CFG_FUNCTION_RENAME   ENABLED
 
#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_IRQ_MASK   DISABLED
 
#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE   DISABLED
 
#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_STATUS   DISABLED
 
#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CFG   DISABLED
 
#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY   DISABLED
 
#define VSF_FLASH_CFG_INHERT_HAL_CAPABILITY   ENABLED
 
#define VSF_FLASH_APIS(__prefix_name)
 
#define __VSF_HAL_TEMPLATE_API   VSF_HAL_TEMPLATE_API_FP
 
#define __vsf_flash_t   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_t)
 
#define vsf_flash_init(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_init) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_fini(__FLASH)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_fini) ((__vsf_flash_t *)(__FLASH))
 
#define vsf_flash_enable(__FLASH)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_enable) ((__vsf_flash_t *)(__FLASH))
 
#define vsf_flash_disable(__FLASH)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_disable) ((__vsf_flash_t *)(__FLASH))
 
#define vsf_flash_capability(__FLASH)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_capability) ((__vsf_flash_t *)(__FLASH))
 
#define vsf_flash_status(__FLASH)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_status) ((__vsf_flash_t *)(__FLASH))
 
#define vsf_flash_irq_enable(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_irq_enable) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_irq_disable(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_irq_disable) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_erase_one_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_erase_multi_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_erase(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_erase_all(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_all) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_write_one_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_write_multi_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_write(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_read_one_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_read_multi_sector(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 
#define vsf_flash_read(__FLASH, ...)   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)
 

Typedefs

typedef enum vsf_flash_irq_mask_t vsf_flash_irq_mask_t
 
typedef uint_fast32_t vsf_flash_size_t
 
typedef struct vsf_flash_t vsf_flash_t
 
typedef void vsf_flash_isr_handler_t(void *target_ptr, vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t mask)
 
typedef struct vsf_flash_isr_t vsf_flash_isr_t
 
typedef struct vsf_flash_cfg_t vsf_flash_cfg_t
 
typedef struct vsf_flash_status_t vsf_flash_status_t
 
typedef struct vsf_flash_capability_t vsf_flash_capability_t
 
typedef struct vsf_flash_op_t vsf_flash_op_t
 

Enumerations

enum  vsf_flash_irq_mask_t {
  VSF_FLASH_IRQ_ERASE_MASK = (0x1ul << 0) ,
  VSF_FLASH_IRQ_WRITE_MASK = (0x1ul << 1) ,
  VSF_FLASH_IRQ_READ_MASK = (0x1ul << 2) ,
  VSF_FLASH_IRQ_ERASE_ERROR_MASK = (0x1ul << 3) ,
  VSF_FLASH_IRQ_WRITE_ERROR_MASK = (0x1ul << 4) ,
  VSF_FLASH_IRQ_READ_ERROR_MASK = (0x1ul << 5)
}
 
enum  {
  VSF_FLASH_IRQ_COUNT = 6 ,
  VSF_FLASH_IRQ_ALL_BITS_MASK
}
 

Functions

vsf_err_t vsf_flash_init (vsf_flash_t *flash_ptr, vsf_flash_cfg_t *cfg_ptr)
 initialize a flash instance.
 
void vsf_flash_fini (vsf_flash_t *flash_ptr)
 finalize a flash instance.
 
fsm_rt_t vsf_flash_enable (vsf_flash_t *flash_ptr)
 enable interrupt masks of flash instance.
 
fsm_rt_t vsf_flash_disable (vsf_flash_t *flash_ptr)
 disable interrupt masks of flash instance.
 
vsf_flash_status_t vsf_flash_status (vsf_flash_t *flash_ptr)
 get the status of flash instance.
 
vsf_flash_capability_t vsf_flash_capability (vsf_flash_t *flash_ptr)
 get the capability of flash instance.
 
void vsf_flash_irq_enable (vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t irq_mask)
 enable interrupt masks of flash instance.
 
void vsf_flash_irq_disable (vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t irq_mask)
 disable interrupt masks of flash instance.
 
vsf_err_t vsf_flash_erase_one_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes)
 flash erase one sector.
 
vsf_err_t vsf_flash_erase_multi_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes, vsf_flash_size_t size_of_bytes)
 flash erase a continuous range
 
vsf_err_t vsf_flash_erase_all (vsf_flash_t *flash_ptr)
 flash chip erase
 
vsf_err_t vsf_flash_write_one_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t *buffer, vsf_flash_size_t size_of_bytes)
 flash write one sector
 
vsf_err_t vsf_flash_write_multi_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t *buffer, vsf_flash_size_t size_of_bytes)
 flash write multi sector
 
vsf_err_t vsf_flash_read_one_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t *buffer, vsf_flash_size_t size_of_bytes)
 flash read one sector
 
vsf_err_t vsf_flash_read_multi_sector (vsf_flash_t *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t *buffer, vsf_flash_size_t size_of_bytes)
 flash read multi sector
 

Macro Definition Documentation

◆ VSF_FLASH_CFG_MULTI_CLASS

#define VSF_FLASH_CFG_MULTI_CLASS   ENABLED

◆ VSF_FLASH_CFG_PREFIX

#define VSF_FLASH_CFG_PREFIX   vsf

◆ VSF_FLASH_CFG_FUNCTION_RENAME

#define VSF_FLASH_CFG_FUNCTION_RENAME   ENABLED

◆ VSF_FLASH_CFG_REIMPLEMENT_TYPE_IRQ_MASK

#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_IRQ_MASK   DISABLED

◆ VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE

#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE   DISABLED

◆ VSF_FLASH_CFG_REIMPLEMENT_TYPE_STATUS

#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_STATUS   DISABLED

◆ VSF_FLASH_CFG_REIMPLEMENT_TYPE_CFG

#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CFG   DISABLED

Redefine struct vsf_flash_cfg_t. The vsf_flash_isr_handler_t type also needs to be redefined For compatibility, members should not be deleted when struct vsf_flash_cfg_t redefining.

◆ VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY

#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY   DISABLED

Redefine struct vsf_flash_capability_t. For compatibility, members should not be deleted when struct vsf_flash_capability_t redefining.

◆ VSF_FLASH_CFG_INHERT_HAL_CAPABILITY

#define VSF_FLASH_CFG_INHERT_HAL_CAPABILITY   ENABLED

◆ VSF_FLASH_APIS

#define VSF_FLASH_APIS (   __prefix_name)
Value:
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, init, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_cfg_t *cfg_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, void, flash, fini, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptrr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, fsm_rt_t, flash, enable, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, fsm_rt_t, flash, disable, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_flash_status_t, flash, status, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_flash_capability_t, flash, capability, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, void, flash, irq_enable, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_irq_mask_t irq_mask) \
__VSF_HAL_TEMPLATE_API(__prefix_name, void, flash, irq_disable, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_irq_mask_t irq_mask) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, erase_one_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, erase_multi_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes, vsf_flash_size_t size_of_bytes) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, erase_all, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, write_one_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t* buffer, vsf_flash_size_t size_of_bytes) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, write_multi_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t* buffer, vsf_flash_size_t size_of_bytes) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, read_one_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t* buffer, vsf_flash_size_t size_of_bytes) \
__VSF_HAL_TEMPLATE_API(__prefix_name, vsf_err_t, flash, read_multi_sector, VSF_MCONNECT(__prefix_name, _flash_t) *flash_ptr, vsf_flash_size_t offset_of_bytes, uint8_t* buffer, vsf_flash_size_t size_of_bytes)
vsf_err_t
Definition __type.h:42
struct VSF_MCONNECT(VSF_FLASH_CFG_IMP_PREFIX, _flash_t)
Definition flash.c:53
__le16 capability
Definition ieee80211.h:134
const i_spi_t vsf_spi_irq_mask_t irq_mask
Definition spi_interface.h:38
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_template_flash.h:164
Definition vsf_template_flash.h:147
Definition vsf_template_flash.h:153
fsm_rt_t
Definition vsf_fsm.h:315
vsf_flash_irq_mask_t
Definition vsf_template_flash.h:113
#define __VSF_HAL_TEMPLATE_API
Definition vsf_template_flash.h:184
uint_fast32_t vsf_flash_size_t
Definition vsf_template_flash.h:135
uint8_t status
Definition vsf_tgui.h:122

◆ __VSF_HAL_TEMPLATE_API

#define __VSF_HAL_TEMPLATE_API   VSF_HAL_TEMPLATE_API_FP

◆ __vsf_flash_t

#define __vsf_flash_t   VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_t)

◆ vsf_flash_init

#define vsf_flash_init (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_init) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_fini

#define vsf_flash_fini (   __FLASH)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_fini) ((__vsf_flash_t *)(__FLASH))

◆ vsf_flash_enable

#define vsf_flash_enable (   __FLASH)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_enable) ((__vsf_flash_t *)(__FLASH))

◆ vsf_flash_disable

#define vsf_flash_disable (   __FLASH)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_disable) ((__vsf_flash_t *)(__FLASH))

◆ vsf_flash_capability

#define vsf_flash_capability (   __FLASH)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_capability) ((__vsf_flash_t *)(__FLASH))

◆ vsf_flash_status

#define vsf_flash_status (   __FLASH)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_status) ((__vsf_flash_t *)(__FLASH))

◆ vsf_flash_irq_enable

#define vsf_flash_irq_enable (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_irq_enable) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_irq_disable

#define vsf_flash_irq_disable (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_irq_disable) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_erase_one_sector

#define vsf_flash_erase_one_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_erase_multi_sector

#define vsf_flash_erase_multi_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_erase

#define vsf_flash_erase (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_erase_all

#define vsf_flash_erase_all (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_erase_all) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_write_one_sector

#define vsf_flash_write_one_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_write_multi_sector

#define vsf_flash_write_multi_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_write

#define vsf_flash_write (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_write_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_read_one_sector

#define vsf_flash_read_one_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_one_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_read_multi_sector

#define vsf_flash_read_multi_sector (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

◆ vsf_flash_read

#define vsf_flash_read (   __FLASH,
  ... 
)    VSF_MCONNECT(VSF_FLASH_CFG_PREFIX, _flash_read_multi_sector) ((__vsf_flash_t *)(__FLASH), ##__VA_ARGS__)

Typedef Documentation

◆ vsf_flash_irq_mask_t

◆ vsf_flash_size_t

◆ vsf_flash_t

typedef struct vsf_flash_t vsf_flash_t

◆ vsf_flash_isr_handler_t

typedef void vsf_flash_isr_handler_t(void *target_ptr, vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t mask)

◆ vsf_flash_isr_t

◆ vsf_flash_cfg_t

◆ vsf_flash_status_t

◆ vsf_flash_capability_t

◆ vsf_flash_op_t

Enumeration Type Documentation

◆ vsf_flash_irq_mask_t

Enumerator
VSF_FLASH_IRQ_ERASE_MASK 
VSF_FLASH_IRQ_WRITE_MASK 
VSF_FLASH_IRQ_READ_MASK 
VSF_FLASH_IRQ_ERASE_ERROR_MASK 
VSF_FLASH_IRQ_WRITE_ERROR_MASK 
VSF_FLASH_IRQ_READ_ERROR_MASK 

◆ anonymous enum

anonymous enum
Enumerator
VSF_FLASH_IRQ_COUNT 
VSF_FLASH_IRQ_ALL_BITS_MASK 

Function Documentation

◆ vsf_flash_init()

vsf_err_t vsf_flash_init ( vsf_flash_t flash_ptr,
vsf_flash_cfg_t cfg_ptr 
)
extern

initialize a flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]cfg_ptra pointer to structure vsf_flash_cfg_t
Returns
vsf_err_t: VSF_ERR_NONE if flash was initialized, or a negative error code
Note
It is not necessary to call vsf_flash_fini() to deinitialization. vsf_flash_init() should be called before any other flash API except vsf_flash_capability().

◆ vsf_flash_fini()

void vsf_flash_fini ( vsf_flash_t flash_ptr)
extern

finalize a flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
Returns
none

◆ vsf_flash_enable()

fsm_rt_t vsf_flash_enable ( vsf_flash_t flash_ptr)
extern

enable interrupt masks of flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]irq_maskone or more value of enum vsf_flash_irq_mask_t
Returns
none.

◆ vsf_flash_disable()

fsm_rt_t vsf_flash_disable ( vsf_flash_t flash_ptr)
extern

disable interrupt masks of flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]irq_maskone or more value of enum vsf_flash_irq_mask_t, vsf_flash_irq_mask_t
Returns
none.

◆ vsf_flash_status()

vsf_flash_status_t vsf_flash_status ( vsf_flash_t flash_ptr)
extern

get the status of flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
Returns
vsf_flash_status_t: return all status of current flash vsf_flash_status_t

◆ vsf_flash_capability()

vsf_flash_capability_t vsf_flash_capability ( vsf_flash_t flash_ptr)
extern

get the capability of flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
Returns
vsf_flash_capability_t: return all capability of current flash vsf_flash_capability_t

◆ vsf_flash_irq_enable()

void vsf_flash_irq_enable ( vsf_flash_t flash_ptr,
vsf_flash_irq_mask_t  irq_mask 
)
extern

enable interrupt masks of flash instance.

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

◆ vsf_flash_irq_disable()

void vsf_flash_irq_disable ( vsf_flash_t flash_ptr,
vsf_flash_irq_mask_t  irq_mask 
)
extern

disable interrupt masks of flash instance.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]irq_maskone or more value of enum vsf_flash_irq_mask_t, vsf_flash_irq_mask_t
Returns
none.

◆ vsf_flash_erase_one_sector()

vsf_err_t vsf_flash_erase_one_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes 
)
extern

flash erase one sector.

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesThe address of the sector to be erased, needs to be an integer multiple of the smallest erasable sector size
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the erase, or a negative error code

◆ vsf_flash_erase_multi_sector()

vsf_err_t vsf_flash_erase_multi_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes,
vsf_flash_size_t  size_of_bytes 
)
extern

flash erase a continuous range

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesThe address of the sector to be erased, needs to be an integer multiple of the smallest erasable sector size
[in]size_of_bytesa pointer to structure vsf_flash_t
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the erase, or a negative error code

◆ vsf_flash_erase_all()

vsf_err_t vsf_flash_erase_all ( vsf_flash_t flash_ptr)
extern

flash chip erase

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the chip erase, or a negative error code

◆ vsf_flash_write_one_sector()

vsf_err_t vsf_flash_write_one_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes,
uint8_t buffer,
vsf_flash_size_t  size_of_bytes 
)
extern

flash write one sector

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesAddress of the sector to be written, some flash requires an integer multiple of the smallest writable sector size
[in]buffera pointer to data
[in]size_of_bytesa pointer to data
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the chip erase, or a negative error code

◆ vsf_flash_write_multi_sector()

vsf_err_t vsf_flash_write_multi_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes,
uint8_t buffer,
vsf_flash_size_t  size_of_bytes 
)
extern

flash write multi sector

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesAddress of the sector to be written, some flash requires an integer multiple of the smallest writable sector size
[in]buffera pointer to data
[in]size_of_bytesa pointer to data
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the chip erase, or a negative error code

◆ vsf_flash_read_one_sector()

vsf_err_t vsf_flash_read_one_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes,
uint8_t buffer,
vsf_flash_size_t  size_of_bytes 
)
extern

flash read one sector

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesAddress of the sector to be written, some flash requires an integer multiple of the smallest writable sector size
[in]buffera pointer to data
[in]size_of_bytesa pointer to data
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the chip erase, or a negative error code

◆ vsf_flash_read_multi_sector()

vsf_err_t vsf_flash_read_multi_sector ( vsf_flash_t flash_ptr,
vsf_flash_size_t  offset_of_bytes,
uint8_t buffer,
vsf_flash_size_t  size_of_bytes 
)
extern

flash read multi sector

Parameters
[in]flash_ptra pointer to structure vsf_flash_t
[in]offset_of_bytesAddress of the sector to be written, some flash requires an integer multiple of the smallest writable sector size
[in]buffera pointer to data
[in]size_of_bytesa pointer to data
Returns
vsf_err_t: VSF_ERR_NONE if flash starts to perform the chip erase, or a negative error code