nandps
Vitis Drivers API Documentation
XNandPsTag Struct Reference

The XNandPs driver instance data. More...

Data Fields

u32 IsReady
 Device is initialized and ready. More...
 
XNandPs_Config Config
 XNandPs_Config of current device. More...
 
XNandPs_Geometry Geometry
 Part geometry. More...
 
XNandPs_Features Features
 Features and Optional commands. More...
 
u32 CommandPhaseAddr
 NAND command phase address. More...
 
u32 DataPhaseAddr
 NAND Data phase address. More...
 
XNandPs_EccConfig EccConfig
 ECC configuration parameters. More...
 
XNandPs_BbtDesc BbtDesc
 Bad block table descriptor. More...
 
XNandPs_BbtDesc BbtMirrorDesc
 Mirror BBT descriptor. More...
 
XNandPs_BadBlockPattern BbPattern
 Bad block pattern to search. More...
 
u8 Bbt [XNANDPS_MAX_BLOCKS >> 2]
 Bad block table array. More...
 
u8 DataBuf [XNANDPS_MAX_PAGE_SIZE+XNANDPS_MAX_SPARE_SIZE]
 Data buffer for partial read/writes. More...
 
u8 * SpareBufPtr
 Pointer to store spare buffer. More...
 
u8 EccCalc [XNANDPS_MAX_SPARE_SIZE]
 Buffer for calculated ECC. More...
 
u8 EccCode [XNANDPS_MAX_SPARE_SIZE]
 Buffer for stored ECC. More...
 
XNandPs_EccMode EccMode
 ECC Mode. More...
 
int(* ReadPage )(struct XNandPsTag *InstancePtr, u8 *DstPtr)
 Read Page routine. More...
 
int(* WritePage )(struct XNandPsTag *InstancePtr, u8 *SrcPtr)
 Write Page routine. More...
 

Detailed Description

The XNandPs driver instance data.

The user is required to allocate a variable of this type for every flash device in the system. A pointer to a variable of this type is then passed to the driver API functions.

Field Documentation

XNandPs_BadBlockPattern XNandPsTag::BbPattern

Bad block pattern to search.

Referenced by XNandPs_InitBbtDesc().

u8 XNandPsTag::Bbt[XNANDPS_MAX_BLOCKS >> 2]

Bad block table array.

Referenced by XNandPs_IsBlockBad(), and XNandPs_MarkBlockBad().

XNandPs_BbtDesc XNandPsTag::BbtDesc

Bad block table descriptor.

Referenced by XNandPs_InitBbtDesc(), and XNandPs_ScanBbt().

XNandPs_BbtDesc XNandPsTag::BbtMirrorDesc

Mirror BBT descriptor.

Referenced by XNandPs_InitBbtDesc(), and XNandPs_ScanBbt().

u32 XNandPsTag::CommandPhaseAddr

NAND command phase address.

Referenced by XNandPs_SendCommand().

Data buffer for partial read/writes.

Referenced by XNandPs_CfgInitialize(), XNandPs_Read(), XNandPs_ReadCache(), XNandPs_Write(), and XNandPs_WriteCache().

u32 XNandPsTag::DataPhaseAddr
u8 XNandPsTag::EccCalc[XNANDPS_MAX_SPARE_SIZE]

Buffer for calculated ECC.

u8 XNandPsTag::EccCode[XNANDPS_MAX_SPARE_SIZE]

Buffer for stored ECC.

XNandPs_EccConfig XNandPsTag::EccConfig

ECC configuration parameters.

XNandPs_Features XNandPsTag::Features

Features and Optional commands.

Referenced by Onfi_NandInit(), and XNandPs_ReadCache().

int(* XNandPsTag::ReadPage)(struct XNandPsTag *InstancePtr, u8 *DstPtr)

Read Page routine.

Referenced by XNandPs_CfgInitialize(), XNandPs_Read(), and XNandPs_ReadCache().

u8* XNandPsTag::SpareBufPtr
int(* XNandPsTag::WritePage)(struct XNandPsTag *InstancePtr, u8 *SrcPtr)

Write Page routine.

Referenced by XNandPs_CfgInitialize(), XNandPs_Write(), and XNandPs_WriteCache().