Replies: 34 comments 141 replies
-
|
Update, I tried your 6.14-rc1 kernel packages and swallowed my pride with qemu and got my laptop to boot. It even started X11, but then after a while of showing a rotating circle it rebooted and the UEFI wanted to "repair the system." |
Beta Was this translation helpful? Give feedback.
-
|
Hi @axu-trex, yeah that is a nice budget laptop with loads of RAM and nice peripherals. I have mine up with Ubuntu, didn't publish the image yet. Let me update that one with the latest kernel and dtb, will be worth it. I recommend booting either from type-a SSD enclosure (fastest), stick, or SD-card. SD-card is odd, you can't use the fast UHS-II ones. Haven't tested UHS-I yet. Re installing on x86 box in chrooted mount: yes that should be possible, but there are easier tasks. I would recommend to wait until I publish the bootable image. Today. |
Beta Was this translation helpful? Give feedback.
-
|
The first reboot is intentional, btw. You need to be fast with F12 |
Beta Was this translation helpful? Give feedback.
-
|
Hi @axu-trex , the image is ready for download and test. You can find it here. It should work ootb, including local keyboard and touchpad. Depends on the actual SKU. There is no gpu support yet, its still software-rendered. WiFi, BT work. Card reader works, but not with UHS-II. type-c ports and type-a ports work. DP Altmode on type-c works, with 2 lanes. HDMI not yet, Sound/speakers not yet. Sound via USB / BT works fine. |
Beta Was this translation helpful? Give feedback.
-
|
I've got the new image installed now and snap repaired. I've gotten one weird hang so far, and on the next boot it didn't seem to find the SSD which it found on the first boot. About the hang: |
Beta Was this translation helpful? Give feedback.
-
|
A slow USB stick is no fun with this. My recommendation would be to try with an SSD enclosure as boot device. For reasons (adsp firmware booting and VBUS woes) I recommend using a USB-A port... directly, not behind a hub. I have a UGreen SSD Enclosure with RTL9210 chip, they are good (as in no crippling bugs) and support type-c and type-a cables. |
Beta Was this translation helpful? Give feedback.
-
|
Otherwise, seen only minor issues on the Thinkbook so far. It changes magically with fast I/O available. |
Beta Was this translation helpful? Give feedback.
-
|
After some banging of the head, I've now got Debian/sid installed and booting from the laptop internal SSD. |
Beta Was this translation helpful? Give feedback.
-
|
I tried the kernel 6.14.0-17-jg-2 on the ThinkBook and couldn't get it to work. The screen just stayed black forever, after it switched console, so I couldn't even see if it panicked or what. Not sure if it was even meant to work tho. |
Beta Was this translation helpful? Give feedback.
-
|
There is a new build, 6.14.0-17-jg-3. The repository branch is jg/ubuntu-concept-6.14 but it is not tagged yet, expecting further changes. I am using this corrected dtb, looking good so far. |
Beta Was this translation helpful? Give feedback.
-
|
I ran a tests again on the ThinkBook 16 G7 QOY variant 21NH with the with the Unencrypted Windows Partition Here are the findings out of the box: Tested Laptop: ThinkBook 16 G7 QOY (Variant: 21NH) Test Results Thanks for all the work if a testing is needed, I’m happy to help! |
Beta Was this translation helpful? Give feedback.
-
|
Hmm ... what's the deal with RTC? Recently my laptop always boots up with a date a week or two in the past, and I think it's the date when I switched from one kernel version to another. So I'm thinking maybe there's some bug with RTC in the more recent versions of the kernel? Searching for "rtc" from the beginning of my kern.log: (where kernel version is 6.14.0-5-qcom-x1e) And from the end of the log: (where kernel version is 6.14.0-17-jg-3-qcom-x1e) |
Beta Was this translation helpful? Give feedback.
-
|
I understand that this laptop has the Adreno GPU, and that Linux kernel already supports Adreno. So what's missing? Is the Adreno on this laptop a different variant than the two(?) chips that already have Linux support? Or do we just need to find the right device tree entries for the GPU on this laptop to get the driver (and presumably also HDMI) working? |
Beta Was this translation helpful? Give feedback.
-
|
Hi, smee again. Can you give me pointers with tracking battery status? Upower seems to identify the battery, but can't get any real numbers for it. BTW, I'm testing 6.14.0-31-jg-1. Haven't noticed any new issues. |
Beta Was this translation helpful? Give feedback.
-
|
Hi, i'm kopernikustheog from UBUNTU thread. i did decrypted windows partition and used USB type-a I also checked this^ discussion and haven't found any type of problem that would be similar to the one i'm facing |
Beta Was this translation helpful? Give feedback.
-
|
WOW, great work on the camera! |
Beta Was this translation helpful? Give feedback.
-
|
@jglathe I just wanted to say thank you! Yesterday, I finally removed all the Windows stuff from my machine, and now with your ISO and Kernel v5, my laptop is running Ubuntu directly from the hard drive without partition. Out of the box, the sound isn’t working, but I’ll try to fix that today. By the way, amazing work with the camera! 👍 If you need any help or testing, don’t hesitate to ask—I'm more than willing to help. Alejandro
Here is a small guide if someone is interested on try it:
1. Download the system imageDownload the compressed image ( 2. Uncompress the
|
Beta Was this translation helpful? Give feedback.
-
|
I tried |
Beta Was this translation helpful? Give feedback.
-
|
Apropos, Debian's initramfs builder has given the following warning for all these kernels: I wonder if it's correct or mistaken? |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jglathe, I want to ask you if you have been able to enable the GPU? Is it the only part that is missing for me to use the laptop more frequently? |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jglathe, today I finally managed to enable the GPU, with your last image with 6.16, and the first glance looks everything fine. The battery lasts long, the CPU name is not recognized, but the GPU just works fine. Thanks a lot, I am happy that now I can use it for real things. On the other hand, I saw that the kernel 6.16 was released, but I browsed the file and I could not find the DTS for the TB16. Do you think that they approved it for kernel 6.17? |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jglathe, I see that the dts for this Thinkbook is on linux-next. I believe it will be available on kernel 6.18. I’m currently waiting to test another distribution on my laptop, Thanks a lot. |
Beta Was this translation helpful? Give feedback.
-
|
I installed 6.17.0-jg-1-qcom-x1e a few weeks back, and I've been able to use it. (All versions of 6.16 ended up in black screen for me.) It's still a bit unstable, and DHCP somehow always fails on shutdown, but on the positive side the battery remaining meter now works more often than not. It still doesn't detect if the battery is charging or not tho. HDMI output still doesn't work, but now I randomly get a bunch of realistic (albeit wrong) resolution options on the output. Here's some errors when the resolutions look more realistic: I also get a lot of cma spam on boot: |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jglathe, how are you? Happy 2026 I’ve picked up again the idea of using the ThinkBook as my main Linux laptop. I tried to find a distro already shipping kernel 6.18 with proper support, but so far without success (I guess I was a bit too optimistic thinking that once 6.18 landed, more distros would be readily usable). I also tried building my own setup based on Alpine Linux 3.23 with kernel 6.18. It does boot and the DT is correctly loaded, the firmware looks ok, but a few seconds after reaching the login prompt the screen goes black (something very similar reported by @axu-trex), so for now I’ve paused that attempt. If Alpine is of any interest, I’d be happy to share the project/ISO with you. I wanted to ask whether you’ve created any new ISO recently to retry with Ubuntu, and once again thank you very much for all your contributions to make this hardware usable. |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jglathe, I restarted the process of installing Ubuntu and wanted to check if you’ve encountered a similar issue with the device tree not being installed correctly. What I did
ProblemAfter rebooting into the internal SSD:
Workaround (manual)
What I tried next
QuestionHave you encountered a similar issue where the device tree is not automatically installed or referenced after installation? Is there a known correct way to make GRUB persistently load the DTB on this setup? Thanks in advance for the help |
Beta Was this translation helpful? Give feedback.
-
|
What are the -nostubble kernels? |
Beta Was this translation helpful? Give feedback.
-
|
I tried 6.18.3 from Debian and it ended up in black screen, but I was happy to see that it still mostly worked. It also seems that the working kernels (6.15 and 6.17) are loading firmware for adreno, while the failing ones are not even trying. Here are the same lines as above from 6.17.0-jg-1: Why are firmware loads for qccdsp8380 and qcadsp8380 failing? |
Beta Was this translation helpful? Give feedback.
-
|
I have fix 2 small issues that I want to share, hope this helps others with the same hardware! System Info
Fix 1: ath12k WiFi Stats Timeout ErrorsProblemath12k_pci 0004:01:00.0: failed to pull fw stats: -71 Solution: Update ath12k Firmware# Clone latest linux-firmware
cd /tmp
git clone --depth 1 https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
# Backup and update
sudo cp -r /lib/firmware/ath12k /lib/firmware/ath12k.bak
sudo cp -r linux-firmware/ath12k/* /lib/firmware/ath12k/
# Reboot
sudo rebootResult Fixed! Firmware version after update: 0x110cffff (2025-06-25) Fix 2: Fingerprint Reader UnreliableProblem fpc_cmd_ssm_done error: Operation was cancelled Solution: Udev Rule Create udev rule to disable autosuspendReload and restartsudo udevadm control --reload-rules Re-enroll fingerprintfprintd-delete $USER Enable for sudo/terminal sudo pam-auth-update
Result Fixed! Fingerprint now works reliably. |
Beta Was this translation helpful? Give feedback.
-
|
I've been running Ubuntu 25.10 (Questing) on the Lenovo ThinkBook 16 Gen 7 QOY (Snapdragon X1P42100) as a daily driver. Here are some fixes and configs that I have been using. Hopefully this saves others some time. Hardware
Software
1. Audio (Speakers, Headphones, Mic)Audio is completely dead out of the box. The root cause is a firmware path mismatch: the kernel identifies this machine as The fix requires machine-specific ADSP/CDSP firmware, a custom audioreach topology, and ALSA UCM configuration. All credit to jglathe for figuring this out. Key gotchas:
Copy ThinkBook 16-specific firmware (ADSP/CDSP) Using sudo mkdir -p /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH
SRC=firmware-x1p42100-21NH # or wherever the machine-specific files are
# ADSP firmware (note: source file has .disabled suffix — rename to .mbn)
sudo cp $SRC/qcadsp8380.mbn.disabled /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/qcadsp8380.mbn
sudo cp $SRC/adsp_dtbs.elf /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
sudo cp $SRC/adspr.jsn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
sudo cp $SRC/adsps.jsn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
sudo cp $SRC/adspua.jsn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
# CDSP firmware
sudo cp $SRC/qccdsp8380.mbn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
sudo cp $SRC/cdsp_dtbs.elf /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
sudo cp $SRC/cdspr.jsn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/
# Battery manager
sudo cp $SRC/battmgr.jsn /lib/firmware/updates/qcom/x1p42100/LENOVO/21NH/Steps summary:
2. Fingerprint Reader — identity_type MismatchThe fingertprint works out of the box but after some boots start to missmatch,then I notice that enrollment works fine, but verification always fails with "verify-no-match" after some time. The FPC MOC driver in libfprint expects Fix: Patch # Build from patched source
apt source libfprint-2-2
cd libfprint-1.94.9+tod1
patch -p1 < fpc-identity-type-workaround.patch
dpkg-buildpackage -us -uc -b
sudo dpkg -i ../libfprint-2-2_*.deb ../libfprint-2-tod1_*.deb
sudo systemctl restart fprintdYou can download the files already compiled here 3. GPU Firmware in InitramfsAt early boot, the kernel fails to load Fix: Create #!/bin/sh
PREREQ=""
prereqs() { echo "$PREREQ"; }
case "$1" in prereqs) prereqs; exit 0;; esac
. /usr/share/initramfs-tools/hook-functions
for fw in qcom/gen71500_sqe.fw qcom/gen71500_gmu.bin; do
for ext in "" ".zst"; do
src="/lib/firmware/${fw}${ext}"
if [ -e "$src" ]; then
dest="${DESTDIR}/usr/lib/firmware/${fw}${ext}"
mkdir -p "$(dirname "$dest")"
cp "$src" "$dest"
break
fi
done
doneThen: Note: Ubuntu's Performance OptimizationsThese are optional but made a noticeable difference on this hardware. Boot Time: 34s to ~21s
Memory & I/OReplace the swap file with zram (compressed swap in RAM): sudo apt install zram-tools
# Default config: PERCENT=50, ALGO=lz4 → ~15 GB compressed swap on 32 GB
sudo swapoff /swap.img && sudo rm /swap.img
# Comment out /swap.img in /etc/fstabSysctl tuning ( vm.swappiness=10
vm.vfs_cache_pressure=50
vm.dirty_ratio=15
vm.dirty_background_ratio=5
vm.dirty_writeback_centisecs=1500
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
net.ipv4.tcp_fastopen=3
fs.inotify.max_user_watches=524288Add Power
Running x86-64 Apps via Box64Some apps don't have aarch64 builds. Box64 with the Oryon DynaRec ( Currently running via Box64:
Setup: git clone https://github.com/ptitSeb/box64 && cd box64
mkdir build && cd build
cmake .. -DSDORYON1=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j8 && sudo make install
sudo systemctl restart systemd-binfmt # enables transparent x86-64 executionPower LED Investigation (Unsolved)The power LED stays solid during Linux suspend instead of pulsing like in Windows. After extensive investigation:
Next step: Capture the EC I2C traffic in Windows during sleep/wake transitions to reverse-engineer the command protocol. If anyone has done this or written a ThinkBook EC driver, please reach out. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @alejandroqh , I liked your initramfs hook for firmware. I found some useful hook functions in Debian/sid (which I'm running) and adapted your script a bit. My script looks like this now: The last file |
Beta Was this translation helpful? Give feedback.



Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi jg!
I bought the Snapdragon laptop mentioned in the title this January after having read a lot of good stuff about Snapdragon X Elite. Turns out it's Snapdragon X Plus (x1p42100) instead, and I was misled by the reseller, but I've noticed you've been furiously working on support for this laptop here too.
I'd like to test drive your work. Have you made
.debpackages of the kernel and the required.dtbavailable somewhere? (I did try to look through your googledrive folders mentioned elsewhere, but couldn't find this.)And as a followup question: Is it possible to install these into your modified desktop images while chrooted on an x86 machine? Without qemu?
Beta Was this translation helpful? Give feedback.
All reactions