![]() |
Altera HWLIB
16.0
The Altera HW Manager API Reference Manual
|
#include "hwlib.h"
Go to the source code of this file.
Altera - NAND Flash Controller Module
Data Structures | |
struct | ALT_NAND_FLASH_ECC_STATUS_s |
Macros | |
#define | ALT_NAND_INVALID_FLASH_ADDR 0xffffffff |
#define | ALT_NAND_BAD_BLOCK_MARKER 0 |
Typedefs | |
typedef void(* | alt_nand_callback_t )(ALT_STATUS_CODE status, void *callback_arg) |
typedef ALT_STATUS_CODE(* | alt_nand_flash_custom_init_t )(void *user_arg) |
typedef enum ALT_NAND_ECC_CORRECTION_e | ALT_NAND_ECC_CORRECTION_t |
typedef struct ALT_NAND_FLASH_ECC_STATUS_s | ALT_NAND_FLASH_ECC_STATUS_t |
typedef enum ALT_NAND_INT_STATUS_e | ALT_NAND_INT_STATUS_t |
typedef uint32_t * | alt_nand_bad_block_table_t |
Enumerations | |
enum | ALT_NAND_ECC_CORRECTION_e { ALT_NAND_ECC_4_BIT_CORRECTION = 4, ALT_NAND_ECC_8_BIT_CORRECTION = 8, ALT_NAND_ECC_16_BIT_CORRECTION = 16, ALT_NAND_ECC_24_BIT_CORRECTION = 24 } |
enum | ALT_NAND_INT_STATUS_e { ALT_NAND_INT_STATUS_PAGE_XFER_INC = (1 << 15), ALT_NAND_INT_STATUS_PIPE_CMD_ERR = (1 << 14), ALT_NAND_INT_STATUS_RST_COMP = (1 << 13), ALT_NAND_INT_STATUS_INT_ACT = (1 << 12), ALT_NAND_INT_STATUS_UNSUP_CMD = (1 << 11), ALT_NAND_INT_STATUS_LOCKED_BLK = (1 << 10), ALT_NAND_INT_STATUS_PIPE_CPYBCK_CMD_COMP = (1 << 9), ALT_NAND_INT_STATUS_ERASE_COMP = (1 << 8), ALT_NAND_INT_STATUS_PROGRAM_COMP = (1 << 7), ALT_NAND_INT_STATUS_LOAD_COMP = (1 << 6), ALT_NAND_INT_STATUS_ERASE_FAIL = (1 << 5), ALT_NAND_INT_STATUS_PROGRAM_FAIL = (1 << 4), ALT_NAND_INT_STATUS_TIME_OUT = (1 << 3), ALT_NAND_INT_STATUS_DMA_CMD_COMP = (1 << 2), ALT_NAND_INT_STATUS_ECC_UNCOR_ERR = (1 << 0) } |
Functions | |
ALT_STATUS_CODE | alt_nand_flash_init (const bool load_block0_page0, const bool page_size_512, alt_nand_flash_custom_init_t custom_init, void *user_arg) |
ALT_STATUS_CODE | alt_nand_flash_uninit (void) |
uint32_t | alt_nand_block_address_get (const uint32_t addr) |
uint32_t | alt_nand_page_address_get (const uint32_t addr) |
uint32_t | alt_nand_flash_addr_compose (const uint32_t block_num, const uint32_t page_num) |
ALT_STATUS_CODE | alt_nand_flash_block_erase (const uint32_t block_addr, alt_nand_callback_t completion_callback, void *completion_arg) |
ALT_STATUS_CODE | alt_nand_flash_page_read (const uint32_t page_addr, const uint32_t num_pages, void *dest, const uint32_t dest_size) |
ALT_STATUS_CODE | alt_nand_flash_page_write (const uint32_t page_addr, const uint32_t num_pages, const void *src, const uint32_t src_size) |
ALT_STATUS_CODE | alt_nand_flash_page_dma_read (const uint32_t page_addr, const uint32_t num_pages, void *dest, const uint32_t dest_size, alt_nand_callback_t completion_callback, void *completion_arg) |
ALT_STATUS_CODE | alt_nand_flash_page_dma_write (const uint32_t page_addr, const uint32_t num_pages, const void *src, const uint32_t src_size, alt_nand_callback_t completion_callback, void *completion_arg) |
ALT_STATUS_CODE | alt_nand_flash_ecc_enable (const ALT_NAND_ECC_CORRECTION_t ecc_correction) |
ALT_STATUS_CODE | alt_nand_flash_ecc_disable (void) |
ALT_STATUS_CODE | alt_nand_flash_ecc_status_get (ALT_NAND_FLASH_ECC_STATUS_t *ecc_status) |
uint32_t | alt_nand_int_status_get (void) |
ALT_STATUS_CODE | alt_nand_int_clear (const uint32_t mask) |
ALT_STATUS_CODE | alt_nand_int_disable (const uint32_t mask) |
ALT_STATUS_CODE | alt_nand_int_enable (const uint32_t mask) |
uint32_t | alt_nand_num_planes_get (void) |
uint32_t | alt_nand_num_blocks_get (void) |
uint32_t | alt_nand_num_pages_per_block_get (void) |
uint32_t | alt_nand_sector_size_get (void) |
uint32_t | alt_nand_spare_size_get (void) |
bool | alt_nand_block_is_bad (const uint32_t block_addr) |
ALT_STATUS_CODE | alt_nand_bad_block_table_get (alt_nand_bad_block_table_t bad_block_table, const uint32_t bad_block_table_len) |