<p>Subrata Banik has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/22973">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">soc/intel/{apollolake, cannonlake, common, skylake}: Add _soc_ prefix in weak function<br><br>This patch ensures all soc function name is having _soc_ prefix<br>in it.<br><br>TEST=Able to compile SMM common code for all supported SOC.<br><br>Change-Id: Iab1b2f51eaad87906e35dbb9e90272590974e145<br>Signed-off-by: Subrata Banik <subrata.banik@intel.com><br>---<br>M src/soc/intel/apollolake/smihandler.c<br>M src/soc/intel/cannonlake/smihandler.c<br>M src/soc/intel/common/block/include/intelblocks/smihandler.h<br>M src/soc/intel/common/block/smm/smihandler.c<br>M src/soc/intel/skylake/smihandler.c<br>5 files changed, 49 insertions(+), 33 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/73/22973/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/soc/intel/apollolake/smihandler.c b/src/soc/intel/apollolake/smihandler.c</span><br><span>index f42ae01..5b28db2 100644</span><br><span>--- a/src/soc/intel/apollolake/smihandler.c</span><br><span>+++ b/src/soc/intel/apollolake/smihandler.c</span><br><span>@@ -22,7 +22,7 @@</span><br><span> #include <soc/pci_devs.h></span><br><span> #include <soc/pm.h></span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-int smihandler_disable_busmaster(device_t dev)</span><br><span style="color: hsl(120, 100%, 40%);">+int smihandler_soc_disable_busmaster(device_t dev)</span><br><span> {</span><br><span>  if (dev == PCH_DEV_PMC)</span><br><span>              return 0;</span><br><span>@@ -35,7 +35,7 @@</span><br><span> }</span><br><span> </span><br><span> /* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(0, 100%, 40%);">-uint32_t smi_handler_get_sci_mask(void)</span><br><span style="color: hsl(120, 100%, 40%);">+uint32_t smihandler_soc_get_sci_mask(void)</span><br><span> {</span><br><span>        uint32_t sci_mask =</span><br><span>          SMI_HANDLER_SCI_EN(APM_SMI_STS) |</span><br><span>diff --git a/src/soc/intel/cannonlake/smihandler.c b/src/soc/intel/cannonlake/smihandler.c</span><br><span>index 6c57d4a..f40e81d 100644</span><br><span>--- a/src/soc/intel/cannonlake/smihandler.c</span><br><span>+++ b/src/soc/intel/cannonlake/smihandler.c</span><br><span>@@ -25,7 +25,7 @@</span><br><span>       return &em64t101_smm_ops;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void smihandler_check_illegal_access(uint32_t tco_sts)</span><br><span style="color: hsl(120, 100%, 40%);">+void smihandler_soc_check_illegal_access(uint32_t tco_sts)</span><br><span> {</span><br><span>        if (!((tco_sts & (1 << 8)) && IS_ENABLED(CONFIG_SPI_FLASH_SMM)</span><br><span>                     && fast_spi_wpd_status()))</span><br><span>@@ -46,7 +46,7 @@</span><br><span> }</span><br><span> </span><br><span> /* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(0, 100%, 40%);">-uint32_t smi_handler_get_sci_mask(void)</span><br><span style="color: hsl(120, 100%, 40%);">+uint32_t smihandler_soc_get_sci_mask(void)</span><br><span> {</span><br><span>       uint32_t sci_mask =</span><br><span>          SMI_HANDLER_SCI_EN(APM_STS_BIT) |</span><br><span>diff --git a/src/soc/intel/common/block/include/intelblocks/smihandler.h b/src/soc/intel/common/block/include/intelblocks/smihandler.h</span><br><span>index f1e3ecf..df2d17c 100644</span><br><span>--- a/src/soc/intel/common/block/include/intelblocks/smihandler.h</span><br><span>+++ b/src/soc/intel/common/block/include/intelblocks/smihandler.h</span><br><span>@@ -62,9 +62,6 @@</span><br><span> </span><br><span> #define SMI_HANDLER_SCI_EN(__bit) (1 << (__bit))</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-/* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(0, 100%, 40%);">-uint32_t smi_handler_get_sci_mask(void);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> /*</span><br><span>  * This function should be implemented in SOC specific code to handle</span><br><span>  * the SMI event on SLP_EN. The default functionality is provided in</span><br><span>@@ -143,23 +140,31 @@</span><br><span>  */</span><br><span> void smihandler_southbridge_espi(</span><br><span>       const struct smm_save_state_ops *save_state_ops);</span><br><span style="color: hsl(0, 100%, 40%);">-/*</span><br><span style="color: hsl(0, 100%, 40%);">- * This function returns a 1 or 0 depending on whether disable_busmaster</span><br><span style="color: hsl(0, 100%, 40%);">- * needs to be done for the specified device on S5 entry</span><br><span style="color: hsl(0, 100%, 40%);">- */</span><br><span style="color: hsl(0, 100%, 40%);">-int smihandler_disable_busmaster(device_t dev);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-/*</span><br><span style="color: hsl(0, 100%, 40%);">- * SoC needs to implement the mechanism to know if an illegal attempt</span><br><span style="color: hsl(0, 100%, 40%);">- * has been made to write to the BIOS area.</span><br><span style="color: hsl(0, 100%, 40%);">- */</span><br><span style="color: hsl(0, 100%, 40%);">-void smihandler_check_illegal_access(uint32_t tco_sts);</span><br><span> </span><br><span> /*</span><br><span>  * Returns gnvs pointer within SMM context</span><br><span>  */</span><br><span> struct global_nvs_t *smm_get_gnvs(void);</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* SoC overrides. */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/*</span><br><span style="color: hsl(120, 100%, 40%);">+ * This function returns a 1 or 0 depending on whether disable_busmaster</span><br><span style="color: hsl(120, 100%, 40%);">+ * needs to be done for the specified device on S5 entry</span><br><span style="color: hsl(120, 100%, 40%);">+ */</span><br><span style="color: hsl(120, 100%, 40%);">+int smihandler_soc_disable_busmaster(device_t dev);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(120, 100%, 40%);">+uint32_t smihandler_soc_get_sci_mask(void);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/*</span><br><span style="color: hsl(120, 100%, 40%);">+ * SoC needs to implement the mechanism to know if an illegal attempt</span><br><span style="color: hsl(120, 100%, 40%);">+ * has been made to write to the BIOS area.</span><br><span style="color: hsl(120, 100%, 40%);">+ */</span><br><span style="color: hsl(120, 100%, 40%);">+void smihandler_soc_check_illegal_access(uint32_t tco_sts);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* Mainboard overrides. */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /* Mainboard handler for GPI SMIs */</span><br><span> void mainboard_smi_gpi_handler(const struct gpi_status *sts);</span><br><span> </span><br><span>diff --git a/src/soc/intel/common/block/smm/smihandler.c b/src/soc/intel/common/block/smm/smihandler.c</span><br><span>index 9a4ee7c..5cf0ccd 100644</span><br><span>--- a/src/soc/intel/common/block/smm/smihandler.c</span><br><span>+++ b/src/soc/intel/common/block/smm/smihandler.c</span><br><span>@@ -2,7 +2,7 @@</span><br><span>  * This file is part of the coreboot project.</span><br><span>  *</span><br><span>  * Copyright (C) 2013 Google Inc.</span><br><span style="color: hsl(0, 100%, 40%);">- * Copyright (C) 2015-2016 Intel Corp.</span><br><span style="color: hsl(120, 100%, 40%);">+ * Copyright (C) 2015-2017 Intel Corp.</span><br><span>  *</span><br><span>  * This program is free software; you can redistribute it and/or modify</span><br><span>  * it under the terms of the GNU General Public License as published by</span><br><span>@@ -38,13 +38,13 @@</span><br><span> </span><br><span> /* SoC overrides. */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-__attribute__((weak)) int smihandler_disable_busmaster(device_t dev)</span><br><span style="color: hsl(120, 100%, 40%);">+__attribute__((weak)) int smihandler_soc_disable_busmaster(device_t dev)</span><br><span> {</span><br><span>    return 1;</span><br><span> }</span><br><span> </span><br><span> /* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(0, 100%, 40%);">-__attribute__((weak)) uint32_t smi_handler_get_sci_mask(void)</span><br><span style="color: hsl(120, 100%, 40%);">+__attribute__((weak)) uint32_t smihandler_soc_get_sci_mask(void)</span><br><span> {</span><br><span>        return 0; /* No valid SCI mask for SMI handler */</span><br><span> }</span><br><span>@@ -53,11 +53,27 @@</span><br><span>  * Needs to implement the mechanism to know if an illegal attempt</span><br><span>  * has been made to write to the BIOS area.</span><br><span>  */</span><br><span style="color: hsl(0, 100%, 40%);">-__attribute__((weak)) void smihandler_check_illegal_access(uint32_t tco_sts)</span><br><span style="color: hsl(120, 100%, 40%);">+__attribute__((weak)) void smihandler_soc_check_illegal_access(</span><br><span style="color: hsl(120, 100%, 40%);">+  uint32_t tco_sts)</span><br><span> {</span><br><span>       return;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* Mainboard overrides. */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+__attribute__((weak)) void mainboard_smi_gpi_handler(const struct</span><br><span style="color: hsl(120, 100%, 40%);">+     gpi_status *sts)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+   return;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+__attribute__((weak)) void mainboard_smi_espi_handler(void)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+  return;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* Common Functions */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> static void *find_save_state(const struct smm_save_state_ops *save_state_ops,</span><br><span>      int cmd)</span><br><span> {</span><br><span>@@ -112,7 +128,7 @@</span><br><span>                  u32 reg32;</span><br><span>                   device_t dev = PCI_DEV(bus, slot, func);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-                    if (!smihandler_disable_busmaster(dev))</span><br><span style="color: hsl(120, 100%, 40%);">+                       if (!smihandler_soc_disable_busmaster(dev))</span><br><span>                          continue;</span><br><span>                    val = pci_read_config32(dev, PCI_VENDOR_ID);</span><br><span> </span><br><span>@@ -360,7 +376,7 @@</span><br><span>       if (!tco_sts)</span><br><span>                return;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     smihandler_check_illegal_access(tco_sts);</span><br><span style="color: hsl(120, 100%, 40%);">+     smihandler_soc_check_illegal_access(tco_sts);</span><br><span> </span><br><span>    if (tco_sts & TCO_TIMEOUT) { /* TIMEOUT */</span><br><span>               /* Handle TCO timeout */</span><br><span>@@ -381,9 +397,6 @@</span><br><span>       printk(BIOS_DEBUG, "Periodic SMI.\n");</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void __attribute__((weak))</span><br><span style="color: hsl(0, 100%, 40%);">-mainboard_smi_gpi_handler(const struct gpi_status *sts) { }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> void smihandler_southbridge_gpi(</span><br><span>   const struct smm_save_state_ops *save_state_ops)</span><br><span> {</span><br><span>@@ -396,8 +409,6 @@</span><br><span>  gpi_clear_get_smi_status(&smi_sts);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void __attribute__((weak)) mainboard_smi_espi_handler(void) { }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> void smihandler_southbridge_espi(</span><br><span>         const struct smm_save_state_ops *save_state_ops)</span><br><span> {</span><br><span>@@ -419,10 +430,10 @@</span><br><span>        /*</span><br><span>    * In SCI mode, execute only those SMI handlers that have</span><br><span>     * declared themselves as available for service in that mode</span><br><span style="color: hsl(0, 100%, 40%);">-     * using smi_handler_get_sci_mask.</span><br><span style="color: hsl(120, 100%, 40%);">+     * using smihandler_soc_get_sci_mask.</span><br><span>         */</span><br><span>  if (pmc_read_pm1_control() & SCI_EN)</span><br><span style="color: hsl(0, 100%, 40%);">-                smi_sts &= smi_handler_get_sci_mask();</span><br><span style="color: hsl(120, 100%, 40%);">+            smi_sts &= smihandler_soc_get_sci_mask();</span><br><span> </span><br><span>    if (!smi_sts)</span><br><span>                return;</span><br><span>diff --git a/src/soc/intel/skylake/smihandler.c b/src/soc/intel/skylake/smihandler.c</span><br><span>index 6e0054b..e402ba5 100644</span><br><span>--- a/src/soc/intel/skylake/smihandler.c</span><br><span>+++ b/src/soc/intel/skylake/smihandler.c</span><br><span>@@ -25,7 +25,7 @@</span><br><span>     return &em64t101_smm_ops;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void smihandler_check_illegal_access(uint32_t tco_sts)</span><br><span style="color: hsl(120, 100%, 40%);">+void smihandler_soc_check_illegal_access(uint32_t tco_sts)</span><br><span> {</span><br><span>        if (!((tco_sts & (1 << 8)) && IS_ENABLED(CONFIG_SPI_FLASH_SMM)</span><br><span>                     && fast_spi_wpd_status()))</span><br><span>@@ -46,7 +46,7 @@</span><br><span> }</span><br><span> </span><br><span> /* SMI handlers that should be serviced in SCI mode too. */</span><br><span style="color: hsl(0, 100%, 40%);">-uint32_t smi_handler_get_sci_mask(void)</span><br><span style="color: hsl(120, 100%, 40%);">+uint32_t smihandler_soc_get_sci_mask(void)</span><br><span> {</span><br><span>       uint32_t sci_mask =</span><br><span>          SMI_HANDLER_SCI_EN(APM_STS_BIT) |</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/22973">change 22973</a>. To unsubscribe, or for help writing mail filters, 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/22973"/><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: Iab1b2f51eaad87906e35dbb9e90272590974e145 </div>
<div style="display:none"> Gerrit-Change-Number: 22973 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Subrata Banik <subrata.banik@intel.com> </div>