谷歌上有很多关于这个问题的帖子,但我已经尝试了所有解决方案,但它们对我不起作用,所以我在这里发布......
我正在使用 AT91BootStarp 3.5.9 和 linux 内核 3.6.9。我的问题是 Linux 不使用第二个内存库(EBI_CS1 上的 128 MB 映射到 0x20000000)。
内存映射如下: 0x70000000 => 0xc0000000 (128 MB - DDRSDRC0) 0x20000000 => 0xc8000000 (128 MB - EBI_CS1)
根据 ATMEL 评估(用户)板。
启动时我看到这条消息:“忽略 70000000-77ffffff 处的 RAM(vmalloc 区域重叠)”。
我已经启用了 SparseMem 并尝试了发布在以下位置的补丁: http://blog.linuxconsulting.ro/2010/05/...-with.html
我已经在 AT91Bootstrap 中检查并验证了我的 DDR2 初始化,并且在 Bootstrap 中没有看到任何问题。测试了两个内存条,没有发现任何问题。
我已将 uBoot 启动参数添加为:
mem= mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootdelay=2 rootwait=1
当我启动时,我收到以下警告,并且主板配置为 128 MB,而不是 256 MB。
忽略 70000000-77ffffff 处的 RAM(vmalloc 区域重叠)。
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9M10G45-EK
Ignoring RAM at 70000000-77ffffff (vmalloc region overlap).
Memory policy: ECC disabled, Data cache writeback
AT91: Detected soc type: at91sam9g45
AT91: Detected soc subtype: Unknown
AT91: sram at 0x300000 of 0x10000 mapped at 0xfef68000
Clocks: CPU 400 MHz, master 133 MHz, main 12.000 MHz
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: mem=128M@0x20000000 mem=128M@0x70000000 console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootdelay=2 rootwait=1
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 124424k/124424k available, 6648k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0xc0008000 - 0xc04d5f18 (4920 kB)
.init : 0xc04d6000 - 0xc050022c ( 169 kB)
.data : 0xc0502000 - 0xc05345a0 ( 202 kB)
.bss : 0xc05345c4 - 0xc055711c ( 139 kB)
NR_IRQS:16 nr_irqs:16 16
AT91: 160 gpio irqs in 5 banks
sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
Console: colour dummy device 80x30