⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hardwareadaptationlayer.h

📁 Nand Flash low driver。
💻 H
字号:


#ifndef _HARDWAREADAPTATIONLAYER_H_
#define _HARDWAREADAPTATIONLAYER_H_


#include "Common.h"
#include "HalUserDirective.h"
#define CHUNK_SIZE 528
#define CHUNK_DATA_SIZE 512
#define CHUNK_SPARE_SIZE 16


//typedef INT8 NFTL_Return;

//struct used to store device details
//**********************************************
typedef struct Device_Architecture
{
	UINT32 blockSize;
	UINT8 pagesInBlock;
	UINT8 manCode;
	UINT8 devCode;
	UINT16 numOfBlocks;
	UINT16 mainSize;
	UINT16 spareSize;
	UINT16 pageSize;
	UINT8 planNumber;
	UINT16 deviceFamily;
	UINT8 devicesNumber;
	UINT8 busWidth;
}DeviceArchitecture;
//******************************************************************/




NFTL_Return ReadPage(UINT16 BlockNumber, UINT8 PageNumber, UINT8 *buffer);
NFTL_Return WritePage(UINT16 BlockNumber, UINT8 PageNumber, UINT8 *buffer);
NFTL_Return CopyPage(UINT16 SourceBlockNumber, UINT8 SourcePageNumber,
	UINT32 DestinationBlockNumber, UINT8 DestinationPageNumber);
NFTL_Return GetPageStatus(UINT16 BlockNumber, UINT8 PageNumber, UINT8 *buffer);
NFTL_Return SetPageStatus(UINT16 BlockNumber, UINT8 PageNumber, UINT8 *buffer);
NFTL_Return BlockErase(UINT16 BlockNumber);
DeviceArchitecture GetDeviceArchitecture(void);
NFTL_Return RecognizeDevice(void);
 void CalculateAddress(UINT16 blockNumber, UINT8 pageNumber, UINT32 *returnAddress);
NFTL_Return HALInitialization(void);
NFTL_Return Unmount_HAL(void);
NFTL_Return FlushBuffer(void);

#define mCalculateAddress(BlockNumber,PageNumber) (((UINT32)(BlockNumber)<<14)+(((UINT32)(PageNumber))<<9))

#endif //_HARDWAREADAPTATIONLAYER_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -