www.pudn.com > writemac.rar > dm643_flash.h


/* 
 *  Copyright 2003 by Spectrum Digital Incorporated. 
 *  All rights reserved. Property of Spectrum Digital Incorporated. 
 */ 
  
/* 
 *  ======== dm643_flash.h ======== 
 * 
 *  Interface for the AMD29LV033C Flash on the DM643 board 
 */ 
#ifndef DM643_FLASH_ 
#define DM643_FLASH_ 
 
#ifdef __cplusplus 
extern "C" { 
#endif 
 
#include  
 
/* Flash address definitions */ 
#define DM643_FLASH_BASE          0x90000000 
#define DM643_FLASH_SECTORSIZE    0x010000 
#define DM643_FLASH_SECTORS       0x8 
#define DM643_FLASH_PAGES         0x8 
#define DM643_FLASH_PAGESIZE      0x080000 
#define DM643_FLASH_SIZE          0x400000 
#define DM643_FLASH_CTL555        (DM643_FLASH_BASE + 0x555) 
#define DM643_FLASH_CTLAAA        (DM643_FLASH_BASE + 0xaaa) 
#define DM643_FLASH_SUPPORT       1 
  
/* Calculate the checksum of a data range in Flash */ 
Uint32 DM643_FLASH_checksum(Uint32 start, Uint32 length); 
 
/* Erase a segment of Flash memory */ 
void DM643_FLASH_erase(Uint32 start, Uint32 length); 
 
/* Read data from a range in Flash */ 
void DM643_FLASH_read(Uint32 src, Uint32 dst, Uint32 length); 
 
/* Write data to a data range in Flash */ 
void DM643_FLASH_write(Uint32 src, Uint32 dst, Uint32 length); 
 
#ifdef __cplusplus 
} 
#endif 
 
#endif