Re: memory on ARM
hong zhang <[email protected]> Fri, 28 Jan 2011 22:05:57 -0800 (PST)
| Newsgroups | gmane.linux.ports.arm.general |
|---|---|
| Message-ID | <[email protected]> |
> > > > My TI board has two memory ports at 0x80000000 and > 0xC0000000. > > 1024Mbytes DDR2 connects at port 0x80000000 and > nothing at 0xC000000. > > I assume Linux should not count any thing if > 128M@0xC000000 in kernel > > command line. > > Linux does not test the presence of memory. That's > the job of the boot > loader to report to the kernel where memory actually is. > > If you tell it that there's memory present it will try to > use it. The > command line overrides what the boot loader tells the > kernel because > it is assumed that whoever created the command line knows > what they're > doing. > > > Problems: > > > > 1. Boot log ignores 128M@0xC000000, but total memory > is Memory: "1102MB = > > 1102MB total NOT 1024M". > > That's because you've told it that there's 1024M + 128M, > and it's claimed > 50MB from that for VRAM. But kernel says ignoring 128M@0xC0000000. That means kernel knows physical memory 128M@0xC0000000 is not presented and ignores it. Therefore, total memory should not count it. But it does. > > 2. Truncating RAM at 80000000-bfffffff to -afffffff > (vmalloc region > > overlap). It says it only gets 768M NOT > 124M. > > Correct. You can't fill memory completely as that > leaves no space for > other purposes - such as mapping devices. If you want > to use that > additional memory you need to turn on highmem support. >