This widget could not be displayed.
This widget could not be displayed.
cancel
Showing results for 
Search instead for 
Did you mean: 

Linux on Zenbook S 13 OLED ?

AeolusOne
Star II
System: Zenbook S 13 OLED
Battery or AC: N/A
Model: UM5302TA
Frequency of occurrence: Always
Reset OS: N/A
Screenshot or video: N/A
========================
Detailed description:I recently bought the Zenbook S 13 OLED and wanted to try out linux on it but couldn't manage to make it work because the internal keyboard wasn't working and maybe wifi but can't confirm since my keyboard isn't working. I tried manjaro linux xfce,kde,gnome (kernel 5.15) as well as popOS and Ubuntu 22.04 and the result is the same, the keyboard just doesn't work but apart from that and numpad i think everything else is working. I must mention that the keyboard does work in grub but not linux for some reason. I tried changing the keyboard layout (nothing). I also notice that apperently @Blueskull managed to run linux with kernel 5.19 and didn't mention any keyboard problems in his post about usb4 bios request. I need to run linux for my studies, does anyone know of a solution ?
PS: I do not have a spare keyboard or an ethernet cable.
15 REPLIES 15

qqmo520316
Star I
Same here. Looks like a kernel issue, maybe 6 will fix it.
I do find a article shows this is a common problem about AMD 6000 series, and it comes with solution.
Unfortunately, I didn't manage to solve the problem by following the steps...

Blueskull
Star III

You can install Linux on your laptop without wired LAN or keyboard. The process is tricky, though.

First, you need to know why the KB doesn't work. The KB controller was not implemented in the CPU/PCH, but in the EC. The EC emulated an i8042 KB controller, and talks to the host over LPC interface. The EC generated a high-enable interrupt signal while Linux kernel, by default, expects a low-enable interrupt signal, hence the kernel never gets triggered by the KB controller.

The kernel, however, is capable of being triggered by positive IRQ signals, you just have to tell it to anticipate positive IRQ signal. This can be done in a few ways, one of them being adding a quirk in the kernel. A quirk is a device-specific workaround in kernel codebase, aimed to solve a particular problem on a particular device, rather than solving its root cause. Proper quirk was added since Linux 6.0rc1, but I guess you can't wait for this.

Another solution is to tell the kernel in ACPI table that this device has a positive IRQ logic, which is what the BIOS is supposed to do, but apparently it failed to do so. Do not worry, you can construct a DSDT (differentiated system description table) to trick the kernel that the BIOS has reported IRQ positive, so the kernel can anticipate that.

To do so, you first need another computer and use that computer to create a Linux installation disc, in this case, I use Ubuntu 22.04, which comes with 5.15 kernel. Once you've dd'ed the ISO to the flash drive, you will see a Ubuntu partition and a writable partition. Use a partition editor (Disks or GParted, etc.) to create another partition at the end of the drive, doesn't have to be large, 100MiB should be fine, use FAT32 or ext4. In the newly created partition, copy the attached file I provided (modified DSDT image). You don't have to trust me on the security of the file, you can make one later on your own once you have a working keyboard.

Then, press F12 to boot from flash drive in UEFI mode, do NOT let it boot Linux just now, you need to halt the booting process in grub. Go to command line mode, the type ls to list partitions. You should see a list of partitions, like (gptx,hdy). By default, grub only lists your boot drive, so you should only see partitions on your flash drive. The last one (with largest y number in hdy) is the newly created one, and is the one containing the DSDT override file. Press ESC to go back to grub menu. Then choose Install Ubuntu, and edit the command line. You should see a line specifying initrd, modify this line, prepend (gptx,hdy)/acpi_override before the actual initrd filename. You should have something like "initrd (gpt0,hd4)/acpi_override initrd.img-5.15.xxxx", then boot (CTRL+x).

Once you've installed Linux, do NOT reboot. You will need to copy your acpi_override file to your newly installed Linux OS, to the /boot folder. I forgot what the mounting point it is, but you can figure that out using mount -l (lower case L) command. The remove the flash drive and reboot.

Now, you should be able to boot from your own hard drive, but your KB should still not be working. You need to, again, pause the boot process by pressing shift, and edit your grub command line. Prepend acpi_override before your initrd file like we've done before. This time since it is in the /boot folder, you no longer need to specify the partition. Hit CTRL+x to boot.

