Lenovo ThinkPad L15 Gen1 AMD
TL;DR: siehe "Fazit" unten.
Hardware
- 15.6" 1920x1080 FHD Display, optional "mit Touch" (alternativ: L14 als 14"-Ausführung)
- CPU AMD Ryzen (Pro) 4000U Serie (CPUs 4-8 Cores, bis 16 Threads, bis 4.1GHz, 7nm)
- RAM DDR4, 2x SO-DIMM-Sockel, bis 2x 32GB
- SSD M.2 2280, PCIe 3.0 x4, NVME
Intel AX200 WiFi
- Gbit Ethernet
- Bluetooth 5.0
- optional WWAN LTE
- USB-A / USB-C
- HDMI
lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Root Complex 00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir IOMMU 00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge 00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge 00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge 00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge 00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge 00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge 00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge 00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus 00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51) 00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51) 00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0 00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1 00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2 00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3 00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4 00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5 00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6 00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7 01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15) 03:00.0 Network controller: Intel Corporation Wi-Fi 6 AX200 (rev 1a) 04:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01) 06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c3) 06:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 1637 06:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor 06:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1 06:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1 06:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor (rev 01) 06:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller
lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 003: ID 8087:0029 Intel Corp. Bus 003 Device 002: ID 04f2:b6be Chicony Electronics Co., Ltd Integrated Camera Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 27c6:55b4 Shenzhen Goodix Technology Co.,Ltd. Fingerprint Reader Bus 001 Device 002: ID 058f:9540 Alcor Micro Corp. AU9540 Smartcard Reader Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
BIOS
- LENOVO 20U70006GE/20U70006GE, BIOS R19ET28W (1.12 ) 08/12/2020
secure boot aus
- TSME an (transparent secure memory encryption - optional, aber kein Aufwand und sicherer)
Ubuntu 20.04.1 64bit
Die Hardware (Ryzen 4000, L15-AMD Serie an sich) ist noch recht neu, daher braucht man auch einen sehr neuen Kernel, Firmware, usw.
Firmware
amd64-microcode 3.20191218.1ubuntu1 und linux-firmware 1.187.4 sind standardmaessig installiert.
Kernel
Default-Kernel 20.04.1
Default-Kernel Ubuntu 20.04.1 ist 5.4 und daher relativ alt. Er reicht aber für die Installation, danach sollte man auf >= 5.8 gehen.
Direkt nach Installation: Linux L15 5.4.0-53-generic #59-Ubuntu SMP Wed Oct 21 09:38:44 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Bald gibt es dann auch 20.04.2 mit Kernel 5.8.
Edge-Kernel
"Edge-Kernel" (kurz: EK): Linux L15 5.8.0-28-generic #30~20.04.1-Ubuntu SMP Thu Nov 5 20:57:40 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Wichtig: Kernel >= 5.8 installieren, z.B. den Edge-Kernel. Dieser ist aus den Standard-APT-Quellen verfügbar als linux-image-generic-hwe-20.04-edge.
selbstgebauter Kernel 5.9.8
Kurz: K598 - beim Installieren des Kernelpakets:
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8125b-2.fw for module r8169
Relevanz unklar, das benutzte Treibermodule fuer Ethernet ist r8169, erkannt wird eth0: RTL8168h/8111h.
Beim Booten mit K598 kommt keine(!) Fehlermeldung wg. fehlender Firmware.
Grafik
Internes Display tut direkt nach Installation (ebenso mit EK).
TODO: Funktioniert ein externes Display / Dual-Head-Setup?
Helligkeits-Regelung tut nicht direkt nach Installation: Tasten heller/dunkler funktionieren, aber die Helligkeit aendert sich nicht. Fix via EK!
glxgears mit EK: 60 fps (durch vsync limitiert), glmark2 Score: 3307
Umschaltung Grafik <-> Console funktioniert problemlos mit EK.
Text-Console scrollt schnell mit EK.
Sound
Sound-Ausgabe Lautsprecher und internes Mikrofon tun direkt nach Installation (ebenso EK).
Sound-Ausgabe auf Kopfhörer via 3.5mm Klinke funktioniert.
TODO: Funktioniert ein Headset an der 3.5mm-Buchse (sowohl Mikrofon als auch Kopfhörer)?
Webcam
Funktioniert direkt nach Installation, ebenso mit EK (Test mit "cheese").
WiFi
Funktioniert, direkt nach Installation, ebenso mit EK.
LAN
EK und K598: funktioniert (EK598: trotz "fehlende Firmware"-Meldung)
LAN-Buchse: hakelig, keine Link-, keine Activity-LED.
Bluetooth
Funktioniert direkt nach Installation, ebenso mit EK.
WWAN / LTE
TODO: funktioniert WWAN? (konnte nicht getestet werden, Gerät hat ein WWAN)
USB
USB-A und USB-C Anschlüsse: funktionieren (mit USB-Stick getestet)
TODO: max. Durchsatz USB-C?
Tastatur
Direkt nach Installation (ebenso EK): Fn-Keys Mute (F1) ... Flight Mode (F8): Tastendruck wird erkannt, UI reagiert (HUD-Anzeige).
Direkt nach Installation (ebenso EK): Caps-Lock / Num-Lock LED verhält sich normal (toggle ein/aus)
Die Spezialfunktionen auf F9 (Notifications), F10 (Answer Call), F11 (Hangup Call) lösen mit xev keinen Tastencode aus.
Spezialfunktions-Tasten "Calculator" und "Suspend" (oberhalb Ziffernblock) funktionieren.
Trackpoint
Direkt nach Installation: tut, aber relativ schnell & zuckelig!? Fix via EK.
Touchpad
Direkt nach Installation: tut, aber zuckelig!? Fix via EK.
SSD
Funktioniert. Da es eine PCIe/NVME-SSD ist, kann man nur mit UEFI booten.
Model Number: SAMSUNG MZVLB512HBJQ-000L7 Firmware Version: 4M2QEXF7 ... Supported Power States St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat 0 + 8.00W - - 0 0 0 0 0 0 1 + 6.30W - - 1 1 1 1 0 0 2 + 3.50W - - 2 2 2 2 0 0 3 - 0.0760W - - 3 3 3 3 210 1200 4 - 0.0050W - - 4 4 4 4 2000 8000 ...
$ sudo dd if=/dev/nvme0n1p4 of=/dev/null bs=32M count=1000 1000+0 Datensätze ein 1000+0 Datensätze aus 33554432000 Bytes (34 GB, 31 GiB) kopiert, 19,5688 s, 1,7 GB/s
Suspend / Wake-Up
Direkt nach Installation Suspend scheint zu tun, wacht aber nicht korrekt auf: dunkler Bildschirm! Fix via EK.
MicroSD-Kartenleser
Mit EK: funktioniert!
Fingerprint-Sensor
Tut nicht und laut Lenovo wohl auch nicht geplant.
IMHO ist das kein Problem. Fingerabdrücke sind eh nicht sicher und man hinterlässt sie überall, daher als Passwort-Ersatz eh ungeeignet.
Leistungsaufnahme / Power-Saving
12h im Suspend-Mode und der Akku ist von 100% auf 95% runter.
Mit EK zeigt powertop:
- ca. 3.8 / 5.1 / 6.7W - idle Desktop, WLAN an, niedrigste/mittlere/höchste Bildschirmhelligkeit (ohne Optimierung)
- ca. 3.4 / 4.7 / 6.1W - dito, nach powertop-Optimierung
SME / SEV
Anmerkung: TSME kann man im BIOS anschalten, braucht keine Anpassung auf OS-Ebene!
SME:
/etc/default/grub: GRUB_CMDLINE_LINUX_DEFAULT="... mem_encrypt=on kvm_amd.sev=1" - danach update-grub und reboot.
Danach sollte das in dmesg auftauchen:
# dmesg | grep SME [ 1.234567] AMD Secure Memory Encryption (SME) active # dmesg | grep "SEV supported" [ 7.890123] SVM: SEV supported
Getestet, tut aber bei einem Gerät mit Ryzen 4500U nicht.
Sieht so aus als ob:
- TSME braucht BIOS-Support.
- SME benötigt Ryzen Pro oder Epyc.
- SEV benötigt Epyc.
Docking-Stations
TODO: was ist empfehlenswert, was funktioniert, was nicht?
dmesg
[ 0.000000] Linux version 5.8.0-28-generic (buildd@lcy01-amd64-023) (gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #30~20.04.1-Ubu ntu SMP Thu Nov 5 20:57:40 UTC 2020 (Ubuntu 5.8.0-28.30~20.04.1-generic 5.8.14) [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.8.0-28-generic root=UUID=96f4f98b-0417-4925-95b7-84ad629c9bd6 ro quiet splash vt.handoff=7 [ 0.629319] Trying to unpack rootfs image as initramfs... [ 0.731869] Initramfs unpacking failed: Decoding failed ^ Harmlos. Fix: /etc/initramfs-tools/initramfs.conf COMPRESS=lz4 -> COMPRESS=gzip [ 0.741502] pci 0000:00:00.2: AMD-Vi: Unable to read/write to IOMMU perf counter. [ 0.741650] pci 0000:00:00.2: can't derive routing for PCI INT A [ 0.741650] pci 0000:00:00.2: PCI INT A: not connected ^ Ryzen AGESA BIOS Problem!? [ 0.780136] tpm_tis STM0125:00: 2.0 TPM (device-id 0x0, rev-id 78) [ 0.780499] tpm tpm0: tpm_try_transmit: send(): error -5 [ 0.780502] tpm tpm0: [Firmware Bug]: TPM interrupt not working, polling instead ^ ignorieren? wenn es dann mit polling tut, ist ja gut. nicht getestet. [ 0.854436] Unstable clock detected, switching default tracing clock to "global" If you want to keep using the local clock, then add: "trace_clock=local" on the kernel command line ^ "trace clock" -> braucht man als normal-user nicht -> ignorieren!? [ 1.091764] xhci_hcd 0000:06:00.3: xHCI Host Controller [ 1.091767] xhci_hcd 0000:06:00.3: new USB bus registered, assigned bus number 2 [ 1.091768] xhci_hcd 0000:06:00.3: Host supports USB 3.1 Enhanced SuperSpeed [ 1.091778] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. [ 1.093683] nvme nvme0: missing or invalid SUBNQN field. [ 1.093704] nvme nvme0: Shutdown timeout set to 8 seconds ^ kernel has a dedicated quirk for it NVME_QUIRK_IGNORE_DEV_SUBNQN which (if set) will just ignore it instead of throw a scary warning. Either way (quirk or warning), it then generate a "fake" subnqn that seem to do the same job save for being generic: Warning just means those aren't registered to need that quirk yet (in drivers/nvme/host/pci.c), eventually it may just go away when the list gets updated, end result will be the same. In other words, drives are fine also: ignorieren, harmlos. [ 3.154284] ccp 0000:06:00.2: enabling device (0000 -> 0002) [ 3.154523] ccp 0000:06:00.2: ccp: unable to access the device: you might be running a broken BIOS. [ 3.164678] ccp 0000:06:00.2: tee enabled [ 3.164680] ccp 0000:06:00.2: psp enabled ^ Platform security processor related issue. AGESA bug? normal-user benutzt das nicht, ignorieren. [ 3.308438] [drm] BIOS signature incorrect 0 0 [ 4.014564] thermal thermal_zone0: failed to read out thermal zone (-61) Gleicher Fehler mit K598. [ 4.768931] [drm] Initialized amdgpu 3.38.0 20150101 for 0000:06:00.0 on minor 0 [ 4.789015] EDAC amd64: F17h_M60h detected (node 0). [ 4.789067] EDAC amd64: Node 0: DRAM ECC disabled. [ 4.801615] ------------[ cut here ]------------ [ 4.801695] WARNING: CPU: 4 PID: 592 at drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link.c:2546 dc_link_set_backlight_level+0x92/0xf0 [amdgpu] [ 4.801696] Modules linked in: amd64_edac_mod(-) fjes(-) snd_hda_codec_realtek edac_mce_amd snd_hda_codec_generic snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg snd_hda_codec snd_hda_core snd_hwdep snd_pcm thinkpad_acpi nvram ledtrig_audio snd_seq_midi snd_seq_midi_event snd_rawmidi kvm_amd input_leds kvm iwlmvm mac80211 btusb uvcvideo btrtl btbcm serio_raw videobuf2_vmalloc amdgpu videobuf2_memops crct10dif_pclmul videobuf2_v4l2 libarc4 videobuf2_common snd_seq videodev nls_iso8859_1 snd_seq_device btintel ghash_clmulni_intel snd_timer aesni_intel crypto_simd cryptd glue_helper rapl efi_pstore mc bluetooth iwlwifi iommu_v2 gpu_sched ttm wmi_bmof snd ecdh_generic k10temp ecc ucsi_acpi ccp drm_kms_helper snd_rn_pci_acp3x cec snd_pci_acp3x cfg80211 rc_core i2c_algo_bit fb_sys_fops syscopyarea sysfillrect sysimgblt typec_ucsi typec soundcore joydev mac_hid sch_fq_codel parport_pc ppdev lp parport drm ip_tables x_tables autofs4 crc32_pclmul psmouse xhci_pci xhci_pci_renesas r8169 sdhci_pci [ 4.801722] cqhci sdhci nvme realtek i2c_piix4 nvme_core wmi video i2c_scmi [ 4.801727] CPU: 4 PID: 592 Comm: systemd-backlig Not tainted 5.8.0-28-generic #30~20.04.1-Ubuntu [ 4.801727] Hardware name: LENOVO 20U70006GE/20U70006GE, BIOS R19ET28W (1.12 ) 08/12/2020 [ 4.801778] RIP: 0010:dc_link_set_backlight_level+0x92/0xf0 [amdgpu] [ 4.801779] Code: 30 03 00 00 31 c0 48 8d 96 c0 01 00 00 48 8b 0a 48 85 c9 74 06 4c 3b 61 08 74 22 83 c0 01 48 81 c2 c8 04 00 00 83 f8 06 75 e3 <0f> 0b 45 31 ff 5b 44 89 f8 41 5c 41 5d 41 5e 41 5f 5d c3 48 98 48 [ 4.801780] RSP: 0018:ffffaf27c080fd98 EFLAGS: 00010246 [ 4.801780] RAX: 0000000000000006 RBX: ffff8f8e32c90000 RCX: 0000000000000000 [ 4.801781] RDX: ffff8f8e39a01e70 RSI: ffff8f8e39a00000 RDI: 0000000000000004 [ 4.801781] RBP: ffffaf27c080fdc0 R08: 00000000000000ff R09: 0000000000000003 [ 4.801782] R10: 000000000000000a R11: f000000000000000 R12: ffff8f8e3168e400 [ 4.801782] R13: 0000000000000000 R14: 000000000000ffff R15: 000000000000ff01 [ 4.801783] FS: 00007f13ba8d5980(0000) GS:ffff8f8e3f700000(0000) knlGS:0000000000000000 [ 4.801783] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 4.801784] CR2: 00005595c0bd70a8 CR3: 00000003f4faa000 CR4: 0000000000340ee0 [ 4.801784] Call Trace: [ 4.801840] amdgpu_dm_backlight_update_status+0xb9/0xd0 [amdgpu] [ 4.801843] backlight_device_set_brightness+0x6b/0xd0 [ 4.801844] brightness_store+0x61/0x80 [ 4.801846] dev_attr_store+0x17/0x30 [ 4.801848] sysfs_kf_write+0x3e/0x50 [ 4.801849] kernfs_fop_write+0xda/0x1b0 [ 4.801851] vfs_write+0xc9/0x200 [ 4.801853] ksys_write+0x67/0xe0 [ 4.801854] __x64_sys_write+0x1a/0x20 [ 4.801856] do_syscall_64+0x49/0xc0 [ 4.801857] entry_SYSCALL_64_after_hwframe+0x44/0xa9 [ 4.801858] RIP: 0033:0x7f13bb7831e7 [ 4.801859] Code: 64 89 02 48 c7 c0 ff ff ff ff eb bb 0f 1f 80 00 00 00 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24 [ 4.801859] RSP: 002b:00007ffdcabf6928 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 4.801860] RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007f13bb7831e7 [ 4.801860] RDX: 0000000000000004 RSI: 00007ffdcabf69e0 RDI: 0000000000000004 [ 4.801861] RBP: 00007ffdcabf69e0 R08: 0000000000000004 R09: 0000000000000000 [ 4.801861] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000004 [ 4.801861] R13: 00005595c0bc12d0 R14: 0000000000000004 R15: 00007f13bb85e8a0 [ 4.801863] ---[ end trace 5a1d42beea055d78 ]--- [ 5.532888] [drm] Failed to add display topology, DTM TA is not initialized. ^ backlight code crash. die helligkeitsregelung tut aber spaeter trotzdem...
Ubuntu 20.10
Unklar: Ist 20.10 zu bevorzugen gegenüber 20.04 - besserer HW-Support?
Falls ja: nur wegen neuerem Kernel oder gibt es auch im Userspace Anpassungen?
Solange hier kein wirklicher Vorteil von 20.10 dokumentiert ist, bleibt man wohl lieber bei der 20.04.x LTS - längerer Support == weniger Arbeit mit Updates.
Fazit
Sobald man auf Kernel >= 5.8 geht, funktioniert Ubuntu 20.04.1 prima und ohne großes Gefrickel auf dem ThinkPad L15 AMD Gen1.
Ich hatte nach einer Vorab-Recherche im Internet Schlimmeres erwartet.
Von Lenovo wird die Linux-Kompatibilität / der Ubuntu-Support insbesondere für Geräte mit AMD-CPU auch eher fragwürdig / unzureichend kommuniziert:
- nur beim T14-AMD wird konkret von einer Zertifizierung für Ubuntu 20.04 gesprochen.
- bei der L-Serie wird AMD nicht konkret erwähnt, was verunsichert (nur vergessen? oder bedeutet das "nur Intel"?).
- nur die T-Serie soll es zertifiziert für / vorinstalliert mit 20.04 geben, bei anderen Serien ist von 18.04 die Rede, was verunsichert (tut es mit 20.04 nicht?).
- wenn man nachschaut, was dann auf dem vorinstallierten Gerät zertifiziert läuft, ist da nur von dem vorinstallierten Ubuntu die Rede, aber nicht von einem von ubuntu.com runtergeladenen Ubuntu, was verunsichert (das könnte auch Custom-Kernel oder sonstige umfangreiche Frickelei bei der Vorinstallation bedeuten, die man bei einer frischen Installation vielleicht nur schwer selbst "nachbauen" könnte)