# Acer Aspire V3-371-37AC (touchpad and other hardware)

## hypercube2015

Hello.

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 :

```

-*- 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

```

The rest of hardware is relatively easy to setup, though I think it's better to turn off everything except CONFIG_R8169 in Ethernet driver support and everything except Atheros Wireless Cards in Wireless LAN. Remember to setup CONFIG_MMC_REALTEK_USB, CONFIG_MFD_RTSX_USB and LPC_ICH. MEI and MEI_ME works ok too. In USB Host Controller Drivers enable USB 2.0 (with suboptions), 3.0, Generic EHCI driver, CONFIG_USB_OHCI_HCD and CONFIG_USB_OHCI_HCD_PCI only. Turn on CONFIG_USB_DYNAMIC_MINORS. Turn on CONFIG_GPIO_LYNXPOINT. In addition to usual intel hda kernel drivers turn on CONFIG_SND_SOC_INTEL_SST, CONFIG_SND_SOC_INTEL_HASWELL_MACH, CONFIG_SND_SIMPLE_CARD and codecs from nearby submenu. Turn on kvm. Select Generic-x86-64 as procesor family (CONFIG_GENERIC_CPU).

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

```
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/Linux
```

lspci -v

```

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

```

lsusb

```
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

```

lsmod

```
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

```

Last edited by hypercube2015 on Thu Nov 12, 2015 7:03 pm; edited 5 times in total

----------

## TigerJr

Can you post full dmesg output and your kernel .config and would be great to see dmidecode output

----------

## Freeky

Hi, hypercube2015!

Maybe It can be helpful Archwiki:Acer Aspire V3-371 and Archwiki:Buttonless touchpads (aka ClickPads)

----------

## hypercube2015

 *TigerJr wrote:*   

> Can you post full dmesg output and your kernel .config and would be great to see dmidecode output

 

I'm a bit new to where is better to place all of this - they are big.

EDIT: Here is 4.0.9 kernel config (had more time to test - works very nice for me):

https://bpaste.net/show/898ed421d670

Here is dmidecode output:

https://bpaste.net/show/e582b162d012Last edited by hypercube2015 on Sun Nov 08, 2015 11:13 pm; edited 9 times in total

----------

## hypercube2015

Here is dmesg output (HW error was logged after suspend / resume):

https://bpaste.net/show/2295cd7f5f6d

https://bpaste.net/show/d600a4f97a1fLast edited by hypercube2015 on Sun Nov 08, 2015 8:42 pm; edited 2 times in total

----------

## hypercube2015

 *Freeky wrote:*   

> Hi, hypercube2015!
> 
> Maybe It can be helpful Archwiki:Acer Aspire V3-371 and Archwiki:Buttonless touchpads (aka ClickPads)

 

I didn't have a problem with setting it up to make linux work, but without solving touchpad issue (and I don't see this solution in arch wiki) I believe there is interference between hard drive and touchpad (and probably video subsystem), and I had hdd failure once (had to reboot) before I solved the problem. Don't know if it's the case when touchpad is off. Anyway, thanks.

----------

## lexflex

Hi Hipercube,

 *hypercube2015 wrote:*   

