Lenovo IdeaPad Flex 5 13IML05 Chromebook
The Lenovo IdeaPad Flex 5 13IML05 Chromebook is a Chromebook released in 2020. [1] The code name of this Chromebook is Akemi.
This Chromebook should not be confused with the Lenovo IdeaPad Flex 5 13ITL6 Chromebook released in 2021. [2]
Hardware
Standard
Device | Make/model | Status | Vendor ID / Product ID | Kernel driver(s) | Kernel version | Notes |
---|---|---|---|---|---|---|
CPU | Intel® Core™ i3-10110U | Works | N/A | N/A | 6.6.13 | |
GPU | Intel Corporation CometLake-U GT2 [UHD Graphics] | Works | 8086:9b41 | i915 | 6.6.13 | |
SSD | Samsung Electronics Co Ltd NVMe SSD Controller 980 | Works | 144d:a809 | nvme | 6.6.13 | |
MicroSD card reader | Intel Corporation Comet Lake PCH-LP SCS3 | Works | 8086:02f5 | sdhci-pci | 6.6.13 | |
USB Ports | Intel Corporation Comet Lake PCH-LP USB 3.1 xHCI Host Controller | Works | N/A | xhci_hcd | 6.6.13 | |
Wi-Fi | Intel® Wi-Fi 6 AX201 | Works | 8086:02f0 | iwlwifi | 6.6.13 | The card is affected by a bug. |
Bluetooth | Intel® Wi-Fi 6 AX201 | Works | 8087:0026 | btusb | 6.6.13 | |
Speakers | Intel Corporation Comet Lake PCH-LP cAVS | Works | 8086:02c8 | sof-audio-pci-intel-cnl | 6.6.13 | |
Microphone | Intel Corporation Comet Lake PCH-LP cAVS | Works | N/A | sof-audio-pci-intel-cnl | 6.6.13 | |
3.5mm jack | Intel Corporation Comet Lake PCH-LP cAVS | Works | N/A | sof-audio-pci-intel-cnl | 6.6.13 | |
Touchpad | N/A | Works | 06cb:cde1 | N/A | 6.6.13 | |
Touchscreen | N/A | Works | 27c6:0e32 | N/A | 6.6.13 | |
Webcam | Syntek Integrated Camera | Works | 174f:244f | uvcvideo | 6.6.13 | |
Accelerometer | N/A | Works | N/A | N/A | 6.6.38 |
Accessories
Device | Make/model | Status | Bus ID | Kernel driver(s) | Kernel version | Notes |
---|---|---|---|---|---|---|
Stylus | N/A | Not tested | N/A | N/A | N/A |
Installation
Installing the operating system on this Chromebook requires flashing the UEFI firmware.
Gentoo LiveGUI USB Image
Sound
The following script automatically re-logins the user, causing running applications to stop working. Save any changes before running the script to prevent data loss.
The script requires root privileges.
By default, the sound card is disabled, there is no output to the speakers and there is no way to connect a Bluetooth headset. The image does not contain required firmware blobs, so it is necessary to install them. The following script installs the blobs and configures PipeWire to use the sound card.
#!/bin/bash
emerge --sync
emerge sof-firmware
rmmod snd_sof_pci_intel_cnl
modprobe snd_sof_pci_intel_cnl
echo "media-video/pipewire pipewire-alsa" > /etc/portage/package.use/pipewire
emerge pipewire
usermod -aG pipewire gentoo
mkdir -p /etc/pipewire/pipewire.conf.d
cat <<EOF > /etc/pipewire/pipewire.conf.d/alsa.conf
context.objects = [
{ factory = adapter
args = {
factory.name = api.alsa.pcm.sink
node.name = "alsa-sink"
node.description = "PCM Sink"
media.class = "Audio/Sink"
api.alsa.path = "hw:0,5"
}
}
{ factory = adapter
args = {
factory.name = api.alsa.pcm.source
node.name = "alsa-source"
node.description = "PCM Source"
media.class = "Audio/Source"
api.alsa.path = "plughw:0,1"
}
}
]
EOF
rc-service bluetooth start
loginctl terminate-user gentoo
Firmware
WiFi, Bluetooth, GPU blobs:
root #
emerge --ask sys-kernel/linux-firmware
- iwlwifi-QuZ-a0-hr-b0-77.ucode
- intel/ibt-19-0-4.sfi
- intel/ibt-19-0-4.ddc
- i915/kbl_dmc_ver1_04.bin
Sound blobs:
root #
emerge --ask sys-firmware/sof-firmware
- intel/sof/community/sof-cml.ri
- intel/sof-tplg/sof-cml-rt5682-max98357a.tplg
CPU blobs:
root #
emerge --ask sys-firmware/intel-microcode
- intel-ucode/06-8e-0c
Kernel
Device Drivers ---> Generic Driver Options ---> Firmware loader ---> -*- Firmware loading facility (intel-ucode/06-8e-0c iwlwifi-QuZ-a0-hr-b0-77.ucode intel/ibt-19-0-4.sfi intel/ibt-19-0-4.ddc intel/sof/community/sof-cml.ri intel/sof-tplg/sof-cml-rt5682-max98357a.tplg i915/kbl_dmc_ver1_04.bin) External firmware blobs to build into the kernel binary Search for <code>CONFIG_EXTRA_FIRMWARE</code> to find this item. (/lib/firmware) Firmware blobs root directory Search for <code>CONFIG_EXTRA_FIRMWARE_DIR</code> to find this item.
Device Drivers ---> Graphics support ---> Frame buffer Devices ---> [*] Support for frame buffer devices Search for <code>CONFIG_FB</code> to find this item. [*] Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) Search for <code>CONFIG_DRM</code> to find this item. [*] Intel 8xx/9xx/G3x/G4x/HD Graphics Search for <code>CONFIG_DRM_I915</code> to find this item. [*] Enable legacy fbdev support for your modesetting driver Search for <code>CONFIG_DRM_FBDEV_EMULATION</code> to find this item.
Device Drivers --->
NVME Support --->
[*] NVM Express block device Search for <code>CONFIG_BLK_DEV_NVME</code> to find this item.
Device Drivers ---> [*] Network device support ---> [*] Wireless LAN ---> [*] Intel devices Search for <code>CONFIG_WLAN_VENDOR_INTEL</code> to find this item. [*] Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) Search for <code>CONFIG_IWLWIFI</code> to find this item. [*] Intel Wireless WiFi MVM Firmware support Search for <code>CONFIG_IWLMVM</code> to find this item.
Device Drivers ---> I2C support ---> -*- I2C support I2C Hardware Bus support ---> [*] Intel 82801 (ICH/PCH) Search for <code>CONFIG_I2C_I801</code> to find this item. [*] Synopsys DesignWare Platform Search for <code>CONFIG_I2C_DESIGNWARE_PLATFORM</code> to find this item. [*] Synopsys DesignWare PCI Search for <code>CONFIG_I2C_DESIGNWARE_PCI</code> to find this item. HID bus support ---> --- HID bus support [*] I2C HID support ---> [*] HID over I2C transport layer ACPI driver Search for <code>CONFIG_I2C_HID_ACPI</code> to find this item.
Device Drivers --->
HID bus support --->
--- HID bus support
[*] Generic HID driver Search for <code>CONFIG_HID_GENERIC</code> to find this item.
Device Drivers --->
HID bus support --->
--- HID bus support
Special HID drivers --->
[*] Synaptics RMI4 device support Search for <code>CONFIG_HID_RMI</code> to find this item.
Device Drivers --->
HID bus support --->
--- HID bus support
USB HID support --->
[*] USB HID transport layer Search for <code>CONFIG_USB_HID</code> to find this item.
Device Drivers ---> -*- Pin controllers ---> Intel pinctrl drivers ---> [*] Intel Cannon Lake PCH pinctrl and GPIO driver Search for <code>CONFIG_PINCTRL_CANNONLAKE</code> to find this item. [*] Sound card support ---> [*] Advanced Linux Sound Architecture ---> HD-Audio ---> [*] Build HDMI/DisplayPort HD-audio codec support Search for <code>CONFIG_SND_HDA_CODEC_HDMI</code> to find this item. [*] ALSA for SoC audio support ---> [*] Sound Open Firmware Support ---> [*] SOF PCI enumeration support Search for <code>CONFIG_SND_SOC_SOF_PCI</code> to find this item. [*] SOF support for Intel audio DSPs Search for <code>CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL</code> to find this item. [*] SOF support for CometLake Search for <code>CONFIG_SND_SOC_SOF_COMETLAKE</code> to find this item. [*] SOF support for HDA Links(HDA/HDMI) Search for <code>CONFIG_SND_SOC_SOF_HDA_LINK</code> to find this item. [*] SOF support for HDAudio codecs Search for <code>CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC</code> to find this item. -*- Intel Machine drivers ---> [*] SOF with rt5682 codec in I2S Mode Search for <code>CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH</code> to find this item.
Device Drivers ---> Multimedia support ---> --- Multimedia support Media core support ---> [*] Video4Linux core Search for <code>CONFIG_VIDEO_DEV</code> to find this item. Media drivers ---> [*] Media USB Adapters ---> --- Media USB Adapters [*] USB Video Class (UVC) Search for <code>CONFIG_USB_VIDEO_CLASS</code> to find this item.
Device Drivers ---> [*] Platform support for Chrome hardware ---> [*] ChromeOS Embedded Controller Search for <code>CONFIG_CROS_EC</code> to find this item. [*] ChromeOS Embedded Controller (LPC) Search for <code>CONFIG_CROS_EC_LPC</code> to find this item. [*] ChromeOS EC MEMS Sensor Hub Search for <code>CONFIG_CROS_EC_SENSORHUB</code> to find this item. [*] Industrial I/O support ---> [*] ChromeOS EC Sensors Core Search for <code>CONFIG_IIO_CROS_EC_SENSORS_CORE</code> to find this item. [*] ChromeOS EC Contiguous Sensor Search for <code>CONFIG_IIO_CROS_EC_SENSORS</code> to find this item.
The accelerometer can be tested by running the following command:
user $
cat /sys/bus/iio/devices/iio\:device0/in_accel_x_raw
Configuration
Sound
The user must belong to the audio and pipewire groups, otherwise the daemon will not connect to the sink.
Install media-video/pipewire with the following USE flags: sound-server, pipewire-alsa, bluetooth (optional).
The sound doesn't work out of the box, so you have to manually specify the sink and source. In the case of Bluetooth or 3.5mm jack, no additional configuration is required.
context.objects = [
{ factory = adapter
args = {
factory.name = api.alsa.pcm.sink
node.name = "alsa-sink"
node.description = "PCM Sink"
media.class = "Audio/Sink"
api.alsa.path = "hw:0,5"
}
}
{ factory = adapter
args = {
factory.name = api.alsa.pcm.source
node.name = "alsa-source"
node.description = "PCM Source"
media.class = "Audio/Source"
api.alsa.path = "plughw:0,1"
}
}
]