Lenovo Yoga 7i

From ArchWiki
Hardware PCI/USB ID Working?
GPU 8086:9a49 Yes
8086:46a6 Yes
WiFi 8086:a0f0 Yes
8086:51f0 Yes
Bluetooth 8087:0026 Yes
8087:0033 Yes
Audio 8086:a0c8 Yes
8086:51c8 Yes
Webcam 5986:212a Yes
5986:2146 Yes
Keyboard Yes
Touchpad Yes
Touchscreen Yes
Active pen Yes
Fingerprint reader 27c6:55b4 Yes

This page provides information for the Gen 6 and Gen 7 version of the Intel-equipped Yoga 7 laptops.

Many of these points mentioned here should also be applicable to Gen 8 versions. See Lenovo Yoga 7i Gen 8 (16IRL8) for details on one specific Yoga 7i Gen 8 model.

Installation

If you see Possibly missing firmware for module xhci_pci when you run mkinitcpio, you can safely ignore the message as this laptop does not have a Renesas USB3 controller. See Mkinitcpio#Possibly missing firmware for module XXXX for details.

Accessibility

The speakers do not work out of the box (see below), so in particular speech-aided installation is not possible.

Power management

Control Power Saving Modes

Install power-profiles-daemon and then enable/start power-profiles-daemon.service.

Desktop environments will then detect support for it.

Activating S3 sleep

In order to support "Windows Modern Standby", the BIOS does not advertise S3 sleep (suspend to RAM), as discussed in detail in this forum post.

Follow DSDT#Recompiling it yourself to patch the DSDT table with the following patch:

--- dsdt.dsl
+++ dsdt.dsl
@@ -18,7 +18,7 @@
  *     Compiler ID      "INTL"
  *     Compiler Version 0x20210105 (539033861)
  */
-DefinitionBlock ("", "DSDT", 2, "LENOVO", "CB-01   ", 0x00000002)
+DefinitionBlock ("", "DSDT", 2, "LENOVO", "CB-01   ", 0x00000003)
 {
     External (_GPE.AL6F, MethodObj)    // 0 Arguments
     External (_GPE.P0L6, MethodObj)    // 0 Arguments
@@ -516,7 +516,7 @@

     Name (SS1, Zero)
     Name (SS2, Zero)
-    Name (SS3, Zero)
+    Name (SS3, One)
     Name (SS4, One)
     OperationRegion (GNVS, SystemMemory, 0x45AB8018, 0x0A9B)
     Field (GNVS, AnyAcc, Lock, Preserve)

See Power management/Suspend and hibernate#Changing suspend method for more details on the general context.

Battery conservation mode

See Laptop/Lenovo#Battery conservation mode.

Function keys

Key Visible?1 Marked?2 Effect
Fn+Esc No Yes Enables Fn lock
F1 Yes Yes XF86AudioMute
F2 Yes Yes XF86AudioLowerVolume
F3 Yes Yes XF86AudioRaiseVolume
F4 Yes Yes XF86AudioMicMute
F5 Yes Yes XF86MonBrightnessDown, see below
F6 Yes Yes XF86MonBrightnessUp, see below
F7 Yes Yes Super+p
F8 Yes3 Yes XF86RFKill, toggles soft-block wifi and bluetooth
F9 Yes Yes Super+i
F10 Yes Yes Super+l
F11 Yes Yes Ctrl+Alt+Tab
F12 Yes Yes XF86Calculator
Ins No Yes Opens Lenovo Vantage on Windows, not usable on Linux
Print Yes Yes Mod+Shift+s
Fn+Space No Yes Change keyboard backlight level
  1. The key is visible to xev and similar tools
  2. The physical key has a symbol on it, which describes its function
  3. systemd-logind handles this by default

Brightness keys

The brightness hotkeys only emit signals after resuming from suspend-to-RAM or hibernation, but not after (re)booting. This is because they depend on initialization by an ACPI method which is called when resuming from a sleep state but not on boot.

This should be fixed in kernel 6.2.x: https://bugzilla.kernel.org/show_bug.cgi?id=214899

Speaker audio

Install all the packages listed by ALSA firmware.

If your speakers sound tinny due to ALSA only using the tweeters, use the snd-sof-intel-hda-common hda_model=alc287-yoga9-bass-spk-pin kernel module parameter.

Tablet PC

Install iio-sensor-proxy to get the accelerometer working and enable support for screen rotation in Destop Environments such as GNOME or KDE.

Check out Tablet PC for more information.

GNOME Screen Rotation

See Tablet PC#With GNOME 2.

Fingerprint reader

There is experimental support for the Goodix 55b4 fingerprint reader this laptop ships with. Thanks to the Goodix Fingerprint Discord.

Note: If you are dual-booting, Windows will reflash the reader every time you boot Windows and then it will not work in Linux until you flash it again (but this does not clear enrolled fingerprints). So it's best to pick one OS to use the fingerprint reader in. You can disable the reader in Device Manager in Windows to prevent reflashing.

To get it working:

  1. Install fprintd and libfprint-goodixtls-55x4AUR
  2. Follow the instructions at https://github.com/goodix-fp-linux-dev/goodix-fp-dump#how-to-use-it to reflash the firmware of the fingerprint reader
  3. Start the fprintd service for the first time and enroll fingerprints in your DE or following instructions in fprint

There is a known issue with this experimental driver where sometimes after a long sleep mode period you will need to restart the fprintd service to get it working again.

Screen flickering

If you see screen flickering or stuttering, follow the instructions at Intel graphics#Screen flickering.