EasyOS audio and video work on Zenbook S 13
This has been a saga of about a week. I posted about purchase of Asus Zenbook S 13, with Intel Ultra 7 CPU:
- Asus Zenbook S 13 OLED UX5304MA laptop — January 10, 2025
And attempting to get Linux working on it:
- Installing Linux Mint on Asus Zenbook S 13 — January 19, 2025
- Installing Linux on Asus Zenbook S 13 — January 17, 2025
With EasyOS, as soon as the i915 kernel GPU module loads, get a pink screen and only recoverable by holding down the power button.
I posted about examining the modules loaded by Manjaro, and created a config file to compile the 6.12.10 kernel for EasyOS Scarthgap. Still only a pink screen. Examined errors in "dmesg", did a lot of online reading. This went on for many days, but here is the working end result...
Reading dmesg, the GPU was failing to initialize, and reported as "wedged". The issue seems to be related to the amount of memory allocated to the GPU; in the UEFI-setup it is set to 64M -- online reports are that increasing to 256MB fixes the problem. However, in my UEFI-setup there are only two choices, 32MB or 64MB.
Another recommendation is "intel_iommu=off" in the kernel
commandline. Yes, that works, get a desktop. However, that seems a
bit drastic, and another option "intel_iommu=igfx_off" works.
With the latter, the GPU still works; however, is disabled in VMs (Virtual Machines); at least that is what I uderstand from online reading. I can live with that.
I'm going to put "intel_iommu=igfx_off" as the default on the
kernel commandline for the EasyOS USB-stick.
Note also, the 6.12.10 kernel, with updated firmware, audio works from the internal loadspeakers.
There is still a mystery; Manjaro does not require that "intel_iommu=igfx_off". I suppose there is some other kernel config setting that I did not pick up on.
Anyway, I was very happy today, seeing the desktop come up, and audio working!
Kernel source, patches and config here:
https://distro.ibiblio.org/easyos/source/kernel/6.12.x/6.12.10-20250121/
...the broadcom wl.ko and droidcam v4l2loopback-dc.ko compiled successfully. Running the kernel right now, aufs working ok. I will probably bump Easy Scarthgap and Daedalus to the 6.12.x kernel from now on.
EDIT:
Very interesting, the Manajaro kernel has been configured with
this:
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
whereas, in EasyOS kernel, it is:
CONFIG_INTEL_IOMMU_DEFAULT_ON=y
So Manjaro kernel is defaulting to Intel IOMMU turned off. Looking at the grub bootup, the kernel commandline:
lang=en_US keytable=us tz=UTC misobasedir=manjaro misolabel=MANJARO_XFCE_2421 quiet systemd.show_status=1 splash apparmor=1 security=apparmor driver=nonfree nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
...not turned on there, so Manjaro has
avoided the problem by running with "Intel_iommu=off". Hmmm,
perhaps EasyOS is doing it a better way.
Tags: easy