Lenovo IdeaPad Flex 10
The Lenovo Flex 10 is a flexible dual-mode laptop computer with a 10.1" screen released in 2014. It comes preinstalled with Windows 8/8.1. The Flex 10 hardware is well supported in recent Linux kernels and enjoys good driver support for most of its components.
$ lspci 00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0e) 00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0e) 00:13.0 SATA controller: Intel Corporation Device 0f23 (rev 0e) 00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB xHCI (rev 0e) 00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0e) 00:1b.0 Audio device: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller (rev 0e) 00:1c.0 PCI bridge: Intel Corporation Device 0f48 (rev 0e) 00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0e) 00:1f.3 SMBus: Intel Corporation Device 0f12 (rev 0e) 01:00.0 Network controller: Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01)
$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 005: ID 04f3:024b Elan Microelectronics Corp. Bus 001 Device 006: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0 Bus 001 Device 003: ID 05e3:0610 Genesys Logic, Inc. 4-port hub Bus 001 Device 002: ID 13d3:5614 IMC Networks Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Before installing any other OS (other than the default Windows 8/8.1) it is required to disable the secure boot option in the boot setup menu.
Works out of the box with.
Does not work out of the box with ., the default behavior receives screen gestures as clicks, and registers scrolls as marking text. It is not yet clear whether xinput can emulate scrolling with evdev touch events at all
When suspending to RAM with ALPM
link_power_management_policy set to anything else than
max_performance the device tends to lose connection to SATA storage devices at least while running kernel version 3.18.6. This can be observed for example by entering a virtual console and executing
systemctl suspend there. Even before the device enters to suspend state ATA related messages can be seen on the console and the device hangs on resume.
Check current policys with:
cat /sys/class/scsi_host/host0/link_power_management_policy /sys/class/scsi_host/host1/link_power_management_policy
Change policys to max_performance before suspending to RAM:
echo max_performance > /sys/class/scsi_host/host0/link_power_management_policy echo max_performance > /sys/class/scsi_host/host1/link_power_management_policy
The easiest workaround is to use TLP for power management governing with max_performance set for both SATA ALPM settings in
# SATA aggressive link power management (ALPM): # min_power, medium_power, max_performance SATA_LINKPWR_ON_AC=max_performance SATA_LINKPWR_ON_BAT=max_performance
The Elan touchscreen in the Flex does not cope well with USB power management while running on Linux kernel version 3.18.6.
Enabling automatic power control for the usb device will immedietly result the touchscreen to stop responding to input. Your usb device ids may vary.
echo auto > '/sys/bus/usb/devices/1-4.4/power/control';
It seems to be possible to get the touchscreen back on it's feet by simply setting always power on option with
echo on > '/sys/bus/usb/devices/1-4.4/power/control';
Also after suspend or hibernate resume the touchscreen may appear as not responding. Weird enough just by reading some input from /dev/input/mouse1 will get it back to working.
# dd if=/dev/input/mouse1 of=/dev/null bs=10 count=1
At the moment there is no known real touch input support in addition to the plain mouse emulation.