<p>Subrata Banik has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/21539">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">soc/intel/common: Add function to get soc reserved memory size<br><br>This patch ensures to consider soc reserved memory size while<br>allocating DRAM based resources.<br><br>Change-Id: I587a9c1ea44f2dbf67099fef03d0ff92bc44f242<br>Signed-off-by: Subrata Banik <subrata.banik@intel.com><br>---<br>M src/soc/intel/common/block/include/intelblocks/systemagent.h<br>M src/soc/intel/common/block/systemagent/systemagent.c<br>2 files changed, 16 insertions(+), 4 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/39/21539/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/src/soc/intel/common/block/include/intelblocks/systemagent.h b/src/soc/intel/common/block/include/intelblocks/systemagent.h<br>index 4ca19e6..f6b9a0b 100644<br>--- a/src/soc/intel/common/block/include/intelblocks/systemagent.h<br>+++ b/src/soc/intel/common/block/include/intelblocks/systemagent.h<br>@@ -99,5 +99,7 @@<br>  * struct sa_mmio_descriptor along with resource count.<br>  */<br> void soc_add_fixed_mmio_resources(struct device *dev, int *resource_cnt);<br>+/* SoC call to summarize all Intel Reserve MMIO size and report to SA */<br>+size_t soc_reversed_mmio_size(void);<br> <br> #endif        /* SOC_INTEL_COMMON_BLOCK_SA_H */<br>diff --git a/src/soc/intel/common/block/systemagent/systemagent.c b/src/soc/intel/common/block/systemagent/systemagent.c<br>index cb7af41..23e7984 100644<br>--- a/src/soc/intel/common/block/systemagent/systemagent.c<br>+++ b/src/soc/intel/common/block/systemagent/systemagent.c<br>@@ -36,6 +36,11 @@<br>        /* no-op */<br> }<br> <br>+__attribute__((weak)) size_t soc_reversed_mmio_size(void)<br>+{<br>+   return 0;<br>+}<br>+<br> /*<br>  * Add all known fixed MMIO ranges that hang off the host bridge/memory<br>  * controller device.<br>@@ -134,12 +139,16 @@<br> {<br>    uintptr_t base_k, touud_k;<br>    size_t dpr_size = 0, size_k;<br>+ size_t reserved_mmio_size;<br>    uint64_t sa_map_values[MAX_MAP_ENTRIES];<br>      uintptr_t top_of_ram;<br>         int index = *resource_count;<br> <br>       if (IS_ENABLED(CONFIG_SA_ENABLE_DPR))<br>                 dpr_size = sa_get_dpr_size();<br>+<br>+     /* Get SoC reserve memory size as per user selection */<br>+      reserved_mmio_size = soc_reversed_mmio_size();<br> <br>     top_of_ram = (uintptr_t)cbmem_top();<br> <br>@@ -155,13 +164,14 @@<br> <br>     sa_get_mem_map(dev, &sa_map_values[0]);<br> <br>-       /* top_of_ram -> TSEG - DPR */<br>+    /* top_of_ram -> TSEG - DPR - Intel Reserve Memory SIze*/<br>  base_k = top_of_ram;<br>- size_k = sa_map_values[SA_TSEG_REG] - dpr_size - base_k;<br>+     size_k = sa_map_values[SA_TSEG_REG] - dpr_size - base_k<br>+                              - reserved_mmio_size;<br>         mmio_resource(dev, index++, base_k / KiB, size_k / KiB);<br> <br>-  /* TSEG - DPR -> BGSM */<br>-  base_k = sa_map_values[SA_TSEG_REG] - dpr_size;<br>+      /* TSEG - DPR - Intel Reserve Memory SIze -> BGSM */<br>+      base_k = sa_map_values[SA_TSEG_REG] - dpr_size - reserved_mmio_size;<br>  size_k = sa_map_values[SA_BGSM_REG] - base_k;<br>         reserved_ram_resource(dev, index++, base_k / KiB, size_k / KiB);<br> <br></pre><p>To view, visit <a href="https://review.coreboot.org/21539">change 21539</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/21539"/><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: I587a9c1ea44f2dbf67099fef03d0ff92bc44f242 </div>
<div style="display:none"> Gerrit-Change-Number: 21539 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Subrata Banik <subrata.banik@intel.com> </div>