Go to the documentation of this file.
40 #ifndef ADUCM3029_FLASH_H_
41 #define ADUCM3029_FLASH_H_
43 #define ADUCM3029_FLASH_SIZE_BYTES (0x40000u)
45 #define FLASH_PAGE_SIZE_BYTES 2048
46 #define FLASH_PAGE_SIZE_WORDS 512
47 #define FLASH_PAGE_ADDR_SHIFT 11
49 #define FLASH_PAGE_START_ADDRESS_MASK 0x7FF
50 #define FLASH_OFFSET_IN_PAGE(x) (((x) & FLASH_PAGE_START_ADDRESS_MASK) / 4)
51 #define FLASH_ADDRESS_PAGE_START(x) ((x) & ~FLASH_PAGE_START_ADDRESS_MASK)
#define FLASH_PAGE_SIZE_WORDS
Definition: aducm3029_flash.h:46
int32_t no_os_flash_write_page(struct no_os_flash_dev *dev, int32_t page_no, uint32_t *data)
Definition: aducm3029_flash.c:186
uint32_t flash_size
Definition: no_os_flash.h:61
#define FLASH_PAGE_ADDR_SHIFT
Definition: aducm3029_flash.h:47
#define FLASH_PAGE_SIZE_BYTES
Definition: aducm3029_flash.h:45
int32_t no_os_timer_init(struct no_os_timer_desc **desc, const struct no_os_timer_init_param *param)
Initialize hardware timer and the handler structure associated with it.
Definition: no_os_timer.c:63
#define FLASH_ADDRESS_PAGE_START(x)
Definition: aducm3029_flash.h:51
uint16_t id
Definition: no_os_timer.h:91
uint32_t page_size
Definition: no_os_flash.h:63
Header file of Delay functions.
Definition: ad9361_util.h:75
Timer control module header.
void * no_os_calloc(size_t nitems, size_t size)
Allocate memory and return a pointer to it, set memory to 0.
Definition: chibios_alloc.c:60
int32_t no_os_flash_write(struct no_os_flash_dev *dev, uint32_t flash_addr, uint32_t *array, uint32_t array_size)
Definition: aducm3029_flash.c:261
Header file of the flash driver for ADuCM302x.
int32_t no_os_flash_clear_page(struct no_os_flash_dev *dev, int32_t page_no)
Definition: aducm3029_flash.c:159
void * extra
Definition: no_os_flash.h:65
ADI_FEE_HANDLE instance
Definition: aducm3029_flash.c:64
int32_t no_os_flash_init(struct no_os_flash_dev **device, struct no_os_flash_init_param *init_param)
Definition: aducm3029_flash.c:84
int32_t no_os_timer_start(struct no_os_timer_desc *desc)
Start a timer.
Definition: no_os_timer.c:110
Flash controller device structure.
Definition: no_os_flash.h:57
int32_t no_os_timer_stop(struct no_os_timer_desc *desc)
Stop a timer from counting.
Definition: no_os_timer.c:126
Flash controller initialization structure.
Definition: no_os_flash.h:72
int32_t no_os_flash_read(struct no_os_flash_dev *dev, uint32_t flash_addr, uint32_t *array, uint32_t size)
Definition: aducm3029_flash.c:291
int32_t no_os_timer_counter_get(struct no_os_timer_desc *desc, uint32_t *counter)
Get the value of the counter register for the timer.
Definition: no_os_timer.c:144
Structure holding the parameters for timer initialization.
Definition: no_os_timer.h:89
void no_os_free(void *ptr)
Deallocate memory previously allocated by a call to no_os_calloc or no_os_malloc.
Definition: chibios_alloc.c:75
void no_os_mdelay(uint32_t msecs)
Wait until msecs milliseconds passed.
Definition: aducm3029_delay.c:132
int32_t no_os_timer_counter_set(struct no_os_timer_desc *desc, uint32_t new_val)
Set the timer counter register value.
Definition: no_os_timer.c:162
struct ad7616_init_param init_param
Definition: ad7616_sdz.c:119
const struct no_os_timer_platform_ops aducm_timer_ops
aducm3029 platform specific timer platform ops structure
Definition: aducm3029_timer.c:440
#define ADUCM3029_FLASH_SIZE_BYTES
Definition: aducm3029_flash.h:43
void no_os_udelay(uint32_t usecs)
Wait until usecs microseconds passed.
Definition: aducm3029_delay.c:120
Aducm3029 flash controller handler.
Definition: aducm3029_flash.c:62
Header file of TIMER driver for ADuCM302x.
uint32_t temp_ptr[FLASH_PAGE_SIZE_WORDS]
Definition: aducm3029_flash.c:69
Structure holding timer descriptor.
Definition: no_os_timer.h:63
Header file for flash controller driver.
uint8_t dfp_memory[ADI_FEE_MEMORY_SIZE]
Definition: aducm3029_flash.c:66
int32_t no_os_flash_remove(struct no_os_flash_dev *dev)
Definition: aducm3029_flash.c:131
uint8_t id
Definition: no_os_flash.h:59
#define FLASH_OFFSET_IN_PAGE(x)
Definition: aducm3029_flash.h:50