Skip to content

Add test results for Lenovo ThinkPad X1 Carbon Gen 4 (20FB0069MN) - #95

Open
oursin-zz wants to merge 1 commit into
FreeBSDFoundation:mainfrom
oursin-zz:add-thinkpad-x1-carbon-gen4
Open

Add test results for Lenovo ThinkPad X1 Carbon Gen 4 (20FB0069MN)#95
oursin-zz wants to merge 1 commit into
FreeBSDFoundation:mainfrom
oursin-zz:add-thinkpad-x1-carbon-gen4

Conversation

@oursin-zz

@oursin-zz oursin-zz commented Jun 25, 2026

Copy link
Copy Markdown

Summary

Laptop make/model:** Lenovo ThinkPad X1 Carbon Gen 4 (20FB0069MN)

System information

Laptop make/model: Lenovo ThinkPad X1 Carbon Gen 4 (20FB0069MN)
uname -a output:
FreeBSD FreeBSDx1 15.1-RELEASE FreeBSD 15.1-RELEASE releng/15.1-n283562-96841ea08dcf GENERIC amd64

Tests Completed

Installation

  • I can install FreeBSD easily as a new user and jump into a graphical desktop environment on the next boot.
    (FreeBSDFoundation/proj-laptop Issue 25)

Wireless

  • The laptop has Wi-Fi 5 support (802.11ac)
    (FreeBSDFoundation/proj-laptop Issue 33)
  • The laptop has Wi-Fi 6/6E support (802.11ax), with observed speeds of 1Gbps+.
    (FreeBSDFoundation/proj-laptop Issue 34)
  • The laptop automatically connects to known Wi-Fi networks without requiring me to manually reconnect each time.
    (FreeBSDFoundation/proj-laptop Issue 4)
  • I can connect my laptop to the internet by tethering with my mobile phone.
  • There is a built-in tool to identify available WiFi networks, choose one to connect to, and provide a passphrase.
    (FreeBSDFoundation/proj-laptop Issue 3)

Audio/Video

  • Sound seamlessly switches to headphones when plugged in, and back to speakers when plugged out.
    (FreeBSDFoundation/proj-laptop Issue 15)
  • Graphical applications (such as games and media content creation tools) run smoothly on the laptop at the screen refresh rate or higher.
    (FreeBSDFoundation/proj-laptop Issue 11)
    (FreeBSDFoundation/proj-laptop Issue 13)
  • I can share my screen on all popular browsers and other applications that request the webcam.
    (FreeBSDFoundation/proj-laptop Issue 14)
  • I can stay connected in a virtual meeting for an hour or longer on all popular video conferencing software with no disruptions.

Power

  • The laptop lasts through an 8-hour workday on a single charge
    (FreeBSDFoundation/proj-laptop Issue 6)
  • I can close the lid to enter sleep mode, then open the lid hours later to resume working.
    (FreeBSDFoundation/proj-laptop Issue 7)
    Note: only works after adding a custom devd(8) script with a delay timer — not out of the box. See comments.md.
  • The laptop can enter and resume from hibernation mode with no change to its operating state.
    (FreeBSDFoundation/proj-laptop Issue 29)

User Experience

  • I can change the keyboard backlight and display backlight to view at a comfortable brightness.
  • I can use multi-finger touchpad gestures in my desktop environment.
    (FreeBSDFoundation/proj-laptop Issue 18)
  • All of the laptop's specialty keyboard buttons (e.g. brightness, volume, etc.) work correctly and can be customized in my desktop environment.
    (FreeBSDFoundation/proj-laptop Issue 19)
  • I can connect to an external monitor or projector using HDMI while using my desktop environment's display settings manager to configure it.
    (FreeBSDFoundation/proj-laptop Issue 27)

Virtualization

  • Suspending the laptop while a VM is running does not affect the VM's state upon resume.
    (FreeBSDFoundation/proj-laptop Issue 9)
  • I can run Windows VMs on the laptop.
    (FreeBSDFoundation/proj-laptop Issue 21)

Additional Info

See comments.md in test_results/20FB0069MN/ for detailed findings, including:

  • DPMS screen-off ("Turn off screen" in Power Management) causes a full system hang, likely related to known i915kms/drm-kmod display power-state issues on this chipset (Intel HD Graphics 520 / Skylake-U).
  • Suspend (S3) works correctly at the kernel level (acpiconf -s 3), but Plasma's Power Management page does not offer a Suspend option at all. Root cause: ConsoleKit2's CanSuspend D-Bus method incorrectly returns "no" because it appears to treat PowerDevil's own handle-suspend-key inhibitor as a real block. Worked around with a sudoers NOPASSWD rule + custom KDE global shortcut for manual suspend, and a custom devd(8) script for lid-close/inactivity-based suspend.
  • Shutdown/Restart options are missing from Plasma's logout menu by default. ConsoleKit2 reports active = FALSE for the X11/SDDM session even after adding pam_ck_connector.so to SDDM's PAM stack. Worked around with a custom polkit rule granting the wheel group the org.freedesktop.consolekit.system.stop/.restart actions directly.
  • KDE's native "Wi-Fi & Internet" settings page shows no networks, since the real freedesktop.org NetworkManager (which plasma-nm depends on) is not available on FreeBSD. Used GhostBSD's standalone networkmgr tray application instead, which works well once manually installed.
  • Bluetooth reported as NOT DETECTED by the hw-probe tool, despite ng_bluetooth/ng_hci/ng_ubt kernel modules being loaded. Not investigated further.

@svmhdvn

svmhdvn commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Thanks for the contribution and detailed comments! The comments are especially valuable. My thoughts:

Bluetooth reported as NOT DETECTED by the hw-probe tool, despite ng_bluetooth/ng_hci/ng_ubt kernel modules being loaded. Not investigated further.

Thanks for letting us know. I just pushed an update to the repo to report USB bluetooth devices. Can you please re-run make with latest HEAD? That would be appreciated, and would catch the discrepancy you found.

[KDE ISSUES]

These would be great to report against our KDE ports at https://bugs.freebsd.org/, tagging the FreeBSD KDE maintainers. A NetworkManager port is in progress, but will take some time due to linux assumptions and missing dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants