Running Linux On The ASUS ROG Ally Gaming Handheld

Written by Michael Larabel in Computers on 15 June 2023 at 01:37 PM EDT. Page 1 of 2. 45 Comments.

Following last month's announcement, this week marks the start of the ASUS ROG Ally shipping as the most compelling alternative to date for Valve's Steam Deck. The ASUS ROG Ally features the new AMD Ryzen Z1 Extreme CPU that's interesting in its own right for being based on Zen 4 and RDNA3 integrated graphics. There will be many benchmark articles on Phoronix over the days ahead looking both at the ASUS ROG Ally itself for Linux gaming/performance as well as focusing more generally on the Ryzen Z1 Extreme. In today's article is a few words to get started on the Linux support.

ASUS ROG Ally with Ubuntu

The ASUS ROG Ally that is now shipping is the $699 USD model with the 8-core / 16-thread AMD Ryzen Z1 Extreme, 7-inch 1080p 120Hz display, 512GB SSD plus microSD storage expansion, and 16GB of LPDDR5 system memory.

ASUS ROG Ally with AMD Ryzen Z1 Extreme

Out-of-the-box the ASUS ROG Ally ships with Microsoft Windows 11, but of course Phoronix readers want to know about the Linux support... When powering up the ASUS ROG Ally, the BIOS configuration area is easily accessible, assuming you have a USB keyboard attached. From there it's akin to the standard ASUS BIOS configuration area.

ASUS ROG Ally BIOS

UEFI Secure Boot is enabled by default on the ROG Ally, but can be easily disabled if desired and from there easily off to booting your favorite Linux distribution.

ASUS ROG Ally with Secure Boot enabled

For the purposes of this initial testing, Ubuntu 23.04 with its default Linux 6.2 kernel was used as representative of a modern Linux distribution.

ASUS ROG Ally disabling UEFI Secure Boot

Booting the Ubuntu 23.04 ISO via USB flash drive worked out fine -- complete with working touchscreen support and graphics acceleration.

ASUS ROG Ally booting Ubuntu

Unfortunately, the WiFi on the ASUS ROG Ally was not working out-of-the-box. The ROG Ally uses a Mediatek MT7922 802.11ax WiFi adapter. On Linux 6.2 at least, the WiFi driver's hardware initialization failed. The mt7921e driver tried to load but was getting multiple "Message 00000010 (seq 1) timeout" and "Failed to get patch semaphore" before the Mediatek WiFi driver gave up on trying to initialize the hardware... That's with Linux 6.2 as shipped by Ubuntu 23.04. I'll be trying a newer kernel shortly, but for now was using the wired Ethernet via a USB-C dock. It does appear though potentially related to this patch posted just yesterday to the Linux kernel mailing list. If so, that still is working its way to the mainline Linux kernel and likely won't land until at least Linux 6.5. The patch implies that disabling pre-boot WiFi may be another workaround, but in the case of the ASUS ROG Ally there was no pre-boot WiFi option exposed in the BIOS configuration panel.

ASUS ROG Ally running Ubuntu

The input controls were registered as a "Bus 001 Device 002: ID 045e:028e Microsoft Corp. Xbox360 Controller." Thus able to use the Linux X-Pad kernel driver. An ASUS N-Key Device (ID 0b05:1abe) was also registered.

ASUS ROG Ally with cpuinfo

The Bluetooth support on the ASUS ROG Ally meanwhile leverages a Foxconn / Hon Hai Wireless_Device (ID 0489:e0f5). Also appearing on the USB bus is a LighTuning Technology Inc. ETU905A86-E device with a vendor-specific class. I haven't found any search results for ETU905A86-E but LighTuning does make fingerprint sensors so presumably is for ROG Ally's fingerprint recognition support on Windows.

ASUS ROG Ally with Ubuntu 23.04

The most immediate Linux issue was the Mediatek WiFi not working out-of-the-box with the ROG Ally on Ubuntu 23.04. But at least there is a kernel patch pending to hopefully resolve the situation.


Related Articles