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

📄 nand.h

📁 Nand
💻 H
字号:
/**************************************************************************************
* 
*	Project Name : S3C6410 Validation
*
*	Copyright 2006 by Samsung Electronics, Inc.
*	All rights reserved.
*
*	Project Description :
*		This software is only for validating functions of the S3C6410.
*		Anybody can use this software without our permission.
*  
*--------------------------------------------------------------------------------------
* 
*	File Name : nand.h
*  
*	File Description : This file implements the API functons for Nand controller.
*
*	Author : Heemyung.noh
*	Dept. : AP Development Team
*	Created Date : 2007/02/02
*	Version : 0.1 
* 
*	History
*	- Created(Heemyung.noh 2007/02/02)
*  
**************************************************************************************/

#ifndef __NAND_H
#define __NAND_H

// chapter7 Nand Flash
#define NANDF_BASE		(0x70200000)
#define rNFCONF			(*(volatile unsigned *)(NANDF_BASE+0x00))		//NAND Flash configuration
#define rNFCONT			(*(volatile unsigned *)(NANDF_BASE+0x04))      	//NAND Flash control
#define rNFCMD			(*(volatile unsigned *)(NANDF_BASE+0x08))     		//NAND Flash command 
#define rNFADDR			(*(volatile unsigned *)(NANDF_BASE+0x0C))     	 	//NAND Flash address
#define rNFDATA			(*(volatile unsigned *)(NANDF_BASE+0x10))      	//NAND Flash data 
#define NFDATA			(NANDF_BASE+0x10)                        
#define rNFMECCD0		(*(volatile unsigned *)(NANDF_BASE+0x14))      	//NAND Flash ECC for Main 
#define rNFMECCD1		(*(volatile unsigned *)(NANDF_BASE+0x18))      	//NAND Flash ECC for Main 
#define rNFSECCD		(*(volatile unsigned *)(NANDF_BASE+0x1C))	  	//NAND Flash ECC for Spare Area
#define rNFSBLK 			(*(volatile unsigned *)(NANDF_BASE+0x20))		//NAND Flash programmable start block address
#define rNFEBLK 			(*(volatile unsigned *)(NANDF_BASE+0x24))	    	//NAND Flash programmable end block address     
#define rNFSTAT 			(*(volatile unsigned *)(NANDF_BASE+0x28))      	//NAND Flash operation status 
#define rNFECCERR0		(*(volatile unsigned *)(NANDF_BASE+0x2C))      	//NAND Flash ECC Error Status for I/O [7:0]
#define rNFECCERR1		(*(volatile unsigned *)(NANDF_BASE+0x30))      	//NAND Flash ECC Error Status for I/O [15:8]
#define rNFMECC0		(*(volatile unsigned *)(NANDF_BASE+0x34))      	//SLC or MLC NAND Flash ECC status
#define rNFMECC1		(*(volatile unsigned *)(NANDF_BASE+0x38))	    	//SLC or MLC NAND Flash ECC status	
#define rNFSECC 			(*(volatile unsigned *)(NANDF_BASE+0x3C))  		//NAND Flash ECC for I/O[15:0]
#define rNFMLCBITPT		(*(volatile unsigned *)(NANDF_BASE+0x40)) 		//NAND Flash 4-bit ECC Error Pattern for data[7:0]


void NF8_Init(void);
int NF8_ReadPage(u32 block,u32 page,u8 *buffer);
int NF8_IsBadBlock(u32 block);
void NF8_Init(void);

#endif /*__NAND_H*/

⌨️ 快捷键说明

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