<p>Nico Huber has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/21823">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">nb/intel/sandybridge: Refactor dram_dimm_mapping()<br><br>Remove no-op statements and code-rephrasing comments, apply some cosmetic<br>changes to improve readability.<br><br>Change-Id: I124a6bc338c2589fab66ca91bf53139b4413d10b<br>Signed-off-by: Nico Huber <nico.h@gmx.de><br>---<br>M src/northbridge/intel/sandybridge/raminit_common.c<br>1 file changed, 20 insertions(+), 30 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/23/21823/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/src/northbridge/intel/sandybridge/raminit_common.c b/src/northbridge/intel/sandybridge/raminit_common.c<br>index 3e69f4d..b734036 100644<br>--- a/src/northbridge/intel/sandybridge/raminit_common.c<br>+++ b/src/northbridge/intel/sandybridge/raminit_common.c<br>@@ -295,49 +295,39 @@<br> <br> void dram_dimm_mapping(ramctr_timing *ctrl)<br> {<br>- u32 reg, val32;<br>       int channel;<br>  dimm_info *info = &ctrl->info;<br> <br>      FOR_ALL_CHANNELS {<br>-           dimm_attr *dimmA = 0;<br>-                dimm_attr *dimmB = 0;<br>-                reg = 0;<br>-             val32 = 0;<br>+           dimm_attr *dimmA, *dimmB;<br>+            u32 reg = 0;<br>+<br>               if (info->dimm[channel][0].size_mb >=<br>               info->dimm[channel][1].size_mb) {<br>-                     // dimm 0 is bigger, set it to dimmA<br>                  dimmA = &info->dimm[channel][0];<br>                       dimmB = &info->dimm[channel][1];<br>-                      reg |= (0 << 16);<br>+                      reg |= 0 << 16;<br>                 } else {<br>-                     // dimm 1 is bigger, set it to dimmA<br>                  dimmA = &info->dimm[channel][1];<br>                       dimmB = &info->dimm[channel][0];<br>-                      reg |= (1 << 16);<br>+                      reg |= 1 << 16;<br>                 }<br>-            // dimmA<br>-             if (dimmA && (dimmA->ranks > 0)) {<br>-                     val32 = dimmA->size_mb / 256;<br>-                     reg = (reg & ~0xff) | val32;<br>-                     val32 = dimmA->ranks - 1;<br>-                 reg = (reg & ~0x20000) | (val32 << 17);<br>-                    val32 = (dimmA->width / 8) - 1;<br>-                   reg = (reg & ~0x80000) | (val32 << 19);<br>-            }<br>-            // dimmB<br>-             if (dimmB && (dimmB->ranks > 0)) {<br>-                     val32 = dimmB->size_mb / 256;<br>-                     reg = (reg & ~0xff00) | (val32 << 8);<br>-                      val32 = dimmB->ranks - 1;<br>-                 reg = (reg & ~0x40000) | (val32 << 18);<br>-                    val32 = (dimmB->width / 8) - 1;<br>-                   reg = (reg & ~0x100000) | (val32 << 20);<br>-           }<br>-            reg = (reg & ~0x200000) | (1 << 21);  // rank interleave<br>-           reg = (reg & ~0x400000) | (1 << 22);  // enhanced interleave<br> <br>-            // Save MAD-DIMM register<br>+            if (dimmA && (dimmA->ranks > 0)) {<br>+                     reg |= dimmA->size_mb / 256;<br>+                      reg |= (dimmA->ranks - 1) << 17;<br>+                    reg |= (dimmA->width / 8 - 1) << 19;<br>+                }<br>+<br>+         if (dimmB && (dimmB->ranks > 0)) {<br>+                     reg |= (dimmB->size_mb / 256) << 8;<br>+                 reg |= (dimmB->ranks - 1) << 18;<br>+                    reg |= (dimmB->width / 8 - 1) << 20;<br>+                }<br>+<br>+         reg |= 1 << 21; /* rank interleave */<br>+          reg |= 1 << 22; /* enhanced interleave */<br>+<br>            if ((dimmA && (dimmA->ranks > 0))<br>                   || (dimmB && (dimmB->ranks > 0))) {<br>                         ctrl->mad_dimm[channel] = reg;<br></pre><p>To view, visit <a href="https://review.coreboot.org/21823">change 21823</a>. To unsubscribe, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/21823"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I124a6bc338c2589fab66ca91bf53139b4413d10b </div>
<div style="display:none"> Gerrit-Change-Number: 21823 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Nico Huber <nico.h@gmx.de> </div>