How did you boot up? Iām also from mainland China, using an SFA14-11, X elite X1E78100, and 32GB of RAM. I passed the Thinkpad T14s device tree to the grub cmd in Ubuntu 25.10, but it wonāt boot. During boot, I get the error:
āmount: mounting efivarfs on /sys/firmware/efi/efivars failed: operation not supported.ā
Hereās my grub.cfg code:
set timeout=3
loadfont unicode
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
set cmdline=
smbios --type 4 --get-string 5 --set proc_version
regexp "Snapdragon.*" "$proc_version"
if [ $? = 0 ]; then
# Work around a Snapdragon X firmware bug. cutmem is not allowed in lockdown mode.
if [ $lockdown != "y" ]; then
cutmem 0x8800000000 0x8ffffffffff
fi
# arm64.nopauth works around 8cx Gen 3 firmware bug
cmdline="clk_ignore_unused pd_ignore_unused"
fi
menuentry "Try or Install Ubuntu" {
set gfxpayload=keep
linux /casper/vmlinuz $cmdline --- quiet splash console=tty0 noefi acpi=off
devicetree /boot/x1e78100-lenovo-thinkpad-t14s.dtb
initrd/casper/initrd
}
# menuentry 'Boot from next volume' {
# exit 1
# }
# menuentry 'UEFI Firmware Settings' {
# fwsetup
# }
Same laptop but my fans spin up only when the CPU temps hit 95 degrees. Your best bet for now is write scripts that limit the maximum frequency when running heavy workloads and the temperature gets too hot. The various temperature sensors are in /sys/class/hwmon and you can set the maximum and minimum frequencies per core cluster by writing to /sys/devices/system/cpu/cpufreq/policy"$i"/scaling_max_freq and /sys/devices/system/cpu/cpufreq/policy"$i"/scaling_min_freq where ā$iā is 0,4 or 8.
Hereās a script I wrote to do it:
#!/bin/sh
min=ā$1ā; max=ā$2ā;
awk -v min=ā$minā -v max=ā$maxā ā
function set_freq(mini,maxi){
for(i=0;i<12;i+=4){
print āecho " mini " > /sys/devices/system/cpu/cpufreq/policyā i ā/scaling_min_freqā | ā/bin/shā; close(ā/bin/shā)
print āecho " maxi " > /sys/devices/system/cpu/cpufreq/policyā i ā/scaling_max_freqā | ā/bin/shā; close(ā/bin/shā)
}
}
function error_msg(msg){
print msg; exit 0;
}
BEGIN{
min_gt_max=āMinimum frequency greater than maximum frequency!ā
if(min ~ /^[0-9]* $/ && max ~ /^[0-9]$/){
min < max ? set_freq(min,max) : error_msg(min_gt_max)
}else if(min ~ /^[0-9] *MHz $/ && max ~ /^[0-9] *MHz *$/){
min=gensub(" *MHz *ā,āā,āgā,min)*10^3
max=gensub(ā *MHz *ā,ā",āgā,max)*10^3;
min < max ? set_freq(min,max) : error_msg(min_gt_max)
}else{
error_msg(āInvalid combination of arg formats or minimum and/or maximum frequency args!ā)
}
}
ā
I donāt know if anyone else had the same issue, but for me the scmi-cpufreq module wasnāt loading, leading to a high CPU frequency (even in sleep) and high battery usage. Doing a modprobe scmi-cpufreq did it for me.
@alexvinarskis@tobhe i know work has been completed to upstream driver support for Snapdragon and specifically UX3407QA hardware into the main Linux kernal and via your boot image, but itās a little hard to ascertain the current status. Especially with regard to firmware availability without needing to dual boot, audio support, etc.
I wondered if you could give a quick summary of the experience on this device as of now?
It looks like HDMI support as well as some other bits and pieces are still WIP according to Alexās GitHub. Iām personally about to pull the trigger on this laptop so long as there is some level of support and stability in the Ubuntu kernal.
Iām in the same boat. I purchased my SP11 last year with the goal of moving to Linux within a year. That was unfortunately overly optimistic. And sorry, I havenāt looked into any Linux VM options.
I just came here to say this, I made it force load on boot and the system has been surprisingly happier with temps staying more in check. @rstallmanstoefluff thank you for the script, Iāll implement it in the future if needed but for now it was the tip it seemed I at least needed to find a root cause of a seemingly bigger issue(the driver not loading).
Iāve successfully installed Ubuntu 25.10 on my Asus Vivobook S15 and doing fine so far. I had to install the x1e-settings package, so that things like the battery indicator worked as intended. But internal audio still isnt woking and I cant even find the speaker in the device-tree.
These are known issues with sound and camera!
Yeah, besides, internal sound, you also, unfortunately, cannot use camera.
And this is very big problem. As I understood, these issues because of licenses for linux firmware. And I donāt understand who must approve to include sound and camera in linux firmware. May be itās ASUS - as the laptop manufacturer, or maybe itās a Qualcomm - as the snapdragon manufacturer.
Okey, without internal sound, you can use bluetooth or wired pods, but, without camera⦠How can I use it, for example, for everyday calls?
So, Iām tired of waiting, and tired of that my S15 is lying idle, so, now I use it with Windows.
Hi all, Iām somewhat green to all this but I have:
HP Omnibook x 14 (fe0000) [X1P-78-100]
Ubuntu 25.10 seemed to install very smoothly, so Kudos to the teams.
However, Iām still missing wifi, backlight and a few other little bits. I removed the windows partition and canāt seem to figure out the qcom-firmware-extract to work from a local folder. Iāve got wifi access via android usb tether - whoop!
My guess is this model isnāt fully covered yet and I might be able to submit the device tree? I have this machine and a Surface Pro 12" 2025 [X1P-42-100] but Iām struggling to work this stuff out - even though iād like to contribute if I can.
My next step is to reinstall windows, dual boot, and retry the firmware extract.
If anyone can help, Iād appreciate it⦠Iām not even 100% sure 25.10 is the latest iso for arm64 testing.
UPDTE: 25.10-arm64 (kernel 7.17.0-6-generic) is now dual-booting with windows 11. The extract tool got me the battery icon but Iām still missing:
wifi
function keys
kb backlight
mic
camera
audio
And the battery is draining much more quickly than under Windows.
Iām also very curious why this patch hasnāt been included yet. The wcd9385 chip looks like a component that might be used for audio across a variety of Snapdragon laptops. If this patch adds support for it, it would essentially be the holy grail (of audio drivers).
@glathe Any chance you can include this patch in your custom kernel?
Hi, the Omnibook X 14 needs an extra board file for Wifi, its ath11k. Audio should be doable with the wiki I wrote, worked nicely here. Function keys, kb backlight are EC controlled, never solved that. Camera should be doable (ov2c10), but I never came around to it, now I donāt have the device anymore.
Oh interesting. I planned on upstreaming the x1p42100 support for the S15, will check on the newest upstream when doing so. Just checked my dts: Yes it has the codec.
thanks for this, glathe. My board is x1e-78-100 but I now have audio and wifi, thanks! The Audio is overdriven at a pre-pipewire stage but I managed that in alsamixer. Thanks a lot for the help!
Next⦠Surface 12" (2025) x1p-42-100
Is 25.10 from the main site the most upto date for snapdragon or is there a newer build?
Thanks again
Biggest problem rn is odd battery performance on the omnibook under no load. cpu 1-2%, ram 1.9GB but the case is warm and battery is drainin a little quickly. ā¦and ofc lots of programs still arenāt supported.
Looking forward to some progress on this project. Thanks everyone for the efforts
A bit of feedback on 6.17.0-jg-1 - I tried it on my Vivobook S15 X1P42100 but
-1- it still needs me to add a ādevicetree /x1p42100-asus-vivobook-s15.dtbā line to grub.cfg after each initrd line
-2- it no longer boots into EL2 (/dev/kvm) after slbounce.efi even with adding the line ādevicetree /x1p42100-asus-vivobook-s15-el2.dtbā
In case -1- without the devicetree line and in case -2- Iām getting this error appear in red (and staying on the screen!)
efi-log.c:340efi_assert: systemd-boot: Assertion āpā failed at stub.c:270parse_cmdline, halting
If I instead go back and boot with slbounce.efi and 6.17.0-jg-0 specifying ādevicetree /x1p42100-asus-vivobook-s15-el2.dtbā, I can boot into EL2 /dev/kvm OK.
I should also add that I needed to make changes to grub.cfg for the grub to boot into recovery. After installing 6.17.0-6-generic earlier and 6.17.0-jg-1 later, both had linux lines that looked like:
linux /vmlinuz-6.17.0-6-generic root=/dev/mapper/ubuntuāvg-ubuntuālv ro recovery nomodeset clk_ignore_unused pd_ignore_unused cma=128M efi=noruntime
but that didnāt work, I had to change it, as @glathe advised elsewhere, to
Oh yeah, actually found out about that a few days ago, too. There is an array of issues.
First: Stubble is used to find the compatible match and select from the dtbs linked to the kernel. The default option stubble.dtb_override=true actually means to give preference to the one found in the binary to an external one, when there is a match at all. This leads to selecting the linked EL1 dtb being loaded even when slbounce already got loaded (I do this on the T14s). The way out is to add stubble.dtb_override=false to the command line, giving preference to the externally given devicetree statement. But secure boot is not possible then.
Also, on the Windows Dev Kit 2023 with slbounce.efi preloaded before grub, a stubble-enabled kernel will fail somewhere in the EFI loader, with the same message you posted. Regardless if its EL1 or EL2. The way out for now is to use a non-stubble kernel. Or, to first load an efi shell from grub, then load slbounce by hand, and exit back to grub, then select the Linux boot entry. This works.
nup, EL2 not working for 6.17.0-jg-1 on Vivobook S15 X1P42100, Iām afraid
I note that on the stubble github at
thereās an entry in hwids/txt/x1p42100-asus-vivobook-s15.txt
but no corresponding .json file in hwids/json
So am I right in thinking that this (and x1p42100-lenovo-ideapad-5-2in1.txt and x1p42100-microsoft-surface-pro-12in.txt) models missing .json file havenāt made it into stubble world yet?