Re: [coreboot] imb-a180 won't boot from single DIMM 0

2014-05-29 Thread Mark C. Mason


Yes, that worked.  Thank you so much!

Seems obvious in restrspect.
:-)

Mark Mason
Engineering Design Team


Mark C. Mason [mailto:m...@edt.com] wrote:

]Hey Scott, we're working with a design where only DIMM 0 is present.
]Do you happen to know where AMD excludes the out-of-place dimm?
]
]Thanks,
]Mark

Hello Mark,

I think it might be in mmExcludeDimm.c, or maybe
the caller of one of the functions in that file.
I remember finding it a few years ago and it
wasn't easy. The good news is that you shouldn't
have to modify the agesa code. The solution might
be to change the buildOpts.c line:

NUMBER_OF_DIMMS_SUPPORTED (ANY_SOCKET, ANY_CHANNEL, 2)

from 2 to 1. Once you do this, update spdAddrLookup
in devicetree.cb to match.
Thanks,
Scott



--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


[coreboot] imb-a180 won't boot from single DIMM 0

2014-05-28 Thread Mark C. Mason


Is there a straightforward way to get an IMB-A180 to boot with a single
DIMM in slot 0?  It boots fine in slot 1.  I've looked through the code
at length, and thought it configures the dimm, it fails in

coreboot/src/vendorcode/amd/agesa/Proc/Mem/Main/KB/mmflowKB.c

  //
  // If there is no dimm on the system, do fatal exit
  //
  if (NBPtr[BSP_DIE].RefPtr-SysLimit == 0) {
PutEventLog (AGESA_FATAL, MEM_ERROR_NO_DIMM_FOUND_ON_SYSTEM, 0, 0, 
0, 0, (MemMainPtr-MemPtr-StdHeader));

return AGESA_FATAL;
  }

Even though it has detected and configured the dimm in slot 0.
Again, this does work with slot 1.

Many thanks,

Mark Mason
Engineering Design Team

--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] imb-a180 won't boot from single DIMM 0

2014-05-28 Thread Scott Duplichan
Mark C. Mason [mailto:m...@edt.com] wrote:

]Is there a straightforward way to get an IMB-A180 to boot with a single
]DIMM in slot 0?  It boots fine in slot 1.  I've looked through the code
]at length, and thought it configures the dimm, it fails in
]
]coreboot/src/vendorcode/amd/agesa/Proc/Mem/Main/KB/mmflowKB.c
]
]   //
]   // If there is no dimm on the system, do fatal exit
]   //
]   if (NBPtr[BSP_DIE].RefPtr-SysLimit == 0) {
] PutEventLog (AGESA_FATAL, MEM_ERROR_NO_DIMM_FOUND_ON_SYSTEM, 0, 0, 
]0, 0, (MemMainPtr-MemPtr-StdHeader));
] return AGESA_FATAL;
]   }
]
]Even though it has detected and configured the dimm in slot 0.
]Again, this does work with slot 1.
]
]Many thanks,
]
]Mark Mason
]Engineering Design Team

A few years ago the agesa code was changed to make
the DIMM population order rules a requirement rather
than a recommendation. This is a BKDG requirement.
Agesa excludes the out of place DIMM. If it is the
only DIMM in the system, then the error logic will
report no DIMM installed. This might be what you
are seeing. There may be an agesa warning for this
that isn't getting reported. The DIMM population
order rules are related to signal integrity and are
explained in the BKDG.
Thanks,
Scott



-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot