📄 armmmutable.c
字号:
#include "Common.h"
#define TYPE_SECTION 0x00000002
#define TYPE_COARSE 0x00000001
#define TYPE_FINE 0x00000003
#define CACHABLE 0x00000008
#define BUFFERABLE 0x00000004
extern unsigned long pagetable[4096];
unsigned long const *ARM_MMUTableSetUp(void)
{
U32 i;
unsigned long *p = pagetable;
/* Map SDRAM as Vector Table */
*(p++) = ((0x8000000) | 0xC00 | TYPE_SECTION | CACHABLE | BUFFERABLE);
for(i=1; i<4096; i++)
{
if( i==2 || (i>=0xC0 && i<0x100))
*(p++) = ((i<<20) | 0xC00 | TYPE_SECTION ); /* Not cachable and bufferable for internal register and SyncFlash */
else
*(p++) = ((i<<20) | 0xC00 | TYPE_SECTION | CACHABLE | BUFFERABLE);
}
return pagetable;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -