EDIT: Kernel configuration obtained by further experimenting can be found later in this thread, and command line turned out to be different. See this message.
I recently bought an Acer Aspire V3-371-37AC laptop (equipped with Intel Iris 5100) and like many other people found out touchpad issue. It turned out to be suprisingly hard to at least identify the nature of problem in order to solve it. It was my mistake, the laptop had already preinstalled linux (without a DE though), and i did't try to obtain kernel settings from there because I wanted to start using laptop as fast as possible, so I deleted everything from hard drive while installing gentoo. Don't repeat that, because I lost several days trying to figure out how to get rid of touchpad issue.
So here I will place key moments about setting up this laptop hardware that I couldn't find anywhere in net. Please also note that I'm mainly a programmer, not a hardware or linux internals specialist, so most of this was obtained through experimenting with kernel settings and there may be better configuration or I could have missed something important.
First of all, to turn on this touchpad kernel drivers you have to enable hid_multitouch and designware i2c. To do that enable first intel low power subsystem (CONFIG_X86_INTEL_LPSS, CONFIG_I2C_DESIGNWARE_PLATFORM, CONFIG_I2C_DESIGNWARE_PCI, CONFIG_I2C_HID). I also turned off raw hid access, don't know if it's important though.
Turn off everything in Device Drivers / Input device support / Mice as this is not an elantech or synaptics touchpad. In Device Drivers / I2C support / I2C support / I2C Hardware Bus support turn off everything except Synopsys DesignWare Platform and Synopsys DesignWare PCI.
Next go to Device Drivers / Serial ATA and Parallel ATA drivers (libata) and turn off ATA SFF support. Also turn off all raid drivers (CONFIG_MD). For some reason this lead to touchpad problems, probably because of close addresses of sata contoller and smbus. Also turn on only ACPI Processor P-States driver(CONFIG_X86_ACPI_CPUFREQ) and don't turn on Intel P states, Intel idle or Intel PowerClamp driver - this leads to touchpad issue when GPU is overheated and does throttling (not absolutely sure about all of them, you can test it yourself if you managed to get stable touchpad behaviour).
In Device Drivers / I2C support / I2C support :
Code: Select all
-*- I2C support
<M> I2C device interface
< > I2C bus multiplexing support
[*] Autoselect pertinent helper modules
I2C Hardware Bus support --->
< > I2C/SMBus Test Stub
[ ] I2C slave support
Full list of modules can be found at the end of this post, so take a look at it. Kernel drivers for every device can be found in lspci -v output.
With this kernel command line, touchpad is really stable and doesn't react to pressing near it on my laptop:
i915.nuclear_pageflip=Y i915.enable_rc6=1 i915.enable_fbc=1 i915.lvds_use_ssc=0 i915.enable_ips=0 i915.modeset=1 i915.lvds_channel_mode=2
I also noticed that after glitching touchpad tends to keep this behaviour for some time even with good settings.
mcelog complains about Cache level-2 error after suspend / resume, looks like not affecting anything though. I also had some troubles with laptop mode tools trying to disable ethernet, so I disabled all it's modules except hard drive power save. I also turned off acpid.
Hope I didn't forget something important and I'm still experimenting. Feedback is appreciated.
EDIT: Kernel configuration obtained by further experimenting can be found later in this thread, and command line turned out to be different. See this message.
Outputs:
uname -a
Code: Select all
Linux hypercube 4.0.9-gentoo #18 SMP PREEMPT Thu Nov 5 05:01:24 EET 2015 x86_64 Intel(R) Core(TM) i3-4158U CPU @ 2.00GHz GenuineIntel GNU/LinuxCode: Select all
00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 09)
Subsystem: Acer Incorporated [ALI] Haswell-ULT DRAM Controller
Flags: bus master, fast devsel, latency 0
Capabilities: [e0] Vendor Specific Information: Len=0c <?>
00:02.0 VGA compatible controller: Intel Corporation Device 0a2e (rev 09) (prog-if 00 [VGA controller])
Subsystem: Acer Incorporated [ALI] Device 0918
Flags: bus master, fast devsel, latency 0, IRQ 42
Memory at b0000000 (64-bit, non-prefetchable) [size=4M]
Memory at a0000000 (64-bit, prefetchable) [size=256M]
I/O ports at 4000 [size=64]
Expansion ROM at <unassigned> [disabled]
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [d0] Power Management version 2
Capabilities: [a4] PCI Advanced Features
Kernel driver in use: i915
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 09)
Subsystem: Acer Incorporated [ALI] Haswell-ULT HD Audio Controller
Flags: bus master, fast devsel, latency 0, IRQ 47
Memory at b0710000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
Kernel driver in use: snd_hda_intel
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04) (prog-if 30 [XHCI])
Subsystem: Acer Incorporated [ALI] 8 Series USB xHCI HC
Flags: bus master, medium devsel, latency 0, IRQ 45
Memory at b0700000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [70] Power Management version 2
Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
Kernel driver in use: xhci_hcd
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
Subsystem: Acer Incorporated [ALI] 8 Series HECI
Flags: bus master, fast devsel, latency 0, IRQ 48
Memory at b0718000 (64-bit, non-prefetchable) [size=32]
Capabilities: [50] Power Management version 3
Capabilities: [8c] MSI: Enable+ Count=1/1 Maskable- 64bit+
Kernel driver in use: mei_me
Kernel modules: mei_me
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
Subsystem: Acer Incorporated [ALI] 8 Series HD Audio Controller
Flags: bus master, fast devsel, latency 0, IRQ 46
Memory at b0714000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 3
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: snd_hda_intel
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 40
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 00003000-00003fff
Memory behind bridge: b0600000-b06fffff
Prefetchable memory behind bridge: 00000000b0400000-00000000b04fffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: Acer Incorporated [ALI] 8 Series PCI Express Root Port 3
Capabilities: [a0] Power Management version 3
Capabilities: [100] #00
Capabilities: [200] L1 PM Substates
Kernel driver in use: pcieport
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 41
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
Memory behind bridge: b0500000-b05fffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: Acer Incorporated [ALI] 8 Series PCI Express Root Port 4
Capabilities: [a0] Power Management version 3
Capabilities: [100] #00
Capabilities: [200] L1 PM Substates
Kernel driver in use: pcieport
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04) (prog-if 20 [EHCI])
Subsystem: Acer Incorporated [ALI] 8 Series USB EHCI
Flags: medium devsel, IRQ 23
Memory at b071c000 (32-bit, non-prefetchable) [size=1K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Debug port: BAR=1 offset=00a0
Capabilities: [98] PCI Advanced Features
Kernel driver in use: ehci-pci
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
Subsystem: Acer Incorporated [ALI] 8 Series LPC Controller
Flags: bus master, medium devsel, latency 0
Capabilities: [e0] Vendor Specific Information: Len=0c <?>
Kernel driver in use: lpc_ich
Kernel modules: lpc_ich
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04) (prog-if 01 [AHCI 1.0])
Subsystem: Acer Incorporated [ALI] 8 Series SATA Controller 1 [AHCI mode]
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 43
I/O ports at 4088 [size=8]
I/O ports at 4094 [size=4]
I/O ports at 4080 [size=8]
I/O ports at 4090 [size=4]
I/O ports at 4060 [size=32]
Memory at b071b000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [70] Power Management version 3
Capabilities: [a8] SATA HBA v1.0
Kernel driver in use: ahci
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
Subsystem: Acer Incorporated [ALI] 8 Series SMBus Controller
Flags: medium devsel, IRQ 11
Memory at b0719000 (64-bit, non-prefetchable) [size=256]
I/O ports at 4040 [size=32]
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)
Subsystem: Acer Incorporated [ALI] RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Flags: bus master, fast devsel, latency 0, IRQ 44
I/O ports at 3000 [size=256]
Memory at b0600000 (64-bit, non-prefetchable) [size=4K]
Memory at b0400000 (64-bit, prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Endpoint, MSI 01
Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
Capabilities: [d0] Vital Product Data
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00
Capabilities: [170] Latency Tolerance Reporting
Kernel driver in use: r8169
02:00.0 Network controller: Qualcomm Atheros AR9462 Wireless Network Adapter (rev 01)
Subsystem: Foxconn International, Inc. AR9462 Wireless Network Adapter
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at b0500000 (64-bit, non-prefetchable) [size=512K]
Expansion ROM at b0580000 [disabled] [size=64K]
Capabilities: [40] Power Management version 2
Capabilities: [50] MSI: Enable- Count=1/4 Maskable+ 64bit+
Capabilities: [70] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 00-00-00-00-00-00-00-00
Kernel driver in use: ath9k
Kernel modules: ath9k
Code: Select all
Bus 003 Device 002: ID 8087:8000 Intel Corp.
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 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 004: ID 04f2:b469 Chicony Electronics Co., Ltd
Bus 001 Device 003: ID 0489:e076 Foxconn / Hon Hai
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Code: Select all
Module Size Used by
nf_log_ipv4 4149 5
nf_log_common 2826 1 nf_log_ipv4
xt_LOG 1199 5
nf_nat_ftp 1676 0
nf_nat 11498 1 nf_nat_ftp
intel_rapl 9789 0
iosf_mbi 2746 1 intel_rapl
x86_pkg_temp_thermal 4631 0
rtsx_usb_sdmmc 12448 0
mmc_core 89081 1 rtsx_usb_sdmmc
uvcvideo 73803 0
videobuf2_vmalloc 4678 1 uvcvideo
videobuf2_memops 1671 1 videobuf2_vmalloc
videobuf2_core 33531 1 uvcvideo
rtsx_usb_ms 7267 0
memstick 6512 1 rtsx_usb_ms
v4l2_common 3438 1 videobuf2_core
rtsx_usb 7919 2 rtsx_usb_sdmmc,rtsx_usb_ms
videodev 121624 3 uvcvideo,v4l2_common,videobuf2_core
hid_multitouch 9857 0
coretemp 5884 0
kvm_intel 139742 0
kvm 410444 1 kvm_intel
r8169 68728 0
ath9k 101834 0
ath9k_common 19714 1 ath9k
ath9k_hw 409177 2 ath9k_common,ath9k
ath 18907 3 ath9k_common,ath9k,ath9k_hw
mii 4003 1 r8169
8250_dw 5811 0
8250 49163 1 8250_dw
serial_core 21576 1 8250
dw_dmac 2402 0
snd_soc_sst_acpi 2863 0
snd_soc_rt5640 74339 0
dw_dmac_core 14417 1 dw_dmac
gpio_lynxpoint 4405 0
i2c_hid 10787 0
mei_me 10707 0
snd_soc_rl6231 1402 1 snd_soc_rt5640
mei 48896 1 mei_me
lpc_ich 14080 0
soc_button_array 2082 0
ext3 178745 0
ext2 61032 0


