August 21, 2018

T102HAAS.303 Considered Harmful For Linux

T102HAAS.303 Breaks Suspend


After upgrading my Asus Transformer Mini's BIOS to T102HAAS.303 suspend was completely broken. Closing the "lid" would cause some kind of suspend that cannot be disabled in software and from which Linux 4.15.0 cannot successfully resume from (actually it does resume but the display will stay blank).

This behaviour cannot be disabled in software by editing logind.conf or acpi-support or any of the solutions found on the web about disabling lid action. Messing about with acpi_osi didn't help either.

Downgrading from T102HAAS.303


If you are reading this after upgrading to T102HAAS.303 you probably want to downgrade. Unfortunately the firmware that ships with the computers, version 202, cannot be found on the Asus website. You can however find the 300 firmware if you click on "View all downloads" under the BIOS section. Download this file and put it on a FAT32 formatted USB drive then:

  1. Reboot, hold then ESC to enter Setup
  2. Find the Easy Update entry and press ENTER, starting the easy update program
  3. Navigate to your USB drive, it will be FS0 or FS1
  4. Locate the T102HAAS.303 file and press ENTER
  5. When the dialogue complains that the build date is too old type the word risky on the keyboard
  6. Select Yes on the dialogue that appears after
  7. Wait for the computer to reboot

The key to this process is the word risky which is an undocumented feature that by-passes the build date check, allowing you to downgrade. You just type this in when the error dialogue appears, there will be no text box or anything.

Re-enabling Hibernation


Downgrading will re-enable Secure Boot, which disables hibernation on Linux. Just disable it and hibernation will work again.