Micron MT29F NAND driver
|
00001 /******************************************************************************* 00002 00003 Filename: nand_hw_if.h 00004 Description: Header file for hardware NAND interface 00005 00006 © 2012 Micron Technology, Inc. All Rights Reserved 00007 00008 You have a license to reproduce, display, perform, produce derivative works of, 00009 and distribute (in original or modified form) the Program, provided that you 00010 explicitly agree to the following disclaimer: 00011 00012 THIS PROGRAM IS PROVIDED "AS IT IS" WITHOUT WARRANTY OF ANY KIND, EITHER 00013 EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTY 00014 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK 00015 AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 00016 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 00017 REPAIR OR CORRECTION. 00018 00019 ******************************************************************************** 00020 00021 Version History. 00022 00023 Ver. No Date Comments 00024 00025 First release 1.0 07/2012 00026 00027 *******************************************************************************/ 00028 00029 #include "common.h" 00030 00031 /****************************************************************************** 00032 * USER SETTINGS AREA 00033 *****************************************************************************/ 00034 00035 /* support x16 NAND devices */ 00036 //#define BUS_WIDTH_16BIT; 00037 00038 /****************************************************************************** 00039 * END OF USER SETTINGS AREA 00040 * (Please do not modify the following lines) 00041 *****************************************************************************/ 00042 00043 /* support ASYNC mode */ 00044 #define ASYNC_MODE 00045 00046 /* define bus width */ 00047 #ifndef BUS_WIDTH_16BIT 00048 typedef MT_uint8 bus_t; 00049 #else 00050 typedef MT_uint16 bus_t; 00051 #endif 00052 00053 #ifdef ASYNC_MODE 00054 00060 void PLATFORM_Init(); 00061 00066 void PLATFORM_Open(void); 00067 00072 void PLATFORM_SendCmd(bus_t ubCommand); 00073 00078 void PLATFORM_SendAddr(bus_t ubAddress); 00079 00084 void PLATFORM_SendData(bus_t data); 00085 00090 bus_t PLATFORM_ReadData(void); 00091 00096 void PLATFORM_SetWriteProtect(void); 00097 00102 void PLATFORM_UnsetWriteProtect(void); 00103 00108 void PLATFORM_Wait(int microseconds); 00109 00114 void PLATFORM_Close(void); 00115 00116 #endif