📄 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 + -