18#ifndef __HAL_DRIVER_NATIONS_N32H76X_N32H78X_FLASH_H__
19#define __HAL_DRIVER_NATIONS_N32H76X_N32H78X_FLASH_H__
25#if VSF_HAL_USE_FLASH == ENABLED
51#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_STATUS DISABLED
52#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_IRQ_MASK DISABLED
53#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CTRL DISABLED
54#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CFG DISABLED
55#define VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY DISABLED
57#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY == ENABLED
58# undef VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE
59# define VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE ENABLED
66#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_IRQ_MASK == ENABLED
77#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_FLASH_SIZE == ENABLED
81#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_CFG == ENABLED
94#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_STATUS == ENABLED
105#if VSF_FLASH_CFG_REIMPLEMENT_TYPE_CAPABILITY == ENABLED
107#if VSF_FLASH_CFG_INHERIT_HAL_CAPABILITY == ENABLED
vsf_flash_irq_mask_t
Definition flash.h:70
@ VSF_FLASH_IRQ_ERASE_MASK
Definition flash.h:72
@ VSF_FLASH_IRQ_READ_MASK
Definition flash.h:76
@ VSF_FLASH_IRQ_WRITE_ERROR_MASK
Definition flash.h:80
@ VSF_FLASH_IRQ_WRITE_MASK
Definition flash.h:74
@ VSF_FLASH_IRQ_ERASE_ERROR_MASK
Definition flash.h:78
@ VSF_FLASH_IRQ_READ_ERROR_MASK
Definition flash.h:82
struct vsf_flash_status_t vsf_flash_status_t
void vsf_flash_isr_handler_t(void *target_ptr, vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t mask)
Definition flash.h:83
struct vsf_flash_capability_t vsf_flash_capability_t
struct vsf_flash_cfg_t vsf_flash_cfg_t
struct vsf_flash_isr_t vsf_flash_isr_t
uint_fast32_t vsf_flash_size_t
Definition flash.h:78
vsf_arch_prio_t
Definition cortex_a_generic.h:88
const i_spi_t vsf_spi_irq_mask_t irq_mask
Definition spi_interface.h:38
unsigned uint32_t
Definition stdint.h:9
unsigned int uint_fast32_t
Definition stdint.h:27
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_template_flash.h:307
vsf_flash_size_t max_size
Definition vsf_template_flash.h:314
uint8_t none_sector_aligned_read
Definition vsf_template_flash.h:320
vsf_flash_size_t write_sector_size
Definition vsf_template_flash.h:316
inherit(vsf_peripheral_capability_t) vsf_flash_irq_mask_t irq_mask
vsf_flash_size_t base_address
Definition vsf_template_flash.h:313
vsf_flash_size_t erase_sector_size
Definition vsf_template_flash.h:315
uint8_t none_sector_aligned_write
Definition vsf_template_flash.h:319
Definition vsf_template_flash.h:283
vsf_flash_isr_t isr
Interrupt configuration.
Definition vsf_template_flash.h:284
Definition vsf_template_flash.h:278
vsf_flash_isr_handler_t * handler_fn
Interrupt handler function.
Definition vsf_template_flash.h:279
vsf_arch_prio_t prio
Interrupt priority.
Definition vsf_template_flash.h:281
void * target_ptr
User target pointer.
Definition vsf_template_flash.h:280
Flash status structure that can be reimplemented in specific HAL drivers.
Definition flash.h:87
Definition vsf_template_flash.h:418
Definition vsf_template_hal_driver.h:204
Definition vsf_template_hal_driver.h:197
vsf_flash_irq_mask_t
Definition flash.h:118
void vsf_flash_isr_handler_t(void *target_ptr, vsf_flash_t *flash_ptr, vsf_flash_irq_mask_t mask)
Definition flash.h:134
uint_fast32_t vsf_flash_size_t
Definition flash.h:129