nandpsu
Vitis Drivers API Documentation
xnandpsu_onfi.h File Reference

Macros

#define ONFI_CMD_RD1   0x00U
 Read (1st cycle) More...
 
#define ONFI_CMD_RD2   0x30U
 Read (2nd cycle) More...
 
#define ONFI_CMD_CHNG_RD_COL1   0x05U
 Change Read Column (1st cycle) More...
 
#define ONFI_CMD_CHNG_RD_COL2   0xE0U
 Change Read Column (2nd cycle) More...
 
#define ONFI_CMD_BLK_ERASE1   0x60U
 Block Erase (1st cycle) More...
 
#define ONFI_CMD_BLK_ERASE2   0xD0U
 Block Erase (2nd cycle) More...
 
#define ONFI_CMD_RD_STS   0x70U
 Read Status. More...
 
#define ONFI_CMD_PG_PROG1   0x80U
 Page Program(1st cycle) More...
 
#define ONFI_CMD_PG_PROG2   0x10U
 Page Program(2nd cycle) More...
 
#define ONFI_CMD_CHNG_WR_COL   0x85U
 Change Write Column. More...
 
#define ONFI_CMD_RD_ID   0x90U
 Read ID. More...
 
#define ONFI_CMD_RD_PRM_PG   0xECU
 Read Parameter Page. More...
 
#define ONFI_CMD_RST   0xFFU
 Reset. More...
 
#define ONFI_CMD_MUL_RD1   0x00U
 Multiplane Read (1st cycle) More...
 
#define ONFI_CMD_MUL_RD2   0x32U
 Multiplane Read (2nd cycle) More...
 
#define ONFI_CMD_CPBK_RD1   0x00U
 Copyback Read (1st cycle) More...
 
#define ONFI_CMD_CPBK_RD2   0x35U
 Copyback Read (2nd cycle) More...
 
#define ONFI_CMD_CHNG_RD_COL_ENHCD1   0x06U
 Change Read Column Enhanced (1st cycle) More...
 
#define ONFI_CMD_CHNG_RD_COL_ENHCD2   0xE0U
 Change Read Column Enhanced (2nd cycle) More...
 
#define ONFI_CMD_RD_CACHE_RND1   0x00U
 Read Cache Random (1st cycle) More...
 
#define ONFI_CMD_RD_CACHE_RND2   0x31U
 Read Cache Random (2nd cycle) More...
 
#define ONFI_CMD_RD_CACHE_SEQ   0x31U
 Read Cache Sequential. More...
 
#define ONFI_CMD_RD_CACHE_END   0x3FU
 Read Cache End. More...
 
#define ONFI_CMD_MUL_BLK_ERASE1   0x60U
 Multiplane Block Erase (1st cycle) More...
 
#define ONFI_CMD_MUL_BLK_ERASE2   0xD1U
 Multiplane Block Erase (2nd cycle) More...
 
#define ONFI_CMD_RD_STS_ENHCD   0x78U
 Read Status Enhanced. More...
 
#define ONFI_CMD_BLK_ERASE_INTRLVD2   0xD1U
 Block Erase Interleaved (2nd cycle) More...
 
#define ONFI_CMD_MUL_PG_PROG1   0x80U
 Multiplane Page Program (1st cycle) More...
 
#define ONFI_CMD_MUL_PG_PROG2   0x11U
 Multiplane Page Program (2nd cycle) More...
 
#define ONFI_CMD_PG_CACHE_PROG1   0x80U
 Page Cache Program (1st cycle) More...
 
#define ONFI_CMD_PG_CACHE_PROG2   0x15U
 Page Cache Program (2nd cycle) More...
 
#define ONFI_CMD_CPBK_PROG1   0x85U
 Copyback Program (1st cycle) More...
 
#define ONFI_CMD_CPBK_PROG2   0x10U
 Copyback Program (2nd cycle) More...
 
#define ONFI_CMD_MUL_CPBK_PROG1   0x85U
 Multiplane Copyback Program (1st cycle) More...
 
#define ONFI_CMD_MUL_CPBK_PROG2   0x10U
 Multiplane Copyback Program (2nd cycle) More...
 