In your newly installed OS, use a text editor (nano, etc.) to edit /etc/default/grub, you will need sudo privilege. After GRUB_CMDLINE_LINUX="" add a new line "GRUB_EARLY_INITRD_LINUX_CUSTOM=acpi_override". Then, execute sudo update-grub. This will update your grub with ACPI override, and will make sure on every subsequent grub updates (installed new kernel module, new kernel version, etc.) the ACPI override is applied.

Now, if you have doubt on the security of my provided file, you can create your own by following the Reddit thread "Keyboard in Multiple Ryzen 6000 Laptops Not Functional", the first post posted by user shifty-phil is the one I followed. If you can read Chinese or have someone who can translate for you, the first link in his post should also be followed. It has a myriad of valuable information on improving Linux experience on Ryzen 6000 series laptops.

That's it. I hope you enjoy your new laptop.

File: bit dot ly slash 3BbYmnK

Sto1cNate
Star I
I also am having Linux woes with this laptop. Currently using the Liquorix (ZEN) kernel 5.19.0-8.2 on Ubuntu (Focal) based, Zorin 16.1 OS.
Other than keyboard, here is what I found also does not work and other issues...
Built in speakers, built in microphone, webcam, bluetooth, and the fingerprint sensor. Sometimes the mouse cursor will freeze until you click to unfreeze it. Like there is some kind of mouse suspend. Also cannot find an option to enable 10-Bit color (HDR) on either X11 or Wayland. I did load the color profile:
"Zenbook UM5302TA UM5302TA"
Plugging in a wired headset into the combo headphone/mic aux port does work, for both the earphones and microphone.
Having to use a wired keyboard to be able to use this laptop is quite annoying.
I did test kernel 6.0 rc3, and the keyboard did work on that, but it also killed my wifi. Haven't tested rc4 yet.
Better Linux support is much desired from ASUS if I am to be able to recommend these laptops to anyone. It looks like it will be a waiting game for a stable release of 6.0 to get minimum functionality.

Blueskull
Star III
Sto1cNate

I also am having Linux woes with this laptop. Currently using the Liquorix (ZEN) kernel 5.19.0-8.2 on Ubuntu (Focal) based, Zorin 16.1 OS.

Other than keyboard, here is what I found also does not work and other issues...

Built in speakers, built in microphone, webcam, bluetooth, and the fingerprint sensor. Sometimes the mouse cursor will freeze until you click to unfreeze it. Like there is some kind of mouse suspend. Also cannot find an option to enable 10-Bit color (HDR) on either X11 or Wayland. I did load the color profile:

"Zenbook UM5302TA UM5302TA"

Plugging in a wired headset into the combo headphone/mic aux port does work, for both the earphones and microphone.

Having to use a wired keyboard to be able to use this laptop is quite annoying.

I did test kernel 6.0 rc3, and the keyboard did work on that, but it also killed my wifi. Haven't tested rc4 yet.

Better Linux support is much desired from ASUS if I am to be able to recommend these laptops to anyone. It looks like it will be a waiting game for a stable release of 6.0 to get minimum functionality.


View post
You will need to patch your kernel from ArchLinux AUR repo um5302ta-linux to get speakers to work. The ALSA team will not merge this patch as it is a workaround that is not 100% correct. They have higher priorities. Then, they will properly fix the issue and patch the kernel.
Built-in mic will not work for quite a while. Digital mic support is pretty low on the priority list. It almost 100% depends on the AMD acp3x/acp6x driver team to add support to different dmic chips, and they are going to do that one by one.
Fingerprint sensor works on the kernel level, but not on the libfprint level. Again, we will have to wait. But my word of cautious is not to use them at all. It is a match-on-system, not match-on-device type, meaning your master key is ultimately stored in your system and anyone with physical access can extract it.
Cursor, webcam and WiFi always have been working on my system. Cursor only stutters the very second after logging in or resuming from suspend.
BT support was added somewhere around 6.0rc2.
WiFi never stopped working on my computer. I've used 5.15, 5.17, 5.19, and every single rc of 6.0.
AMDGPU freezes with USB-C external monitors, you need to disable DCS (duty cycle control) by setting amdgpu.ppfeaturemask=0xfff7ffff in your grub kernel command line. Some others may suggest disabling gfxoff as well (ppfeaturemask=0xfff77fff), but that will cause your computer to crash when entering suspend.
10-bit implementation was always funny on Linux. Do not use in any circumstances unless you are a wizard. App support, particularly for those with OpenGL/Vulkan capability, is even trickier.