<p>Nicola Corna has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/27178">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">sb/intel/common/firmware: Enable me_cleaner for Nehalem<br><br>Recent patches in coreboot have fixed the freeze issues related to the<br>use of me_cleaner on Nehalem.<br><br>However, at least on the Lenovo X201, with me_cleaner some PCIe devices<br>(like the SATA and USB controllers) disappear. In particular, setting<br>the AltMeDisable bit ("-S" or "-s" flag) makes them disappear<br>completely, while unsetting it makes them disappear only during cold<br>boots.<br><br>This kind of behaviour was already observed by Youness Alaoui on the<br>Purism Librem laptops ([1]), and it seems related to some required<br>board-specific PCIe configuration in the ME's MFS partition.<br><br>For this reason, on the Lenovo X201, "-w EFFS" has been added to the<br>me_cleaner arguments, which whitelists the MFS-equivalent partition for<br>ME generation 2. This fixes all the issues, and the PCIe devices work as<br>expected.<br><br>[1] https://puri.sm/posts/deep-dive-into-intel-me-disablement/<br><br>Change-Id: Ie77a80d2cb4945cf1c984bdb0fb1cc2f18e82ebc<br>---<br>M src/mainboard/lenovo/x201/Kconfig<br>M src/southbridge/intel/common/firmware/Kconfig<br>2 files changed, 8 insertions(+), 1 deletion(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/78/27178/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/mainboard/lenovo/x201/Kconfig b/src/mainboard/lenovo/x201/Kconfig</span><br><span>index 2351209..a689bbc 100644</span><br><span>--- a/src/mainboard/lenovo/x201/Kconfig</span><br><span>+++ b/src/mainboard/lenovo/x201/Kconfig</span><br><span>@@ -48,4 +48,10 @@</span><br><span>   int</span><br><span>  default 36</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+# Without the Intel ME's EFFS partition some PCIe devices (like the USB and SATA</span><br><span style="color: hsl(120, 100%, 40%);">+# controllers) don't work as expected</span><br><span style="color: hsl(120, 100%, 40%);">+config ME_CLEANER_ARGS</span><br><span style="color: hsl(120, 100%, 40%);">+       string</span><br><span style="color: hsl(120, 100%, 40%);">+        default "-S -w EFFS"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> endif</span><br><span>diff --git a/src/southbridge/intel/common/firmware/Kconfig b/src/southbridge/intel/common/firmware/Kconfig</span><br><span>index 4b882bd..30c9aaf 100644</span><br><span>--- a/src/southbridge/intel/common/firmware/Kconfig</span><br><span>+++ b/src/southbridge/intel/common/firmware/Kconfig</span><br><span>@@ -73,7 +73,8 @@</span><br><span> </span><br><span> config USE_ME_CLEANER</span><br><span>  bool "Strip down the Intel ME/TXE firmware"</span><br><span style="color: hsl(0, 100%, 40%);">-   depends on HAVE_ME_BIN && (NORTHBRIDGE_INTEL_SANDYBRIDGE || \</span><br><span style="color: hsl(120, 100%, 40%);">+ depends on HAVE_ME_BIN && (NORTHBRIDGE_INTEL_NEHALEM || \</span><br><span style="color: hsl(120, 100%, 40%);">+             NORTHBRIDGE_INTEL_SANDYBRIDGE || \</span><br><span>           NORTHBRIDGE_INTEL_IVYBRIDGE || NORTHBRIDGE_INTEL_HASWELL || \</span><br><span>                SOC_INTEL_BROADWELL || SOC_INTEL_SKYLAKE || \</span><br><span>                SOC_INTEL_KABYLAKE || SOC_INTEL_BAYTRAIL || SOC_INTEL_BRASWELL)</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/27178">change 27178</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/27178"/><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: Ie77a80d2cb4945cf1c984bdb0fb1cc2f18e82ebc </div>
<div style="display:none"> Gerrit-Change-Number: 27178 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Nicola Corna <nicola@corna.info> </div>