View previous topic :: View next topic |
Author |
Message |
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Sun Feb 05, 2023 1:22 pm Post subject: Lenovo touchpad is not working [SOLVED] |
|
|
Hello, I have Lenovo V15 g2, touchpad is not working. Amd Ryzen 5500u here.
I have tried to enable HID I2C, but without sucess.
I have Artix linux, it seems that touchpad is displayed as "ideapad extra buttons". How can I check drivers in Artix in order to make Gentoo work ?
Last edited by RIA77 on Sun Feb 12, 2023 11:50 am; edited 1 time in total |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54782 Location: 56N 3W
|
Posted: Sun Feb 05, 2023 1:59 pm Post subject: |
|
|
RIA77,
Pastebin your kernel config file please. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3893 Location: Rasi, Finland
|
Posted: Sun Feb 05, 2023 2:11 pm Post subject: |
|
|
Unplug your charger.
Does the touchpad work then? I've witnessed that poorly- or non- grounded charger can stop touchpad from working on some Lenovo laptops. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Sun Feb 05, 2023 3:06 pm Post subject: |
|
|
Zucca wrote: | Unplug your charger.
Does the touchpad work then? I've witnessed that poorly- or non- grounded charger can stop touchpad from working on some Lenovo laptops. |
No, it just won't work.
Here is my config file
http://dpaste.com/79MJ8UUWL |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Sun Feb 05, 2023 4:54 pm Post subject: |
|
|
RIA 77,
the easiest method to get all needed modules is: Boot with a distribution of your choice where the touchpad works (e.g. Artix) and do a "lsmod". Notice all modules and you will see what you need.
If ... IF ... you know your touchpad is connected via I2C THEN you are missing some important options in your kernel configuration:
First of all ... it as an AMD ... this is CORRECT:
Code: |
# CONFIG_X86_INTEL_LPSS is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_EXTRA_FIRMWARE="/amd-ucode/microcode_amd_fam17h.bin" |
This is WRONG ... you will nees AMD and NOT Intel:
Code: | # CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
# CONFIG_I2C_AMD_MP2 is not set
CONFIG_I2C_I801=y |
i2c doesnt work without PINCTRL ... for AMD it is:
Code: | # CONFIG_PINCTRL_AMD is not set |
You have enabled many HID modules ... but not the only one you maybe will need:
Code: | # CONFIG_HID_MULTITOUCH is not set |
and this is necessary in every case:
Code: | # CONFIG_I2C_HID_ACPI is not set |
IF you have a Designware Controller you will need also:
Code: | # CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_PCIE_DW_PLAT_HOST is not set
# CONFIG_I2C_DESIGNWARE_PCI is not set |
(but try first without - OR - look into your output of "lsmod") |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54782 Location: 56N 3W
|
Posted: Sun Feb 05, 2023 5:08 pm Post subject: |
|
|
pietinger,
The Intel/AMD divide is not as clear cut as anyone would like.
My AMD X570 board needs
That's an Intel option, originally too. PIIX4 is a very old Intel chipset. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Sun Feb 05, 2023 5:12 pm Post subject: |
|
|
NeddySeagoon wrote: | pietinger,
The Intel/AMD divide is not as clear cut as anyone would like.
My AMD X570 board needs
That's an Intel option, originally too. PIIX4 is a very old Intel chipset. |
Neddy,
thanks a lot for this hint. You have a desktop machine ? OP has a (modern) notebook (where I know these kind of machines shouldnt use these old chipset). Of course: Best is to check with "lsmod" - then you know for sure what you have |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54782 Location: 56N 3W
|
Posted: Sun Feb 05, 2023 5:21 pm Post subject: |
|
|
pietinger,
A long time ago AMD made processors under licence from Intel. Think i386 and i486 ... I don't think they made pentiums. They did their own thing thing with the k6 range.
Intel didn't like AMD as they made faster processor than Intel did :)
Nobody uses the PIIX4 chip set any more, well, its still to be seen inside Virtualbox but that's emulated, however the interface hangs around like a bad smell.
Every IBM clone still has the the ISA bus inside too ... but the less said about that the better.
Sensors are often attached to it,
As you say, use lsmod get the detail from something that works. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Fri Feb 10, 2023 10:21 pm Post subject: |
|
|
Code: | e Size Used by
fuse 163840 2
qrtr 20480 4
ns 28672 1 qrtr
joydev 28672 0
binfmt_misc 24576 1
snd_hda_codec_realtek 143360 1
snd_hda_codec_generic 90112 1 snd_hda_codec_realtek
snd_hda_codec_hdmi 69632 1
ledtrig_audio 16384 1 snd_hda_codec_generic
intel_rapl_msr 20480 0
rtw88_8822ce 16384 0
intel_rapl_common 28672 1 intel_rapl_msr
amdgpu 7430144 2
rtw88_8822c 479232 1 rtw88_8822ce
hid_multitouch 32768 0
wmi_bmof 16384 0
snd_hda_intel 49152 6
rtw88_pci 28672 1 rtw88_8822ce
rtw88_core 155648 2 rtw88_pci,rtw88_8822c
snd_intel_dspcfg 28672 1 snd_hda_intel
edac_mce_amd 36864 0
snd_intel_sdw_acpi 20480 1 snd_intel_dspcfg
mac80211 1069056 2 rtw88_pci,rtw88_core
snd_hda_codec 143360 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
iommu_v2 24576 1 amdgpu
gpu_sched 36864 1 amdgpu
kvm_amd 135168 0
snd_hda_core 90112 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
i2c_algo_bit 16384 1 amdgpu
drm_ttm_helper 16384 1 amdgpu
uvcvideo 118784 0
ttm 69632 2 amdgpu,drm_ttm_helper
btusb 61440 0
libarc4 16384 1 mac80211
snd_hwdep 16384 1 snd_hda_codec
btrtl 28672 1 btusb
videobuf2_vmalloc 20480 1 uvcvideo
kvm 901120 1 kvm_amd
dm_multipath 40960 0
drm_kms_helper 245760 1 amdgpu
snd_pcm 126976 4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
videobuf2_memops 20480 1 videobuf2_vmalloc
btbcm 20480 1 btusb
btintel 40960 1 btusb
videobuf2_v4l2 28672 1 uvcvideo
cec 53248 1 drm_kms_helper
videobuf2_common 61440 4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
irqbypass 16384 1 kvm
snd_timer 45056 1 snd_pcm
crct10dif_pclmul 16384 1
cfg80211 897024 2 rtw88_core,mac80211
bluetooth 610304 5 btrtl,btintel,btbcm,btusb
drm 491520 7 gpu_sched,drm_kms_helper,amdgpu,drm_ttm_helper,ttm
videodev 237568 3 videobuf2_v4l2,uvcvideo,videobuf2_common
snd_pci_acp5x 20480 0
ghash_clmulni_intel 16384 0
ideapad_laptop 28672 0
snd 102400 20 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm
sparse_keymap 16384 1 ideapad_laptop
ecdh_generic 16384 1 bluetooth
mc 53248 4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
soundcore 16384 1 snd
rapl 16384 0
serio_raw 20480 0
pcspkr 16384 0
sp5100_tco 20480 0
snd_rn_pci_acp3x 20480 0
platform_profile 16384 1 ideapad_laptop
k10temp 16384 0
rfkill 32768 4 bluetooth,ideapad_laptop,cfg80211
ccp 102400 1 kvm_amd
snd_pci_acp3x 20480 0
i2c_piix4 28672 0
wmi 32768 2 wmi_bmof,ideapad_laptop
i2c_hid_acpi 16384 0
i2c_hid 32768 1 i2c_hid_acpi
video 57344 1 ideapad_laptop
acpi_cpufreq 28672 0
crc32_pclmul 16384 0
crc32c_intel 24576 0
nvme 45056 0
uas 32768 0
nvme_core 122880 1 nvme
r8169 98304 0
|
|
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Fri Feb 10, 2023 10:50 pm Post subject: |
|
|
Can we expect some explanation to this lsmod ?
Something like: It is from an other distribution where it works. It is from my system and now it is working. It is from my system and touchpad doesnt work ... |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Fri Feb 10, 2023 11:41 pm Post subject: |
|
|
Touchpad is working in Ex Gent. This is lsmod from ExGent. |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Sat Feb 11, 2023 12:37 am Post subject: |
|
|
RIA77 wrote: | Touchpad is working in Ex Gent. This is lsmod from ExGent. |
Great.
So, Neddy was right, you will need i2c_piix4
Also: hid_multitouch and i2c_hid_acpi. Because i2c needs pinctrl and there is no module, I think it is static in this kernel.
Now, have you done your configuration according to this ? |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Sat Feb 11, 2023 11:12 am Post subject: |
|
|
Enabled all, but touchpad won't work.
Current state of my config.
http://dpaste.com/F7EFBFSED |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Sat Feb 11, 2023 11:52 am Post subject: |
|
|
RIA77,
your kernel configuration looks fine ... maybe you are only missing designware:
Code: | Device Drivers --->
[*] PCI support --->
PCI controller drivers --->
DesignWare PCI Core Support --->
[*] Platform bus based DesignWare PCIe Controller - Host mode
I2C support --->
[*] ACPI I2C Operation region support
<*> I2C device interface
<*> I2C bus multiplexing support
[*] Autoselect pertinent helper modules
I2C Hardware Bus support --->
<*> Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC
<*> SMBus Control Method Interface
<*> Synopsys DesignWare Platform
<*> Synopsys DesignWare PCI |
|
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2656
|
Posted: Sat Feb 11, 2023 12:24 pm Post subject: |
|
|
In addition to others, I have to say that I have a Legion and I think it has the same touchpad and wiring. I can't explain why, but genkernel seems to be unable to produce an intramfs that is capable of bringing my touchpad up. I wondered why it worked with gentoo-kernel and noticed it used dracut. I decided to try it and it seems dracut does something genkernel does not, because since then I haven't had an issue with the touchpad.
If you use initramfs which I believe you should be as this is an UEFI boot, try dracut.
p.s. I can confirm pietinger's suggestion as unloading the designware platform module shuts down the touchpad and modprobing it again fixes it.
Best Regards,
Georgi |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Sun Feb 12, 2023 11:50 am Post subject: |
|
|
pietinger wrote: | RIA77,
your kernel configuration looks fine ... maybe you are only missing designware:
Code: | Device Drivers --->
[*] PCI support --->
PCI controller drivers --->
DesignWare PCI Core Support --->
[*] Platform bus based DesignWare PCIe Controller - Host mode
I2C support --->
[*] ACPI I2C Operation region support
<*> I2C device interface
<*> I2C bus multiplexing support
[*] Autoselect pertinent helper modules
I2C Hardware Bus support --->
<*> Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC
<*> SMBus Control Method Interface
<*> Synopsys DesignWare Platform
<*> Synopsys DesignWare PCI |
|
Yes, that was missing. |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Thu Apr 20, 2023 8:01 am Post subject: |
|
|
No multilib here.
Code: | CONFIG_I2C_DESIGNWARE_PLATFORM |
I can't find this entry in config. Am I missing something ?
http://dpaste.com/AMWVGHNMG
My config file. Thank you. |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2656
|
Posted: Thu Apr 20, 2023 9:22 am Post subject: |
|
|
RIA77 wrote: | No multilib here.
Code: | CONFIG_I2C_DESIGNWARE_PLATFORM |
I can't find this entry in config. Am I missing something ?
http://dpaste.com/AMWVGHNMG
My config file. Thank you. |
Open menuconfig and prezz / then type what you're looking for and see its location. What version is this? Options may have moved around the menus.
Here's what modules are loaded for my touchpad:
Code: | lsmod | grep -E "i2c|hid"
hid_multitouch 32768 0
i2c_designware_platform 16384 0
i2c_designware_core 32768 1 i2c_designware_platform
i2c_hid_acpi 16384 0
i2c_hid 32768 1 i2c_hid_acpi
|
Try with a dist kernel as well. For fastest results - gentoo-kernel-bin. The difference with non-bin version is non-bin is compiled on your computer, but it should be identical to the bin version. If the dist kernel works, we'll take it from there.
It might be some of the Elan options, also GPIO, for example CONFIG_I2C_GPIO, but please run the distkernel and paste the output of the command above I've posted.
Also see pietinger's post about those things, don't mind the language if you don't understand it, just follow the options.
@pietinger, why are you not referencing your own post?
Best Regards,
Georgi |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Thu Apr 20, 2023 11:31 am Post subject: |
|
|
RIA77 wrote: | No multilib here.
Code: | CONFIG_I2C_DESIGNWARE_PLATFORM |
I can't find this entry in config. Am I missing something ? |
Yes: Device driver -> [*] Common Clock Framework --->
You can see it also in: /usr/src/linux/drivers/i2c/busses/Kconfig ->
Quote: | config I2C_DESIGNWARE_PLATFORM
tristate "Synopsys DesignWare Platform"
depends on (ACPI && COMMON_CLK) || !ACPI
select I2C_DESIGNWARE_CORE
select MFD_SYSCON if MIPS_BAIKAL_T1
help
If you say yes to this option, support will be included for the
Synopsys DesignWare I2C adapter.
This driver can also be built as a module. If so, the module
will be called i2c-designware-platform. |
|
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Thu Apr 20, 2023 11:35 am Post subject: |
|
|
logrusx wrote: | @pietinger, why are you not referencing your own post? |
... just forgot ...
Thanks to you for this !
Many Greetings,
Peter |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Thu Apr 20, 2023 1:31 pm Post subject: |
|
|
Quote: | Open menuconfig and prezz / then type what you're looking for and see its location. What version is this? Options may have moved around the menus. |
Tried multiple times, but I can't find it.
Quote: | Yes: Device driver -> [*] Common Clock Framework ---> |
Ok, but there is no CONFIG_I2C_DESIGNWARE_PLATFORM ? |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Thu Apr 20, 2023 1:47 pm Post subject: |
|
|
After enabling [*] Common Clock Framework ---> you should have:
Code: | Device Drivers --->
I2C support --->
I2C Hardware Bus support --->
[*] Synopsys DesignWare Platform |
No ? |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Thu Apr 20, 2023 5:42 pm Post subject: |
|
|
Thank you, I succesfuly enabled it, but on multilib it just don't work.
Should I enable something more ? |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5347 Location: Bavaria
|
Posted: Thu Apr 20, 2023 5:47 pm Post subject: |
|
|
It is strange ... in the last kernel .config you gave us, you had AMD_PLATFORM_DEVICE enabled ... and now you have:
Code: | # CONFIG_X86_AMD_PLATFORM_DEVICE is not set |
Is this a new/another computer, or do you use a complete new kernel config ?
RIA77, please read also all documentation @logrusx and I have given you so far. |
|
Back to top |
|
|
RIA77 Guru
Joined: 24 Feb 2016 Posts: 405
|
Posted: Thu Apr 20, 2023 6:12 pm Post subject: |
|
|
Yep, no multilib here, solved! You were right! |
|
Back to top |
|
|
|