25 #define S3C_ADDR_BASE 0xF6000000
26
27 #ifndef __ASSEMBLY__
28 #define S3C_ADDR(x) ((void __iomem __force *)S3C_ADDR_BASE + (x))
29 #else
30 #define S3C_ADDR(x) (S3C_ADDR_BASE + (x))
31 #endif
32
33 #define S3C_VA_IRQ S3C_ADDR(0x00000000) /* irq controller(s) */
34 #define S3C_VA_SYS S3C_ADDR(0x00100000) /* system control */
35 #define S3C_VA_MEM S3C_ADDR(0x00200000) /* memory control */
36 #define S3C_VA_TIMER S3C_ADDR(0x00300000) /* timer block */
37 #define S3C_VA_WATCHDOG S3C_ADDR(0x00400000) /* watchdog */
38 #define S3C_VA_UART S3C_ADDR(0x01000000) /* UART */
SC2440作为32位的CPU,可以使用的地址范围为4GB,出去用于连接外设的1G地址空间外,还有一部分CPU内部寄存器的地址,剩下的地址空间没有使用。
寄存器地址范围处于48000000-5fffffff,在韦东山88页
存储器控制器所接的外设在该书的91页
可以知道NorFlash在00000000位置,处于Bank0位置,SDRAM处于BANK6,Bank7位置,为30000000开始,但是nandflash没有地址,因为他是由控制器控制读取的。