38 #define EBI_BASE_ADDR 0x60000000 39 #define EBI_MAX_SIZE 0x20000 40 #define EBI_TIMEOUT_COUNT 0x10000 43 #define EBI_BUSWIDTH_8BIT 8 44 #define EBI_BUSWIDTH_16BIT 16 49 #define EBI_MCLKDIV_1 0 50 #define EBI_MCLKDIV_2 1 51 #define EBI_MCLKDIV_4 2 52 #define EBI_MCLKDIV_8 3 53 #define EBI_MCLKDIV_16 4 54 #define EBI_MCLKDIV_32 5 59 #define EBI_TIMING_FASTEST 0x0 60 #define EBI_TIMING_VERYFAST 0x1 61 #define EBI_TIMING_FAST 0x2 62 #define EBI_TIMING_NORMAL 0x3 63 #define EBI_TIMING_SLOW 0x4 64 #define EBI_TIMING_VERYSLOW 0x5 65 #define EBI_TIMING_SLOWEST 0x6 85 #define EBI_READ_DATA8(Addr) *((volatile unsigned char *)(EBI_BASE_ADDR+Addr)) 94 #define EBI_WRITE_DATA8(Addr, Data) *((volatile unsigned char *)(EBI_BASE_ADDR+Addr))=Data 102 #define EBI_READ_DATA16(Addr) *((volatile unsigned short *)(EBI_BASE_ADDR+Addr)) 111 #define EBI_WRITE_DATA16(Addr, Data) *((volatile unsigned short *)(EBI_BASE_ADDR+Addr))=Data 119 #define EBI_READ_DATA32(Addr) *((volatile unsigned int *)(EBI_BASE_ADDR+Addr)) 128 #define EBI_WRITE_DATA32(Addr, Data) *((volatile unsigned int *)(EBI_BASE_ADDR+Addr))=Data 134 void EBI_Open(uint32_t u32Bank, uint32_t u32DataWidth, uint32_t u32TimingClass, uint32_t u32BusMode, uint32_t u32CSActiveLevel);
136 void EBI_SetBusTiming(uint32_t u32Bank, uint32_t u32TimingConfig, uint32_t u32MclkDiv);
void EBI_Open(uint32_t u32Bank, uint32_t u32DataWidth, uint32_t u32TimingClass, uint32_t u32BusMode, uint32_t u32CSActiveLevel)
Initialize and enable EBI.
void EBI_Close(uint8_t u32Bank)
Disable EBI.
void EBI_SetBusTiming(uint32_t u32Bank, uint32_t u32TimingConfig, uint32_t u32MclkDiv)
Set EBI bus timings.