#define ONFI_CMD_SMALL_DATA_MV1   0x85U
 Small Data Move (1st cycle) More...
 
#define ONFI_CMD_SMALL_DATA_MV2   0x10U
 Small Data Move (2nd cycle) More...
 
#define ONFI_CMD_CHNG_ROW_ADDR   0x85U
 Change Row Address. More...
 
#define ONFI_CMD_VOL_SEL   0xE1U
 Volume Select. More...
 
#define ONFI_CMD_ODT_CONF   0xE2U
 ODT Configure. More...
 
#define ONFI_CMD_RD_UNIQID   0xEDU
 Read Unique ID. More...
 
#define ONFI_CMD_GET_FEATURES   0xEEU
 Get Features. More...
 
#define ONFI_CMD_SET_FEATURES   0xEFU
 Set Features. More...
 
#define ONFI_CMD_LUN_GET_FEATURES   0xD4U
 LUN Get Features. More...
 
#define ONFI_CMD_LUN_SET_FEATURES   0xD5U
 LUN Set Features. More...
 
#define ONFI_CMD_RST_LUN   0xFAU
 Reset LUN. More...
 
#define ONFI_CMD_SYN_RST   0xFCU
 Synchronous Reset. More...
 
#define ONFI_STS_FAIL   0x01U
 FAIL. More...
 
#define ONFI_STS_FAILC   0x02U
 FAILC. More...
 
#define ONFI_STS_CSP   0x08U
 CSP. More...
 
#define ONFI_STS_VSP   0x10U
 VSP. More...
 
#define ONFI_STS_ARDY   0x20U
 ARDY. More...
 
#define ONFI_STS_RDY   0x40U
 RDY. More...
 
#define ONFI_STS_WP   0x80U
 WP_n. More...
 
#define ONFI_CRC_LEN   254U
 ONFI CRC Buf Length. More...
 
#define ONFI_PRM_PG_LEN   256U
 Parameter Page Length. More...
 
#define ONFI_MND_PRM_PGS   3U
 Number of mandatory parameter pages. More...
 
#define ONFI_SIG_LEN   4U
 Signature Length. More...
 
#define ONFI_CMD_INVALID   0x00U
 Invalid Command. More...
 
#define ONFI_READ_ID_LEN   4U
 ONFI ID length. More...
 
#define ONFI_READ_ID_ADDR   0x20U
 ONFI Read ID Address. More...
 
#define ONFI_READ_ID_ADDR_CYCLES   1U
 ONFI Read ID Address cycles. More...
 
#define ONFI_PRM_PG_ADDR_CYCLES   1U
 ONFI Read Parameter page address cycles. More...
 

Enumerations

enum  OnfiCommandList {
  READ = 0, MULTIPLANE_READ, COPYBACK_READ, CHANGE_READ_COLUMN,
  CHANGE_READ_COLUMN_ENHANCED, READ_CACHE_RANDOM, READ_CACHE_SEQUENTIAL, READ_CACHE_END,
  BLOCK_ERASE, MULTIPLANE_BLOCK_ERASE, READ_STATUS, READ_STATUS_ENHANCED,
  PAGE_PROGRAM, MULTIPLANE_PAGE_PROGRAM, PAGE_CACHE_PROGRAM, COPYBACK_PROGRAM,
  MULTIPLANE_COPYBACK_PROGRAM, SMALL_DATA_MOVE, CHANGE_WRITE_COLUMN, CHANGE_ROW_ADDR,
  READ_ID, VOLUME_SELECT, ODT_CONFIGURE, READ_PARAM_PAGE,
  READ_UNIQUE_ID, GET_FEATURES, SET_FEATURES, LUN_GET_FEATURES,
  LUN_SET_FEATURES, RESET_LUN, SYN_RESET, RESET,
  MAX_CMDS
}
 This enum defines the ONFI 3.1 commands. More...
 

Functions

u32 XNandPsu_OnfiParamPageCrc (u8 *ParamBuf, u32 StartOff, u32 Length)
 This function calculates ONFI parameter page CRC. More...