View previous topic :: View next topic |
Author |
Message |
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 7:35 am Post subject: Kernel not recognizing touchpad Acer Swift 3 |
|
|
Hello, I was trying to install Gentoo to my new laptop.
Since I have used Gentoo for quite a time so everything works after a few struggling.
However, I still cannot get my touchpad working, which is supposed to be a ELAN Touchpad.
Kernel continues to recognize it as a "Generic Logitech Mouse", which doesn't support two finger scrolling.
My laptop model is Acer Swift 3 2022 with a I7-1260P.
Here is my
Code: |
0000:00:00.0 Host bridge: Intel Corporation Device 4621 (rev 02)
Subsystem: Acer Incorporated [ALI] Device 1612
Kernel driver in use: igen6_edac
Kernel modules: igen6_edac
0000:00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
Subsystem: Acer Incorporated [ALI] Alder Lake-P Integrated Graphics Controller
Kernel driver in use: i915
0000:00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
Subsystem: Acer Incorporated [ALI] Alder Lake Innovation Platform Framework Processor Participant
0000:00:05.0 Multimedia controller: Intel Corporation Device 465d (rev 02)
Subsystem: Acer Incorporated [ALI] Device 1612
0000:00:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
Subsystem: Acer Incorporated [ALI] 12th Gen Core Processor PCI Express x4 Controller
Kernel driver in use: pcieport
0000:00:07.0 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 02)
Subsystem: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:07.2 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #2 (rev 02)
Subsystem: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:08.0 System peripheral: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator (rev 02)
Subsystem: Acer Incorporated [ALI] 12th Gen Core Processor Gaussian & Neural Accelerator
0000:00:0d.0 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller (rev 02)
Subsystem: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller
Kernel driver in use: xhci_hcd
0000:00:0d.2 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 (rev 02)
Subsystem: Intel Corporation Alder Lake-P Thunderbolt 4 NHI
0000:00:0d.3 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #1 (rev 02)
Subsystem: Intel Corporation Alder Lake-P Thunderbolt 4 NHI
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller
Subsystem: Acer Incorporated [ALI] Volume Management Device NVMe RAID Controller
Kernel driver in use: vmd
0000:00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH USB 3.2 xHCI Host Controller
Kernel driver in use: xhci_hcd
0000:00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH Shared SRAM
0000:00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
Subsystem: Rivet Networks Alder Lake-P PCH CNVi WiFi
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
0000:00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH Serial IO I2C Controller
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
0000:00:15.1 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH Serial IO I2C Controller
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
0000:00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH HECI Controller
Kernel driver in use: mei_me
Kernel modules: mei_me
0000:00:19.0 Serial bus controller: Intel Corporation Alder Lake-P Serial IO I2C Controller #0 (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake-P Serial IO I2C Controller
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
0000:00:19.1 Serial bus controller: Intel Corporation Alder Lake-P Serial IO I2C Controller #1 (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake-P Serial IO I2C Controller
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
0000:00:1f.0 ISA bridge: Intel Corporation Alder Lake PCH eSPI Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH eSPI Controller
0000:00:1f.3 Multimedia audio controller: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH-P High Definition Audio Controller
Kernel driver in use: sof-audio-pci-intel-tgl
0000:00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake PCH-P SMBus Host Controller
Kernel driver in use: i801_smbus
0000:00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
Subsystem: Acer Incorporated [ALI] Alder Lake-P PCH SPI Controller
10000:e0:06.0 System peripheral: Intel Corporation Device 09ab
10000:e0:06.2 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #2 (rev 02)
Kernel driver in use: pcieport
10000:e1:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5411 (rev 01)
Subsystem: Micron Technology Inc Device 1100
Kernel driver in use: nvme
|
I have also enabled CONFIG_{LPSS, SUNRISEPOINTER, ELAN, I2C...} related kernel configs.
I hope the following is useful.
Code: |
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
CONFIG_MOUSE_ELAN_I2C=m
CONFIG_MOUSE_ELAN_I2C_I2C=y
# CONFIG_MOUSE_ELAN_I2C_SMBUS is not set
# CONFIG_TOUCHSCREEN_ELAN is not set
CONFIG_HID_ELAN=y
|
Apart from those settings, I have also set "i8042.{nomux...}" without which the "Logitech Mouse" would also disappear.
Thank you very much for you help. |
|
Back to top |
|
|
user169291 n00b
Joined: 08 Aug 2022 Posts: 13
|
Posted: Wed Aug 10, 2022 8:30 am Post subject: |
|
|
Which touchpad is it? Perhaps we are suffering from an identical problem, since you're also on Alder Lake. Mine's a 311C. |
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3879
|
Posted: Wed Aug 10, 2022 8:38 am Post subject: |
|
|
Hi
what is the output of
Code: |
grep CONFIG_I2C_DESIGNWARE /usr/src/linux/.config
and
grep -i input_dev /etc/portage/make.conf
|
_________________
|
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 9:09 am Post subject: |
|
|
alamahant wrote: | Hi
what is the output of
Code: |
grep CONFIG_I2C_DESIGNWARE /usr/src/linux/.config
and
grep -i input_dev /etc/portage/make.conf
|
|
They are as follows
Code: |
CONFIG_I2C_DESIGNWARE_CORE=y
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DESIGNWARE_PLATFORM=y
# CONFIG_I2C_DESIGNWARE_AMDPSP is not set
# CONFIG_I2C_DESIGNWARE_BAYTRAIL is not set
# CONFIG_I2C_DESIGNWARE_PCI is not set
|
the libinput have been set in make.conf
Code: |
INPUT_DEVICES="synaptics libinput"
|
|
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 9:17 am Post subject: Something possibly useful from LiveCD |
|
|
I have tried a LiveCD of EndeavourOS, the touchpad works fine on it.
Code: |
[ 9.986758] input: ELAN050B:01 04F3:312B Mouse as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-16/i2c-ELAN050B:01/0018:04F3:312B.0001/input/input7
[ 9.986937] input: ELAN050B:01 04F3:312B Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-16/i2c-ELAN050B:01/0018:04F3:312B.0001/input/input9
[ 9.986966] hid-generic 0018:04F3:312B.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN050B:01 04F3:312B] on i2c-ELAN050B:01
[ 14.412459] input: ELAN050B:01 04F3:312B Mouse as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-16/i2c-ELAN050B:01/0018:04F3:312B.0001/input/input12
[ 14.412539] input: ELAN050B:01 04F3:312B Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-16/i2c-ELAN050B:01/0018:04F3:312B.0001/input/input14
[ 14.412598] hid-multitouch 0018:04F3:312B.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN050B:01 04F3:312B] on i2c-ELAN050B:01
|
Code: |
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ELAN050B:01 04F3:312B Mouse id=10 [slave pointer (2)]
⎜ ↳ ELAN050B:01 04F3:312B Touchpad id=11 [slave pointer (2)]
|
This also shows mine is a 04F3:312B? |
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3879
|
Posted: Wed Aug 10, 2022 9:34 am Post subject: |
|
|
This is what i get from dmesg
Code: |
dmesg | grep -i elan
[ 11.142957] psmouse serio4: elantech: assuming hardware version 4 (with firmware version 0x381fa2)
[ 11.158127] psmouse serio4: elantech: Synaptics capabilities query result 0x10, 0x14, 0x0e.
[ 11.173971] psmouse serio4: elantech: Elan sample query result 05, 1b, 64
[ 11.249487] input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio4/input/input14
|
with
Code: |
INPUT_DEVICES="libinput synaptics"
|
and
Code: |
CONFIG_I2C_DESIGNWARE_CORE=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_AMDPSP=y
CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
CONFIG_I2C_DESIGNWARE_PCI=y
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
|
Touchpad works fine.
I am not sure why it fails in your case.
Maybe firmware related?
Try also
Do you have
Code: |
CONFIG_SERIO_I8042=m
|
_________________
|
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 9:57 am Post subject: |
|
|
alamahant wrote: | This is what i get from dmesg
Code: |
dmesg | grep -i elan
[ 11.142957] psmouse serio4: elantech: assuming hardware version 4 (with firmware version 0x381fa2)
[ 11.158127] psmouse serio4: elantech: Synaptics capabilities query result 0x10, 0x14, 0x0e.
[ 11.173971] psmouse serio4: elantech: Elan sample query result 05, 1b, 64
[ 11.249487] input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio4/input/input14
|
with
Code: |
INPUT_DEVICES="libinput synaptics"
|
and
Code: |
CONFIG_I2C_DESIGNWARE_CORE=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_AMDPSP=y
CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
CONFIG_I2C_DESIGNWARE_PCI=y
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
|
Touchpad works fine.
I am not sure why it fails in your case.
Maybe firmware related?
Try also
Do you have
Code: |
CONFIG_SERIO_I8042=m
|
|
I have tried those without luck.
CONFIG_SERIO_I8042=y on my side, looks like some other config forces it to do so. |
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3879
|
Posted: Wed Aug 10, 2022 12:48 pm Post subject: |
|
|
How about
Code: |
grep -i synaptic /usr/src/linux/.config
|
_________________
|
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 1:34 pm Post subject: |
|
|
alamahant wrote: | How about
Code: |
grep -i synaptic /usr/src/linux/.config
|
|
Code: |
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
CONFIG_MOUSE_SYNAPTICS_I2C=y
CONFIG_MOUSE_SYNAPTICS_USB=y
|
Looks good to me? Is there anything that isn't supposed to be enabled? |
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 2:05 pm Post subject: |
|
|
I solved this matter in an unreasonable way....
Just enable all CONFIG_PINCTRL_<CPU Gen> under Intel Pin Control Drivers.
Don't just enable Alderlake...
I dnk why, but I am astonished.... |
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 2:18 pm Post subject: Solution |
|
|
More specific solution is as to enable ALL the following.
Code: |
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_LYNXPOINT=y
CONFIG_PINCTRL_INTEL=y
CONFIG_PINCTRL_ALDERLAKE=y
CONFIG_PINCTRL_BROXTON=y
CONFIG_PINCTRL_CANNONLAKE=y
CONFIG_PINCTRL_CEDARFORK=y
CONFIG_PINCTRL_DENVERTON=y
CONFIG_PINCTRL_ELKHARTLAKE=y
CONFIG_PINCTRL_EMMITSBURG=y
CONFIG_PINCTRL_GEMINILAKE=y
CONFIG_PINCTRL_ICELAKE=y
CONFIG_PINCTRL_JASPERLAKE=y
CONFIG_PINCTRL_LAKEFIELD=y
CONFIG_PINCTRL_LEWISBURG=y
CONFIG_PINCTRL_SUNRISEPOINT=y
CONFIG_PINCTRL_TIGERLAKE=y
|
|
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 4149 Location: Bavaria
|
Posted: Wed Aug 10, 2022 2:18 pm Post subject: |
|
|
jwnhy wrote: | I solved this matter in an unreasonable way....
Just enable all CONFIG_PINCTRL_<CPU Gen> under Intel Pin Control Drivers.
Don't just enable Alderlake... |
Have you enabled them as <M>odule ? If yes, what shows "lsmod" ? Maybe you need another module than alderlake ? |
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 2:40 pm Post subject: |
|
|
pietinger wrote: | jwnhy wrote: | I solved this matter in an unreasonable way....
Just enable all CONFIG_PINCTRL_<CPU Gen> under Intel Pin Control Drivers.
Don't just enable Alderlake... |
Have you enabled them as <M>odule ? If yes, what shows "lsmod" ? Maybe you need another module than alderlake ? |
Sadly, mark them as "M" doesn't work, my guess is that this detection happens in the early stage of booting.
I'm currently bisecting to locate the module needed |
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Wed Aug 10, 2022 2:55 pm Post subject: Solution & possible reason |
|
|
After serveral rebooting, my guess is that just enabling
Code: | CONFIG_PINCTRL_TIGERLAKE=y |
is sufficient if you're using AlderLake(12 Gen)/TigerLake(11 Gen).
One possible reason for this strange case is that "AlderLake" Pinctrl Driver isn't fully ready or contains potential bugs?
Anyway, case solved.
Thanks! |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 4149 Location: Bavaria
|
Posted: Wed Aug 10, 2022 4:13 pm Post subject: |
|
|
Also, thank you back for your feedback.
Have fun with Gentoo ! |
|
Back to top |
|
|
user169291 n00b
Joined: 08 Aug 2022 Posts: 13
|
Posted: Wed Aug 10, 2022 5:57 pm Post subject: |
|
|
May I ask how you figured this out? I didn't even hesitate to enable only the PINCTRL_ALDERLAKE pin controller. |
|
Back to top |
|
|
jwnhy n00b
Joined: 10 Aug 2022 Posts: 11
|
Posted: Thu Aug 11, 2022 1:05 am Post subject: |
|
|
user169291 wrote: | May I ask how you figured this out? I didn't even hesitate to enable only the PINCTRL_ALDERLAKE pin controller. |
LOL, tried everything around ELAN|SYNAPTICS|LPSS|...
Then I try to enable all related options, if not working then only keeps necessary ones...
Luckily it worked, when it comes to Pinctrl Driver.
Just one final desprerate try(if not working, I will just go get some binary kernel...) |
|
Back to top |
|
|
|