[ltp] X60s 4 GB RAM PAE only 3 recognized (64 Bit)

Uwe Brauer linux-thinkpad@linux-thinkpad.org
Sun, 23 Nov 2014 21:43:33 +0100


<html style="direction: ltr;">
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
    <style type="text/css">body p { margin-bottom: 0cm; margin-top: 0pt; } </style>
  </head>
  <body style="direction: ltr;"
    bidimailui-detected-decoding-type="UTF-8" bgcolor="#FFFFFF"
    text="#000000">
    <div class="moz-cite-prefix">On 11/23/2014 07:40 PM, Carl-Daniel
      Hailfinger wrote:<br>
    </div>
    <blockquote cite="mid:54722A26.80901@gmx.net" type="cite">
      <pre wrap="">On 13.11.2014 16:41, Paul Seelig wrote:
&gt; On 11/13/2014 09:41 AM, Uwe Brauer wrote:
&gt;&gt; Now I upgraded again to 4 GB RAM, but even with PAE enabled only 3 are
&gt;&gt; recognized. 
&gt;&gt;
&gt;&gt; Would it help to upgrade to a 64 bit version of Ubuntu?
&gt;&gt;
&gt; The X60s is a variant of the X60, which in turn is based on the same
&gt; chipset as the T60 Thinkpad generation. The chipset used in this
&gt; Thinkpad generation is only capable of addressing a maximum of 3GB RAM.
&gt;
&gt; This is a hardware imposed limit which cannot be circumvented by any
&gt; means, e.g., installation of a 64bit OS. See the more up to date German
&gt; <a class="moz-txt-link-freetext" href="http://thinkwiki.de/X60">http://thinkwiki.de/X60</a> for further details.

TL;DR: The 3 GB limit is a BIOS problem. With coreboot, you get 3.2-3.8 GB.</pre>
    </blockquote>
    thanks for pointing it out. coreboot means to fiddle around with the
    BIOS and <br>
    that is not something for the faint hearted like me who is afraid to
    screw up things beyond<br>
    recovery.<br>
    <br>
    I must also say that when I upgraded from 2.5 Giga to 4 (well to 3)
    I almost did not notice the <br>
    performance improvement, while I did when installing a SSD.<br>
    <br>
    BTW I just found this article about a coreboot equipped X60, but the
    machine posses also only 3 GB of <br>
    RAM<br>
<a class="moz-txt-link-freetext" href="http://www.linux-magazine.com/Online/Features/Gluglug-The-Free-Software-ThinkPad">http://www.linux-magazine.com/Online/Features/Gluglug-The-Free-Software-ThinkPad</a><br>
    <br>
    Uwe <br>
    <br>
    <blockquote cite="mid:54722A26.80901@gmx.net" type="cite">
      <pre wrap="">

While there is a hardware limit of 4 GB, the 3 GB limit claimed
everywhere is an artifact of the BIOS. Regardless of CPU address space,
the i945 memory bus uses 32 bit addresses (4 GB address space) and is
unable to hoist any memory to addresses above 4 GB. This means that even
if you have 4 GB RAM theoretically occupying the whole 32 bit address
space, quite a few large chunks of the address space will be used by
MMIO ranges of internal devices (PCI etc.) and on some machines, one
chunk of the memory will also be used as shared graphics memory.

In the end, the total usable memory by the operating system depends on
the resource allocator in the firmware. /proc/iomem has the details.
With stock T60/x60 BIOS, you get 3 GB usable RAM (look at the address
ranged marked "System RAM" in /proc/iomem). With coreboot (default
settings) on my T60 (128 MB ATI graphics), I get 3.2 GB usable RAM. If
you're willing to sacrifice Cardbus or Expresscard usability, you can
get an additional 128 MB usable RAM for each because the resource
allocator can then avoid reserving space for it. Even with optimal
resource allocation and just 64 MB graphics memory, having more than 3.8
GB usable RAM is impossible due to MMIO resource alignment constraints.

Regards,
Carl-Daniel

</pre>
    </blockquote>
    <br>
  </body>
</html>