HAOUAS Elyes has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/50660 )
Change subject: nb/intel/i945/raminit: Set dual_channel if the 2nd channel is populated ......................................................................
nb/intel/i945/raminit: Set dual_channel if the 2nd channel is populated
The board may support dual channel mode, but populated in singel channel mode. So, code 'sysinfo->dual_channel' to true only if the 2nd channel is populated.
Change-Id: Ie0fd36ca3b3d79e57a8a1dbac4f2053c1e96d6ef Signed-off-by: Elyes HAOUAS ehaouas@noos.fr --- M src/northbridge/intel/i945/raminit.c 1 file changed, 5 insertions(+), 2 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/60/50660/1
diff --git a/src/northbridge/intel/i945/raminit.c b/src/northbridge/intel/i945/raminit.c index 40229f46..9067895 100644 --- a/src/northbridge/intel/i945/raminit.c +++ b/src/northbridge/intel/i945/raminit.c @@ -311,10 +311,8 @@
printk(BIOS_DEBUG, "This mainboard supports "); if (sdram_capabilities_dual_channel()) { - sysinfo->dual_channel = true; printk(BIOS_DEBUG, "Dual Channel Operation.\n"); } else { - sysinfo->dual_channel = false; printk(BIOS_DEBUG, "only Single Channel Operation.\n"); }
@@ -455,6 +453,11 @@ if (!dimm_mask) die("No memory installed.\n");
+ if (dimm_mask >> 2) + sysinfo->dual_channel = true; + else + sysinfo->dual_channel = false; + if (!(dimm_mask & ((1 << DIMM_SOCKETS) - 1))) /* FIXME: Possibly does not boot in this case */ printk(BIOS_INFO, "Channel 0 has no memory populated.\n");