Im not sure if you are referring to me now, but I did test 6.14.0-25-jg-0 tonight (from your google drive) and still had the same problem - i turn wifi off and the screen goes blue/black and after a a couple of seconds the computer reboots.
Yes, it works perfectly.
I bought a T14s (32Gb RAM/512Gb NVMme/WCN785x wifi/WUXGA) specifically because I felt nostalgia for the old linux days when virtually nothing worked. Well, that and the 10+ hours of battery is pretty cool.
I’ve been following this thread since the mid-300 replies. Sadly I haven’t had any of the hard stop issues many other people have.
I’m down to what I perceive is the normal sticking points:
- No Sound
- No Mic
- No Camera
- No backlight control
On Sound I went ahead and followed a lot of the leads from this kernel dev’s GitHub:
(Okay, new users can only put two links in a post, so on github: /jhovold/linux/wiki/T14s)
Updating alsa-ucm manually was pretty simple, I just followed the two steps to current here:
The AudioReach Topology firmware was a little more daunting:
https://git.codelinaro.org/linaro/qcomlt/audioreach-topology
I downloaded that and even went through the hassle of building all the firmware until I figured out that the files in the prebuilt/qcom directory
all diff’d out to be identical to the ones I built. Wow, I’m dumb.
These all need to be copied into /lib/firmware/qcom
One last annoyance it took me a minute to noodle through:
With a pwd of:
cd /lib/firmware/qcom/x1e80100
ln -s LENOVO/21N1/X1E80100-LENOVO-Thinkpad-T14s-tplg.bin .
I found out from dmesg that it was expecting that topology file in /lib/firmware/qcom/x1e80100, so I just symlinked it up to there.
Last was removing the actual sound module and reloading it!
sudo rmmod snd_soc_x1e80100
sudo modprobe snd_soc_x1e80100 i_accept_the_danger=True
Wow! i_accept_the_danger is a bit of a hint not to follow along with this unless you’re kinda okay cashing in on a Lenovo Warranty.
jhovold’s page warns:
Audio
- Active speaker protection not enabled, make sure to keep volume low
- DisplayPort output not enabled
- Pipewire playback and capture issues (switch to Pulseaudio as workaround) (fixed in wip branch)
- Pops and clicks
Feeling adequately disclaimered yet? Okay, movin’ on. With all of the above done, the driver loads! Yay!
Here’s the tail of dmesg:
[ 2669.678497] qcom_battmgr.pmic_glink_power_supply pmic_glink.power-supply.0: unknown notification: 0x83
[ 5304.447552] snd-x1e80100 sound: ASoC: Parent card not yet available, widget card binding deferred
[ 5304.451329] ALSA: Control name 'stream0.vol_ctrl0 MultiMedia1 Playback Volume' truncated to 'stream0.vol_ctrl0 MultiMedia1 Playback Volu'
[ 5304.451402] ALSA: Control name 'stream1.vol_ctrl1 MultiMedia2 Playback Volume' truncated to 'stream1.vol_ctrl1 MultiMedia2 Playback Volu'
[ 5304.453769] input: X1E80100-LENOVO-Thinkpad-T14s Headset Jack as /devices/platform/sound/sound/card0/input12
[ 5305.163462] MultiMedia1 Playback: ASoC: no backend DAIs enabled for MultiMedia1 Playback, possibly missing ALSA mixer-based routing or UCM profile
trogdor 16:53:/~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: X1E80100LENOVOT [X1E80100-LENOVO-Thinkpad-T14s], device 0: MultiMedia1 Playback (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: X1E80100LENOVOT [X1E80100-LENOVO-Thinkpad-T14s], device 1: MultiMedia2 Playback (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
So does it work now? Oh god no:
aplay /usr/share/sounds/sound-icons/pisk-up.wav
Playing WAVE '/usr/share/sounds/sound-icons/pisk-up.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
Just sits there doing nothing until ctrl+c’d, and that’s as far as I got. If anyone has any ideas, let me know! I was tempted to rip pipewire out by the roots and replace it with pulseaudio, as jhovold mentioned in his bullet points, but… I’ve got bluetooth headphones working fine so not wanting to take a functionality step backwards, I figured it was time to post here.
Other stuff:
Widevine working was a fun little trip. It took a while to figure out that neither the arm64 compiled firefox in snap nor the Ubuntu chromium build had the widevine hooks compiled in. At least as far as I can tell, please let me know if you got either of those working.
I ended up using Brave:
(New users can only put 2 links in a post, so… yeah this is really easy to search for)
You’ve got to turn on the extension after you’ve got the library copied in: brave://settings/extensions, and that got me Spotify and Amazon back. For some crazy, crazy reason Netflix seems to check the UA string against the library being used?!? So I grabbed a chromium extension that let me edit the UA string to be something like: Chrome 111.0.0.0 Chromium OS 15329.59.0 Mozilla/5.0 (X11; CrOS aarch64 15329.59.0
Aka, actual Google Chrome on Chromeos on arm64, which is where the widevine lib came from. Wow this is brittle, but it works for now.
Other other stuff:
If anyone is still reading this novella and you also hated that Lenovo switched the Function and the Left Control key because 20+ years of muscle memory has you keep whacking Fn+C to try and kill things, there is a setting in BIOS to switch them back! Yeah, an apology by Lenovo for #@$#@'ing up the keyboard! In BIOS!
Last, and I know this seems like a bit of stretch. Is there anything one has to do to get KVM to work properly?
On kernel, 6.14.0-25-qcom-x1e
In dmesg I see:
trogdor 17:28:/~# dmesg | grep -i kvm
[ 0.102999] kvm [1]: HYP mode not available
Okay, no Hypervisor… some Googling says its probably disabled in BIOS. I combed through BIOS and couldn’t find any virtualization settings at all. I then booted into my 100Gb BIOS updater (aka, Windows 11), and virtualization is definitely enabled there.
Digging through: /lib/modules/6.14.0-25-qcom-x1e/build/.config and everything seems to be enabled correctly in the kernel I’m running. What am I missing here?
Please help me in my aspiration to push a live migration of a qemu emulated Raspberry pi from my Thinkpad to a real Raspberry pi, for the lolz.
just gave 6.14.0-25-jg-0 a try. This one works for me without issues. Thanks a lot
And I suppose you are using the Omnibook dtb? Afaik the Elitebook doesn’t have a dedicated one yet right? I’ll see what is missing to make it work here too.
Huh. Yeah I feel you. I would love to have sound working on my HP Omnibook X14, will do another round of tinkering. I have the firmware loaded and the I_accept_the_risk parameter set, although this alsa ucm stuff needs some work. For the time being, I’m using BT audio or USB-C to headphone adapters.
On KVM: That is sort of a hard target on Qualcomm. You need slbounce to boot the OS into EL2. I have done this on the Windows Dev Kit 2023, it also works wit x1e - there are quite a few people using it. It works fine though, but has drawbacks on laptops.
Following up to say that my laptop (which did not have Ubuntu installed) just suddenly stopped booting unexpectedly, which suggests the problems I was having may have been caused by some manner of hardware fault rather than a bug in Ubuntu or the Concept kernel. Thanks for at least trying to help!
Yes I’m using the omnibook dtb for the Elitebook G1Q as they seem to be pretty identical.
FYI black screen issue still persists in 6.14.0-27
Does it work when you run 6.14.0-27 but load the 6.14.0-25-jg-0 dtb?
just checked: 6.14.0-27 works when loading the 6.14.0-25-jg-0 dtb.
I have both installed, but how do you load the 6.14.0-25-jg-0 dtb on 6.14.0-27 ?
usually by copying it over to /boot/dtbs/6.14.0-27.27-qcom-x1e/qcom
When in grub select advanced boot options for ubuntu, select Ubuntu with Linux 6.14.0-27 and press “e” and replace device tree “/boot/dtb-6.14.0-27-qcom-x1e” with “/boot/dtb-6.14.0-25-jg-0-qcom-x1e” and press Ctrl+x
Thanks, i did the glathe method and copied the 6.14.0-25-jg-o dtb to /boot/dtbs/6.14.0-27.27-qcom-x1e/qcom
and rebooted to 6.14.0-27
Unfortunately, my wifi problems persists - if I change wifi or turn wifi off the computer crashes.
In one (not all) of my reboots I also got the black startup screen - works again after a hard reset, and wifi works as long you activate it again.
After activation - for some reason - it keeps asking for the saved wifi password and cant connect.
After another reboot - it connects automatically without problems (but I cant change or turn off)
(Lenovo Yoga 7 slim)
Since 6.14.0-25, Bluetooth audio does not work anymore [T14s].
It appears to work, it sees my Airpods, it connects to them, and claims it is successfull, but no audio devices appear in pavucontrol and the Airpods to not make the characteristic “connection established”-sound.
Blueman-manager claims that I am connected, but activating the audio and input profiles for the Airpods results in a “br-connection-refused” error. Similar things happen when trying to use KDE bluetooth tools.
The Airpods remain in a weird state, where even squeezing the Airpod has no effect (typically this switches between ANC and passthrough). However, disconnecting works and results in the “disconnected”-sound.
Unfortunately, updating to -27 auto-removed my pre -25 kernel, and now I am stuck without any audio.
When using the latest Ubuntu 24.10 Concept ISO installed on my internal NVMe, it works fine until I plug in a USB drive. At that point, it either crashes instantly with a blue screen or mounts the drive but crashes again when I try to copy files.
I also tried installing Ubuntu directly onto a USB drive, which worked, but booting from it resulted in another blue screen.
Using both USB-A (adapted to USB-C) and USB-C drives made no difference.
Device: Dell XPS 13 9345 with Snapdragon X Elite and 64GB of memory, featuring only 2 USB-C ports (no USB-A or other ports).
Any idea on how to fix this?
Just tested with -27 and my Sennheiser Momentum 4 still work.
You can find all the old kernels at https://launchpad.net/~ubuntu-concept/+archive/ubuntu/x1e/+packages?field.name_filter=linux&field.status_filter=superseded&field.series_filter=oracular
Might be worth diffing dtbs if you find out which one broke it.
If you have 64 BG of RAM your problem may be related to a known bug. See,
and
+1, that is likely the correct solution