Dasharo / dasharo-issues

The Dasharo issue tracker
https://dasharo.com/
25 stars 0 forks source link

S0ix is broken after re-enabling Intel ME in the firmware settings (V540TU) #1095

Closed wessel-novacustom closed 1 week ago

wessel-novacustom commented 1 month ago

Component

Dasharo firmware

Device

NovaCustom V54 14th Gen

Dasharo version

v0.9.0

Dasharo Tools Suite version

No response

Test case ID

No response

Brief summary

S0ix is broken after switching from ME HAP disabled to ME enabled

How reproducible

100% reproducible.

How to reproduce

  1. Flash the original Dasharo v0.9.0 firmware.
  2. Install Ubuntu 24.04 LTS.
  3. Open two applications like Firefox and LibreOffice, do basic stuff like searching for and typing: test test test
  4. Trigger suspend with Fn + F12.
  5. Note that the laptop is correctly suspending: power button LED goes off, power LED at the front starts blinking, sound goes off (if anything is playing) and the fans stop spinning.
  6. Resume the laptop and unlock the lock screen.
  7. Reboot the laptop and go to the UEFI frimware settings.
  8. Set ME HAP disabling. Save with F10, followed by Y, followed by Enter.
  9. Reboot the laptop with Ctrl + Alt + Del.
  10. Trigger suspend with Fn + F12.
  11. Note that suspending is not working, which is a known non-fixable issue if ME is disabled.
  12. Redo steps 6 - 10, but set ME to Enabled at step 8 this time.

Expected behavior

Suspending is working normally again.

Actual behavior

Suspending is still not working and is acting like ME would be disabled: triggering Fn + F12 causes the screen to lock, to flicker once and that's it. The fans are still spinning, the power button LED is still burning, the power LED at the front is not blinking but remains green.

Screenshots

No response

Additional context

The ME version is not detected while ME is HAP disabled, which is good. The ME version is detected while ME is enabled, even if ME has ever been HAP disabled before. The touchpad is sometimes not responding well after re-enabling ME and then right after the suspend attempt, while that doesn't happen after a while, after rebooting or if ME has never been HAP disabled before (reflashing the BIOS region restores the 'good' state).

Solutions you've tried

Re-flashing the complete BIOS region of the release binary, this works but it is a workaround, rather than a permanent solution.

Before you perform the steps to reflash, you will need to disable BIOS boot lock and SMM BIOS write protection (!): https://docs.dasharo.com/dasharo-menu-docs/dasharo-system-features/#dasharo-security-options

Then, to flash the complete BIOS region, please do so in Dasharo Tools Suite, booted from USB.

Once it's booted, connect to the internet via the Ethernet port.

Then, drop to a shell by pressing S.

The shell commands to perform the desired reflash action are:

wget https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v54x_mtl/v0.9.0/novacustom_v54x_mtl_v0.9.0.rom

flashrom -p internal --ifd -i bios -w novacustom_v54x_mtl_v0.9.0.rom && systemctl poweroff

Make sure that there are no typos!

Quick easy fix for Ubuntu

I just created a script to perform the steps above in Ubuntu. Still, make sure you have BIOS boot lock and SMM BIOS write protection disabled (!!!!!). Then, re-check it after a reboot, just to make sure that the setting has been saved. Then, run the following script:

fixsuspend.txt

Assuming that it is in your Downloads folder, you can do so by running these commands one by one in the Terminal application (an internet connection is required and you might need to provide your sudo password when prompted):

cd Downloads mv fixsuspend.txt fixsuspend.sh chmod +x fixsuspend.sh ./fixsuspend.sh

Reboot if the command has completed successfully. Please note that the script will overwrite all UEFI firmware settings and that the first boot will take several minutes.

EDIT (25 October 2024, 08:40 CET): The issue seem to happen on the V560TU, too. I have updated the script to work with both platforms.

wessel-novacustom commented 1 week ago

This issue is actually caused by Wake-on-LAN (WoL). Full discussion thread here:

https://novacustom.com/forum/d/303-computer-wont-suspend-in-mint-everything-fine-in-windows/