<p>Subrata Banik has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/22868">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">soc/intel/skylake: Enable power button SMI when jumping to payload<br><br>Instead of enabling power button SMI unconditionally, add a boot state<br>handler to enable power button SMI just before jumping to<br>payload.<br><br>Change-Id: Ia4fe2694006baf24ed475c85aaffa6a0d2a6031d<br>Signed-off-by: Furquan Shaikh <furquan@chromium.org><br>Signed-off-by: Subrata Banik <subrata.banik@intel.com><br>---<br>M src/soc/intel/skylake/pmc.c<br>M src/soc/intel/skylake/smi.c<br>2 files changed, 16 insertions(+), 15 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/68/22868/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/src/soc/intel/skylake/pmc.c b/src/soc/intel/skylake/pmc.c<br>index ff84690..fe78bf7 100644<br>--- a/src/soc/intel/skylake/pmc.c<br>+++ b/src/soc/intel/skylake/pmc.c<br>@@ -15,6 +15,7 @@<br>  * GNU General Public License for more details.<br>  */<br> <br>+#include <bootstate.h><br> #include <chip.h><br> #include <console/console.h><br> #include <device/device.h><br>@@ -197,4 +198,19 @@<br>                       CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL);<br> }<br> <br>+static void pm1_enable_pwrbtn_smi(void *unused)<br>+{<br>+    /*<br>+    * Enable power button SMI only before jumping to payload. This ensures<br>+       * that:<br>+      * 1. Power button SMI is enabled only after coreboot is done.<br>+        * 2. On resume path, power button SMI is not enabled and thus avoids<br>+         * any shutdowns because of power button presses due to power button<br>+  * press in resume path.<br>+      */<br>+  pmc_update_pm1_enable(PWRBTN_EN);<br>+}<br>+<br>+BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_LOAD, BS_ON_EXIT, pm1_enable_pwrbtn_smi, NULL);<br>+<br> #endif<br>diff --git a/src/soc/intel/skylake/smi.c b/src/soc/intel/skylake/smi.c<br>index f11a9d8..67c3bb8 100644<br>--- a/src/soc/intel/skylake/smi.c<br>+++ b/src/soc/intel/skylake/smi.c<br>@@ -90,18 +90,3 @@<br>                "d" (APM_CNT)<br>     );<br> }<br>-<br>-static void pm1_enable_pwrbtn_smi(void *unused)<br>-{<br>-      /*<br>-    * Enable power button SMI only before jumping to payload. This ensures<br>-       * that:<br>-      * 1. Power button SMI is enabled only after coreboot is done.<br>-        * 2. On resume path, power button SMI is not enabled and thus avoids<br>-         * any shutdowns because of power button presses due to power button<br>-  * press in resume path.<br>-      */<br>-  pmc_update_pm1_enable(PWRBTN_EN);<br>-}<br>-<br>-BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_LOAD, BS_ON_EXIT, pm1_enable_pwrbtn_smi, NULL);<br></pre><p>To view, visit <a href="https://review.coreboot.org/22868">change 22868</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/22868"/><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: Ia4fe2694006baf24ed475c85aaffa6a0d2a6031d </div>
<div style="display:none"> Gerrit-Change-Number: 22868 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Subrata Banik <subrata.banik@intel.com> </div>