S0ix is broken after switching from ME HAP disabled to ME enabled
How reproducible
100% reproducible.
How to reproduce
Flash the original Dasharo v0.9.0 firmware.
Install Ubuntu 24.04 LTS.
Open two applications like Firefox and LibreOffice, do basic stuff like searching for and typing: test test test
Trigger suspend with Fn + F12.
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.
Resume the laptop and unlock the lock screen.
Reboot the laptop and go to the UEFI frimware settings.
Set ME HAP disabling. Save with F10, followed by Y, followed by Enter.
Reboot the laptop with Ctrl + Alt + Del.
Trigger suspend with Fn + F12.
Note that suspending is not working, which is a known non-fixable issue if ME is disabled.
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.
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:
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 Downloadsmv fixsuspend.txt fixsuspend.shchmod +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.
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
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.