After flashing the 7.1.91.3272 update with the patch for CVE-2017-5689, I ran into some problems: sleep wouldn’t work (it would initially seem to go to sleep, do the sleep-jingle etc but then cut all power, resulting in a dirty shutdown) and restart would result in power being cut turning back on. I suspected this was because I was on a modified version of the 1.42 BIOS that unlocks RAM speed, removes the WLAN whitelist, and exposes other advanced features, so I updated to the latest 1.43 BIOS, and then, without rebooting, to a similarly modified version of the 1.43 BIOS (so that at no point would the WLAN whitelist be triggered). The modified BIOS can be found here. Unfortunately this didn’t fix anything. I reflashed the 7.1.91.3272 update, still nothing - sleep still didn’t work, and restart was still cutting power before booting.
I wasn’t really sure at this point about the nature of the problem. So, after running a chkdsk (required after so many dirty shutdowns), I tried doing a System Restore to before I had done any flashing. Upon rebooting to complete the system restore however, my main mSATA system drive ceased being recognized, and the ‘ME is in Recovery State’ message began showing up. After rebooting a couple of more times - I don’t remember if I used CTRL-ALT-DEL or cut power - the mSATA drive began being recognized, and Windows began booting normally. And while, unfortunately, the ‘ME is in Recovery State’ error persists, sleep and shutdown are working normally again. Here’s what the ‘ME is in Recovery State’ screen looks like when the BIOS is set to show diagnostics:
At this point my situation seems pretty similar to the one in this thread, though MEInfo and MEManuf logs are slightly different.
MEInfo - per the original thread I upgrade the ME drivers to 11.0. UNS and LMS versions show up as “Not Available”.
Intel(R) MEInfo Version: 7.1.50.1166
Copyright(C) 2005 - 2011, Intel Corporation. All rights reserved.
Intel(R) ME code versions:
BIOS Version: 8DET73WW (1.43 )
MEBx Version: 7.0.0.63
Gbe Version: 1.3
VendorID: 8086
PCH Version: 4
FW Version: 7.1.91.3272
UNS Version: Not Available
LMS Version: Not Available
MEI Driver Version: 11.0.5.1189
Wireless Hardware Version: Not Available
Wireless Driver Version: Not Available
FW Capabilities: 234249317
Intel(R) Active Management Technology - PRESENT/ENABLED
Intel(R) Anti-Theft Technology - PRESENT/ENABLED
Intel(R) Capability Licensing Service - PRESENT/ENABLED
Protect Audio Video Path - PRESENT/ENABLED
Intel(R) Dynamic Application Loader - PRESENT/ENABLED
Intel(R) AMT State: Enabled
CPU Upgrade State: Upgrade Capable
Cryptography Support: Enabled
Last ME reset reason: Power up
Local FWUpdate: Enabled
BIOS and GbE Config Lock: Enabled
Host Read Access to ME: Disabled
Host Write Access to ME: Disabled
SPI Flash ID #1: C22017
SPI Flash ID VSCC #1: 20052005
SPI Flash BIOS VSCC: 20052005
BIOS boot State: Pre Boot
OEM Id: 4c656e6f-766f-0000-0000-000000000000
Error 8199: Communication error between application and Intel(R) ME (Get Intel(R) AMT State)
Error 8199: Communication error between application and Intel(R) ME (Get System UUID)
Error 8199: Communication error between application and Intel(R) ME (Get Ipv4 Info)
Error 8199: Communication error between application and Intel(R) ME (Get Ipv4 Info)
Error 8199: Communication error between application and Intel(R) ME (Get Ipv6 Info)
Error 8199: Communication error between application and Intel(R) ME (Get Ipv6 Info)
Error 8199: Communication error between application and Intel(R) ME (Get Provisioning State)
Error 8199: Communication error between application and Intel(R) ME (Get Provisioning Mode)
Capability Licensing Service: Enabled
Capability Licensing Service Status: Permit info not available
OEM Tag: 0x00000000
MEManuf - in particular this is much shorter than the log in the other thread and has a ‘No Intel ME test result to retrieve’ error. Also, our FW Status Registers have different values, and ManufacturingMode is disabled on my machine. Practically I’m not sure if this makes a difference or not.
Intel(R) MEManuf Version: 7.1.50.1166
Copyright(C) 2005 - 2011, Intel Corporation. All rights reserved.
Platform stepping value is 4
FW Status Register1: 0x1E000242
FW Status Register2: 0x68000006
CurrentState: Recovery
ManufacturingMode: Disabled
FlashPartition: Valid
OperationalState: M0 with UMA
InitComplete: Complete
BUPLoadState: Success
ErrorCode: No Error
ModeOfOperation: Normal
ICC: Valid OEM data, ICC programmed
Get FWU info command…done
Get FWU version command…done
Get FWU feature state command…done
Get ME FWU platform type command…done
Get ME FWU feature capability command…done
Feature enablement is 0xDF65C65
gFeatureAvailability value is 0x1
OEM ICC data valid and programmed correctly
Request Intel(R) ME test result command…done
vsccommn.bin was created on 04:35:50 08/08/2012 GMT
SPI Flash ID #1 ME VSCC value is 0x2005
SPI Flash ID #1 (ID: 0xC22017) ME VSCC value checked
SPI Flash ID #1 BIOS VSCC value is 0x2005
SPI Flash ID #1 (ID: 0xC22017) BIOS VSCC value checked
FPBA value is 0x0
No Intel Wireless device was found
Error 9313: No Intel(R) ME test result to retrieve
Error 9296: MEManuf Test Failed (9313)
Attempts to do an SPI dump failed with a Code 26 error:
Error 26: The host CPU does not have read access to the target flash area. To enable read access for this operation you must modify the descriptor settings to give host access to this region.
And attempts to run “fptw64 -greset” result in a Code 205 error:
Error 205: Failure. Unexpected error occurred.
All that out of the way, I have a few questions about how to proceed.
- What consequences are there to not fixing this, other than a slightly longer boot-up time?
- I understand, per the other thread, that the code 26 error can be circumvented via shorting together a couple of pins on the audio circuit. I’m not sure I have anything slight enough that it would only touch those two pins. Are there any recommendations for a specific tool to do this with?
- The procedure to fix this appears to involve extracting a current BIOS, replacing the ME region from a stock image, and reprovisioning it properly, as per the guide here.
- It appears that in my case this would require extracting the ‘clean’ ME Region from 7.1.80.1214_5MB_ALL_PRD_RGN.bin. Is this correct?
- If so, can I later upgrade to the 7.1.91.3272 version with the patch without issues? Or is this somehow rolling the dice?
- In the other thread, both of the people helped ended up getting a code 28 error when trying to flash the ‘fat’ image, and are then instructed to only flash Descriptor and ME Regions.
- How are specific descriptor and ME Region files made?
- Can/should these be flashed directly, without first flashing the ‘fat’ image with the entire bios? (I mean it certainly looks like flashing the fat image won’t work…)
Thanks a lot for bearing with me here, really appreciate any further advice (the guides and previous thread were already very informative!)