> 
> 
> ....without solving touchpad issue (and I don't see this solution in arch wiki) I believe there is interference between hard drive and touchpad (and probably video subsystem),

 

I have an Aspire V3 working ( not completely sure about the '371' part, it is a intel core i5), with the touchpad working as well. No problems with the touchpad here. 

What issue do you have with the touchpad ?

Alex.

( if any, I have problems with the usb-mouse on certain ports on resume from suspend...).

----------

## hypercube2015

 *hypercube2015 wrote:*   

>  *TigerJr wrote:*   Can you post full dmesg output and your kernel .config and would be great to see dmidecode output 
> 
> I'm a bit new to where is better to place all of this - they are big. Here is kernel config comparison with default config:
> 
> 

 

I already install new kernel but didn't test it properly  yet. I will correct kernel settings soon. You can turn off iscsi related options yourself though.

----------

## hypercube2015

 *lexflex wrote:*   

> Hi Hipercube,
> 
>  *hypercube2015 wrote:*   
> 
> ....without solving touchpad issue (and I don't see this solution in arch wiki) I believe there is interference between hard drive and touchpad (and probably video subsystem), 
> ...

 

My issue was that touchpad made crazy jumps all over the screen until turned off with Fn+F7. After some time after reenabling it did it again.

Also, which usb options in kernel do you have?Last edited by hypercube2015 on Sun Nov 08, 2015 8:26 pm; edited 1 time in total

----------

## lexflex

 *hypercube2015 wrote:*   

> I'm a bit new to where is better to place all of this - they are big. 

 

On  a side note: If they are  too big, you can use wgetpaste:https://wiki.gentoo.org/wiki/Wgetpaste

For example,

```
wgetpaste /var/log/Xorg.0.log
```

 uploades the file and give an url to watch the content....

----------

## hypercube2015

 *lexflex wrote:*   

> On  a side note: If they are  too big, you can use wgetpaste:https://wiki.gentoo.org/wiki/Wgetpaste

 Thanks, will move them there as soon as I test new kernel.

----------

## lexflex

Hypercube,

Some more infoabout my setup: I am not sure what kind of touchpad I have. I do have 'synaptics' in my make.conf:

```
INPUT_DEVICES="evdev synaptics"
```

Also, xf86-input-synaptics installed:

```

alex@Aspire /usr/src/ $ eix xf86-input-synaptics 

[I] x11-drivers/xf86-input-synaptics

     Available versions:  1.7.4 ~1.7.8 1.8.1 ~1.8.2 ~1.8.3 {KERNEL="linux"}

     Installed versions:  1.8.1(11:56:53 PM 10/04/2015)(KERNEL="linux")

     Homepage:            http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/

     Description:         Driver for Synaptics touchpads
```

 *hypercube2015 wrote:*   

> Also, which usb options in kernel do you have?

 

For the options:

```
alex@Aspire /usr/src/linux $ cat .config |grep -i usb

CONFIG_USB_IRDA=m

# CONFIG_BT_HCIBTUSB is not set

CONFIG_BT_HCIBFUSB=m

# CONFIG_USB_SWITCH_FSA9480 is not set

CONFIG_USB_NET_DRIVERS=y

CONFIG_USB_CATC=m

CONFIG_USB_KAWETH=m

CONFIG_USB_PEGASUS=m

CONFIG_USB_RTL8150=m

# CONFIG_USB_RTL8152 is not set

CONFIG_USB_USBNET=m

CONFIG_USB_NET_AX8817X=m

CONFIG_USB_NET_AX88179_178A=m

CONFIG_USB_NET_CDCETHER=m

# CONFIG_USB_NET_CDC_EEM is not set

CONFIG_USB_NET_CDC_NCM=m

# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set

# CONFIG_USB_NET_CDC_MBIM is not set

CONFIG_USB_NET_DM9601=m

# CONFIG_USB_NET_SR9700 is not set

# CONFIG_USB_NET_SR9800 is not set

# CONFIG_USB_NET_SMSC75XX is not set

# CONFIG_USB_NET_SMSC95XX is not set

# CONFIG_USB_NET_GL620A is not set

CONFIG_USB_NET_NET1080=m

# CONFIG_USB_NET_PLUSB is not set

CONFIG_USB_NET_MCS7830=m

# CONFIG_USB_NET_RNDIS_HOST is not set

# CONFIG_USB_NET_CDC_SUBSET is not set

CONFIG_USB_NET_ZAURUS=m

# CONFIG_USB_NET_CX82310_ETH is not set

# CONFIG_USB_NET_KALMIA is not set

# CONFIG_USB_NET_QMI_WWAN is not set

# CONFIG_USB_HSO is not set

# CONFIG_USB_NET_INT51X1 is not set

# CONFIG_USB_IPHETH is not set

# CONFIG_USB_SIERRA_NET is not set

# CONFIG_USB_VL600 is not set

# CONFIG_AT76C50X_USB is not set

CONFIG_USB_ZD1201=m

# CONFIG_USB_NET_RNDIS_WLAN is not set

CONFIG_LIBERTAS_USB=m

# CONFIG_ORINOCO_USB is not set

CONFIG_P54_USB=m

CONFIG_RT2500USB=m

CONFIG_RT73USB=m

# CONFIG_RT2800USB is not set

CONFIG_RT2X00_LIB_USB=m

CONFIG_RTLWIFI_USB=m

# CONFIG_MOUSE_SYNAPTICS_USB is not set

CONFIG_JOYSTICK_IFORCE_USB=y

CONFIG_TABLET_USB_ACECAD=m

CONFIG_TABLET_USB_AIPTEK=m

CONFIG_TABLET_USB_GTCO=m

# CONFIG_TABLET_USB_HANWANG is not set

CONFIG_TABLET_USB_KBTAB=m

CONFIG_TOUCHSCREEN_USB_COMPOSITE=m

CONFIG_TOUCHSCREEN_USB_EGALAX=y

CONFIG_TOUCHSCREEN_USB_PANJIT=y

CONFIG_TOUCHSCREEN_USB_3M=y

CONFIG_TOUCHSCREEN_USB_ITM=y

CONFIG_TOUCHSCREEN_USB_ETURBO=y

CONFIG_TOUCHSCREEN_USB_GUNZE=y

CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y

CONFIG_TOUCHSCREEN_USB_IRTOUCH=y

CONFIG_TOUCHSCREEN_USB_IDEALTEK=y

CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y

CONFIG_TOUCHSCREEN_USB_GOTOP=y

CONFIG_TOUCHSCREEN_USB_JASTEC=y

CONFIG_TOUCHSCREEN_USB_ELO=y

CONFIG_TOUCHSCREEN_USB_E2I=y

CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y

CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y

CONFIG_TOUCHSCREEN_USB_NEXIO=y

CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y

CONFIG_I2C_TINY_USB=m

# CONFIG_MFD_RTSX_USB is not set

CONFIG_SND_USB=y

CONFIG_SND_USB_AUDIO=m

# CONFIG_SND_USB_UA101 is not set

CONFIG_SND_USB_USX2Y=m

CONFIG_SND_USB_CAIAQ=m

CONFIG_SND_USB_CAIAQ_INPUT=y

# CONFIG_SND_USB_US122L is not set

# CONFIG_SND_USB_6FIRE is not set

# CONFIG_SND_USB_HIFACE is not set

# CONFIG_SND_USB_POD is not set

# CONFIG_SND_USB_PODHD is not set

# CONFIG_SND_USB_TONEPORT is not set

# CONFIG_SND_USB_VARIAX is not set

# USB HID support

CONFIG_USB_HID=y

CONFIG_USB_HIDDEV=y

CONFIG_USB_OHCI_LITTLE_ENDIAN=y

CONFIG_USB_SUPPORT=y

CONFIG_USB_COMMON=y

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB=y

CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

# Miscellaneous USB options

CONFIG_USB_DEFAULT_PERSIST=y

# CONFIG_USB_DYNAMIC_MINORS is not set

# CONFIG_USB_OTG is not set

# CONFIG_USB_OTG_WHITELIST is not set

# CONFIG_USB_OTG_FSM is not set

# CONFIG_USB_MON is not set

# CONFIG_USB_WUSB_CBAF is not set

# USB Host Controller Drivers

# CONFIG_USB_C67X00_HCD is not set

CONFIG_USB_XHCI_HCD=y

CONFIG_USB_XHCI_PCI=y

CONFIG_USB_EHCI_HCD=y

# CONFIG_USB_EHCI_ROOT_HUB_TT is not set

# CONFIG_USB_EHCI_TT_NEWSCHED is not set

CONFIG_USB_EHCI_PCI=y

CONFIG_USB_EHCI_HCD_PLATFORM=m

# CONFIG_USB_OXU210HP_HCD is not set

CONFIG_USB_ISP116X_HCD=m

# CONFIG_USB_ISP1362_HCD is not set

# CONFIG_USB_FUSBH200_HCD is not set

# CONFIG_USB_FOTG210_HCD is not set

CONFIG_USB_OHCI_HCD=m

CONFIG_USB_OHCI_HCD_PCI=m

CONFIG_USB_OHCI_HCD_SSB=y

CONFIG_USB_OHCI_HCD_PLATFORM=m

CONFIG_USB_UHCI_HCD=m

CONFIG_USB_U132_HCD=m

CONFIG_USB_SL811_HCD=m

# CONFIG_USB_SL811_HCD_ISO is not set

CONFIG_USB_SL811_CS=m

CONFIG_USB_R8A66597_HCD=m

# CONFIG_USB_HCD_BCMA is not set

CONFIG_USB_HCD_SSB=m

# CONFIG_USB_HCD_TEST_MODE is not set

# USB Device Class drivers

CONFIG_USB_ACM=m

# CONFIG_USB_PRINTER is not set

# CONFIG_USB_WDM is not set

# CONFIG_USB_TMC is not set

# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may

# also be needed; see USB_STORAGE Help for more info

CONFIG_USB_STORAGE=m

# CONFIG_USB_STORAGE_DEBUG is not set

# CONFIG_USB_STORAGE_REALTEK is not set

CONFIG_USB_STORAGE_DATAFAB=m

CONFIG_USB_STORAGE_FREECOM=m

CONFIG_USB_STORAGE_ISD200=m

CONFIG_USB_STORAGE_USBAT=m

CONFIG_USB_STORAGE_SDDR09=m

CONFIG_USB_STORAGE_SDDR55=m

CONFIG_USB_STORAGE_JUMPSHOT=m

CONFIG_USB_STORAGE_ALAUDA=m

# CONFIG_USB_STORAGE_ONETOUCH is not set

CONFIG_USB_STORAGE_KARMA=m

# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set

# CONFIG_USB_STORAGE_ENE_UB6250 is not set

# CONFIG_USB_UAS is not set

# USB Imaging devices

# CONFIG_USB_MDC800 is not set

# CONFIG_USB_MICROTEK is not set

# CONFIG_USBIP_CORE is not set

# CONFIG_USB_MUSB_HDRC is not set

# CONFIG_USB_DWC3 is not set

# CONFIG_USB_DWC2 is not set

# CONFIG_USB_CHIPIDEA is not set

# CONFIG_USB_ISP1760 is not set

# USB port drivers

CONFIG_USB_USS720=m

CONFIG_USB_SERIAL=m

CONFIG_USB_SERIAL_GENERIC=y

# CONFIG_USB_SERIAL_SIMPLE is not set

CONFIG_USB_SERIAL_AIRCABLE=m

CONFIG_USB_SERIAL_ARK3116=m

# CONFIG_USB_SERIAL_BELKIN is not set

CONFIG_USB_SERIAL_CH341=m

CONFIG_USB_SERIAL_WHITEHEAT=m

# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set

# CONFIG_USB_SERIAL_CP210X is not set

# CONFIG_USB_SERIAL_CYPRESS_M8 is not set

# CONFIG_USB_SERIAL_EMPEG is not set

# CONFIG_USB_SERIAL_FTDI_SIO is not set

# CONFIG_USB_SERIAL_VISOR is not set

# CONFIG_USB_SERIAL_IPAQ is not set

# CONFIG_USB_SERIAL_IR is not set

# CONFIG_USB_SERIAL_EDGEPORT is not set

# CONFIG_USB_SERIAL_EDGEPORT_TI is not set

# CONFIG_USB_SERIAL_F81232 is not set

# CONFIG_USB_SERIAL_GARMIN is not set

CONFIG_USB_SERIAL_IPW=m

# CONFIG_USB_SERIAL_IUU is not set

# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set

# CONFIG_USB_SERIAL_KEYSPAN is not set

# CONFIG_USB_SERIAL_KLSI is not set

# CONFIG_USB_SERIAL_KOBIL_SCT is not set

# CONFIG_USB_SERIAL_MCT_U232 is not set

# CONFIG_USB_SERIAL_METRO is not set

CONFIG_USB_SERIAL_MOS7720=m

# CONFIG_USB_SERIAL_MOS7715_PARPORT is not set

CONFIG_USB_SERIAL_MOS7840=m

# CONFIG_USB_SERIAL_MXUPORT is not set

CONFIG_USB_SERIAL_NAVMAN=m

# CONFIG_USB_SERIAL_PL2303 is not set

CONFIG_USB_SERIAL_OTI6858=m

# CONFIG_USB_SERIAL_QCAUX is not set

# CONFIG_USB_SERIAL_QUALCOMM is not set

# CONFIG_USB_SERIAL_SPCP8X5 is not set

# CONFIG_USB_SERIAL_SAFE is not set

# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set

# CONFIG_USB_SERIAL_SYMBOL is not set

# CONFIG_USB_SERIAL_TI is not set

# CONFIG_USB_SERIAL_CYBERJACK is not set

# CONFIG_USB_SERIAL_XIRCOM is not set

CONFIG_USB_SERIAL_WWAN=m

CONFIG_USB_SERIAL_OPTION=m

CONFIG_USB_SERIAL_OMNINET=m

# CONFIG_USB_SERIAL_OPTICON is not set

# CONFIG_USB_SERIAL_XSENS_MT is not set

# CONFIG_USB_SERIAL_WISHBONE is not set

# CONFIG_USB_SERIAL_SSU100 is not set

# CONFIG_USB_SERIAL_QT2 is not set

# CONFIG_USB_SERIAL_DEBUG is not set

# USB Miscellaneous drivers

# CONFIG_USB_EMI62 is not set

# CONFIG_USB_EMI26 is not set

CONFIG_USB_ADUTUX=m

# CONFIG_USB_SEVSEG is not set

# CONFIG_USB_RIO500 is not set

# CONFIG_USB_LEGOTOWER is not set

# CONFIG_USB_LCD is not set

# CONFIG_USB_LED is not set

# CONFIG_USB_CYPRESS_CY7C63 is not set

# CONFIG_USB_CYTHERM is not set

# CONFIG_USB_IDMOUSE is not set

CONFIG_USB_FTDI_ELAN=m

CONFIG_USB_APPLEDISPLAY=m

CONFIG_USB_SISUSBVGA=m

CONFIG_USB_SISUSBVGA_CON=y

# CONFIG_USB_LD is not set

CONFIG_USB_TRANCEVIBRATOR=m

CONFIG_USB_IOWARRIOR=m

# CONFIG_USB_TEST is not set

# CONFIG_USB_EHSET_TEST_FIXTURE is not set

# CONFIG_USB_ISIGHTFW is not set

# CONFIG_USB_YUREX is not set

CONFIG_USB_EZUSB_FX2=m

# CONFIG_USB_HSIC_USB3503 is not set

# CONFIG_USB_LINK_LAYER_TEST is not set

CONFIG_USB_ATM=m

CONFIG_USB_SPEEDTOUCH=m

CONFIG_USB_CXACRU=m

CONFIG_USB_UEAGLEATM=m

CONFIG_USB_XUSBATM=m

# USB Physical Layer drivers

# CONFIG_USB_PHY is not set

# CONFIG_NOP_USB_XCEIV is not set

# CONFIG_USB_ISP1301 is not set

# CONFIG_USB_GADGET is not set

# CONFIG_USB_LED_TRIG is not set

# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)

# CONFIG_BCM_KONA_USB2_PHY is not set

```

----------

## hypercube2015

 *lexflex wrote:*   

> Some more infoabout my setup: I am not sure what kind of touchpad I have. I do have 'synaptics' in my make.conf:
> 
> ```
> INPUT_DEVICES="evdev synaptics"
> ```
> ...

 

I have it too, but it's userland tool, not a kernel driver. You can detect kernel driver by analysing lsmod output, if it's compiled as module, of course.

 *lexflex wrote:*   

> 
> 
> For the options:
> 
> 

 Not a specialist, however you have a lot of different usb drivers loaded and not all of them are compatible, I would suggest you to turn off some of them, you probably don't have CONFIG_USB_SL811_HCD and you have to choose between ohci_hcd and uhci_hcd (if you don't have usb 1.1 you may try to turn off both):

 *kernel help wrote:*   

> CONFIG_USB_OHCI_HCD:
> 
> The Open Host Controller Interface (OHCI) is a standard for accessing
> 
> USB 1.1 host controller hardware.  It does more in hardware than Intel's 
> ...

 

You can do some experiments with trying to find minimal necessary set of usb drivers by loading and unloading their modules.Last edited by hypercube2015 on Sun Nov 08, 2015 9:29 pm; edited 1 time in total

----------

## lexflex

 *Quote:*   

> Not a specialist, however you have a lot of different usb drivers loaded and not all of them are compatible, I would suggest you to turn off some of them...  
> 
> You can do some experiments with trying to find minimal necessary set of usb drivers.

 

Thanks,

I agree, I probably do not have the minimal set .  I started with Genkernel, and added some options along the way. However, the touchpad works as expected.

So, so far, I didn't have the time to start 'removing'  options from the kernel to see if it still works  :Smile: 

Alex.

----------

## hypercube2015

 *lexflex wrote:*   

> So, so far, I didn't have the time to start 'removing'  options from the kernel to see if it still works 
> 
> Alex.

 

You can use modprobe -r to unload usb modules instead of editing kernel config. When you know exact set (or at least module causing problem) you can edit kernel config. Or you can remove all of them and add one by one manually until problem reappear.

----------

## hypercube2015

 *hypercube2015 wrote:*   

> I already install new kernel but didn't test it properly  yet. I will correct kernel settings soon. You can turn off iscsi related options yourself though.

 Seems like CONFIG_I2C_DESIGNWARE_PCI is really needed. Corrected first post.

P.S. Also enabled Acer WMI in 4.1.12, everything is ok so far, when I'm sure it's totally ok I will post kernel and dmesg.

----------

## hypercube2015

To make long story short:

here is kernel configuration: https://bpaste.net/show/411cabe1ac31 (to make bluetooth work you need firmware)

here is dmesg: https://bpaste.net/show/23204330d1e4

here is lsmod: https://bpaste.net/show/5b91bbd1749a

here is lspci -vnn: https://bpaste.net/show/8386f84fc6ae

kernel command line: i8042.nopnp psmouse.proto=imps psmouse.rate=40

(psmouse.proto=exps works too)

CONFIG_X86_INTEL_LPSS, CONFIG_I2C_DESIGNWARE_PLATFORM, CONFIG_I2C_DESIGNWARE_PCI should be turned off.

```
hypercube@hypercube ~ $ eix x11-drivers/xf86-video-intel

[I] x11-drivers/xf86-video-intel

     Available versions:  ~*2.9.1 2.19.0 2.20.13 2.21.15 ~2.99.903 ~2.99.905-r1 ~2.99.906 ~2.99.907-r1 ~2.99.909 ~2.99.910 ~2.99.914 ~2.99.916 2.99.917 ~2.99.917-r1 (~)2.99.917-r2 ~2.99.917_p0_p04_p20150808^ms[1] {debug dri glamor mir (+)sna +udev uxa xvmc}

     Installed versions:  [b]2.99.917-r2[/b](10:02:38 27.11.2015)(dri sna udev -debug -uxa -xvmc)

     Homepage:            http://xorg.freedesktop.org/

     Description:         X.Org driver for Intel cards

hypercube@hypercube ~ $ eix x11-libs/libva-intel-driver

[I] x11-libs/libva-intel-driver

     Available versions:  1.3.0 ~1.4.1 ~1.5.0 ~1.5.1 ~1.6.0 (~)1.6.1 **9999 {X +drm wayland ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}

     Installed versions:  [b]1.6.1[/b](10:05:25 27.11.2015)(X drm -wayland ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")

     Homepage:            http://www.freedesktop.org/wiki/Software/vaapi

     Description:         HW video decode support for Intel integrated graphics

```

here is options from /etc/modprobe.d/alsa.conf (it's important to correctly set up sound card, https://wiki.gentoo.org/wiki/ALSA):

```
...

# Set this to the correct number of cards. (probably 2 should be enough)

options snd cards_limit=4

options snd-hda-intel id=PCH index=0

options snd-hda-intel id=HDMI index=1

```

Also, disable automute in kmix if you use it.

here is /etc/X11/xorg.conf.d/20-intel.conf:

```

Section "Device"

        Identifier      "Device0"

        Driver          "intel"

        Option          "AccelMethod"           "sna"

        Option "TearFree"    "true"

        Option "BackingStore" "false"

        Option "SaveUnders" "off"

EndSection

```

With this configuration there is no way to make touchpad glitch. No freeze after suspend to ram too.

Tested under Xfce and Xfce with kwin --replace and kde.

Another option is to edit driver kernel sources (/usr/src/linux/drivers/input/mouse/psmouse-base.c) to enable synaptics relative protocol. You'll have to change several lines in psmouse_extensions function. 

Change these lines

```
         if (IS_ENABLED(CONFIG_MOUSE_PS2_SYNAPTICS) &&

             (!set_properties || synaptics_init(psmouse) == 0)) {

            return PSMOUSE_SYNAPTICS;

         }

```

to

```
         if (IS_ENABLED(CONFIG_MOUSE_PS2_SYNAPTICS) &&

             (!set_properties || synaptics_init_relative(psmouse) == 0)) {

            return PSMOUSE_SYNAPTICS_RELATIVE;

         }

```

and use psmouse.proto=any instead of imps in kernel command line.

Behaves a bit better than imps, no false clicks, but is not recognized by synclient and there are no taps or two finger scrolling. I also tested case with synaptics relative protocol and not disabling gestures (commented several lines in synaptics.c), but false clicks are still present.

Please note that I'm neither hardware specialist nor manufacturer, so use at your own risk.

P.S. The problem for me was that psmouse didn't autoload, while designware platform + hid_multitouch loaded and touchpad was working. But this solution isn't stable.Last edited by hypercube2015 on Wed Nov 11, 2015 4:42 am; edited 1 time in total

----------

## hypercube2015

Some time have passed, and I figured out some things about my laptop. First of all, the laptop has not so slow video card, but it was overheating really fast even in sauerbraten (on some maps) and warzone2100 (at 1920x1080) up to 95°C, after that throttling strongly lowered fps for some time (and, depending on the kernel config thermal protection could be activated). The solution is very simple, but not obvious.

I placed this in /etc/local.d/brightness.start and in the wakeup acpi handler.

This handler starts when resuming from suspend. To have this script install laptop_mode_tools, no need to start it though.

```
echo -n 1 > /sys/class/powercap/intel-rapl\:0\:0/enabled

echo -n 1 > /sys/class/powercap/intel-rapl\:0\:1/enabled

echo -n 1 > /sys/class/powercap/intel-rapl\:0\:2/enabled

```

UPDATE: Later I noticed that turning rapl for every device in package makes laptop run at min performance, still it prevents overheating.

With rapl enabled games run much better. I also tested this solution on my old lenovo thinkpad e130 - and it's working fine there too.

You may want to turn off plasma transparency effect as it somehow affects temperature in games even if compositing is blocked by application rules (but effects are not turned off completely).

Touchpad is still making tricks on unmodified synaptics driver, but overall behaviour is much better, it's not jumping weirdly all over the screen any more.

UPDATE: MEI_ME does not complain about hbm anymore, and x2apic is on. For some reason P-State always show that processor is always at 800Mhz, if you don't like it you can use ACPI P-States (a bit less efficient) intead of Intel P-States driver.

Message "BAR 6 has bogus alignment" is solved by CONFIG_PCI_REALLOC_ENABLE_AUTO and CONFIG_PCI_IOV.

Here is kernel 4.4.6 config, dmesg and lsmod output.

Turn on DRI3:

/etc/X11/xorg.cong.d/20-intel.conf

```
Section "Device"

        Identifier      "Device0"

        Driver          "intel"

        Option          "AccelMethod"           "sna"

        Option          "DRI"    "3"

        Option          "TearFree"    "true"

        Option          "Tiling"                "false"

        Option          "BackingStore" "false"

EndSection
```

Kernel command line:

```
i8042.nopnp psmouse.proto=any psmouse.rate=40 i915.use_mmio_flip=1
```

Now everything seems to work fine except touchpad, it is inconvenient to reenable it all the time, but I don't use it often. Seems to be common problem for this laptop solved by BIOS update: http://community.acer.com/t5/V-and-VN-Series-Laptops/Aspire-V3-371-Touchpad-Freezing/td-p/293690.

----------

