# [SOLVED]Trackpad not working correctly on Dell Inspiron 5515

## MrRoy3

Hello,

I installed Gentoo recently on my new laptop and I am struggling to get the touchpad to work properly. The touchpad is detected and works, I am able to move the cursor and tap to click, and both left and right click buttons work, but I am not able to use gestures, such as scrolling with two fingers, or disabling it when I type, or do middle mouse button emulation. There is also a slight mouse lag when I use it. I tried booting on a Ubuntu live CD to test it there, and everything works just fine on Ubuntu, so it's definitely a configuration issue on my install.

I have found various topics on the subject both here on the forum or elsewhere, but none of the solutions I found so far have worked for me.

I believe the problem is that my trackpad is detected as a "PS/2 Generic Mouse" rather than a trackpad. Note that this laptop also has a touchscreen, which also doesn't work (but that's another topic...)

I also use Wayland (Sway) rather than Xorg, I am not sure if this has any impact.

Here's some info on my system:

❯ lspci -nnk

```
00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex [1022:1630]

   Subsystem: Dell Renoir/Cezanne Root Complex [1028:0a78]

00:00.2 IOMMU [0806]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU [1022:1631]

   Subsystem: Dell Renoir/Cezanne IOMMU [1028:0a78]

00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]

00:01.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge [1022:1634]

   Kernel driver in use: pcieport

00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]

00:02.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge [1022:1634]

   Kernel driver in use: pcieport

00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]

00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus [1022:1635]

   Kernel driver in use: pcieport

00:08.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus [1022:1635]

   Kernel driver in use: pcieport

00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller [1022:790b] (rev 51)

   Subsystem: Dell FCH SMBus Controller [1028:0a78]

   Kernel driver in use: piix4_smbus

   Kernel modules: i2c_piix4

00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge [1022:790e] (rev 51)

   Subsystem: Dell FCH LPC Bridge [1028:0a78]

00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0 [1022:1448]

00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1 [1022:1449]

00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2 [1022:144a]

00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3 [1022:144b]

   Kernel driver in use: k10temp

00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4 [1022:144c]

00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5 [1022:144d]

00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6 [1022:144e]

00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7 [1022:144f]

01:00.0 Non-Volatile memory controller [0108]: KIOXIA Corporation Device [1e0f:0001]

   Subsystem: KIOXIA Corporation Device [1e0f:0001]

   Kernel driver in use: nvme

02:00.0 Network controller [0280]: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter [168c:003e] (rev 32)

   Subsystem: Dell QCA6174 802.11ac Wireless Network Adapter [1028:0310]

   Kernel driver in use: ath10k_pci

   Kernel modules: ath10k_pci

03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Lucienne [1002:164c] (rev c2)

   Subsystem: Dell Lucienne [1028:0a78]

   Kernel driver in use: amdgpu

   Kernel modules: amdgpu

03:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller [1002:1637]

   Subsystem: Dell Renoir Radeon High Definition Audio Controller [1028:0a78]

   Kernel driver in use: snd_hda_intel

03:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor [1022:15df]

   Subsystem: Dell Family 17h (Models 10h-1fh) Platform Security Processor [1028:0a78]

03:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1 [1022:1639]

   Subsystem: Dell Renoir/Cezanne USB 3.1 [1028:0a78]

   Kernel driver in use: xhci_hcd

03:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1 [1022:1639]

   Subsystem: Dell Renoir/Cezanne USB 3.1 [1028:0a78]

   Kernel driver in use: xhci_hcd

03:00.5 Multimedia controller [0480]: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor [1022:15e2] (rev 01)

   Subsystem: Dell Raven/Raven2/FireFlight/Renoir Audio Processor [1028:0a78]

   Kernel driver in use: snd_rn_pci_acp3x

03:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller [1022:15e3]

   Subsystem: Dell Family 17h (Models 10h-1fh) HD Audio Controller [1028:0a78]

   Kernel driver in use: snd_hda_intel

04:00.0 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] [1022:7901] (rev 81)

   Subsystem: Dell FCH SATA Controller [AHCI mode] [1028:0a78]

   Kernel driver in use: ahci

04:00.1 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] [1022:7901] (rev 81)

   Subsystem: Dell FCH SATA Controller [AHCI mode] [1028:0a78]

   Kernel driver in use: ahci
```

❯ dmesg | grep 8042

```
[    0.000000] Command line: root=UUID=796a99fd-62b4-4ac4-835c-ab1126209f71 rd.luks.uuid=463c2b11-d133-4f47-b0e1-c9825db885b0 rd.luks.options=discard i8042.noloop i8042.nomux i8042.nopnp i8042.reset quiet loglevel=2 splash initrd=\EFI\Gentoo\initramfs.img

[    0.025066] Kernel command line: root=UUID=796a99fd-62b4-4ac4-835c-ab1126209f71 rd.luks.uuid=463c2b11-d133-4f47-b0e1-c9825db885b0 rd.luks.options=discard i8042.noloop i8042.nomux i8042.nopnp i8042.reset quiet loglevel=2 splash initrd=\EFI\Gentoo\initramfs.img

[    1.246469] i8042: PNP detection disabled

[    1.251648] serio: i8042 KBD port at 0x60,0x64 irq 1

[    1.251662] serio: i8042 AUX port at 0x60,0x64 irq 12

[    1.273638] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4

[    1.808659] input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input6
```

❯ cat /usr/src/linux/.config | grep -v #

https://pastebin.com/uhUaru92

I have tried both with and without "synaptics" in my /etc/portage/make.conf, neither does a difference. (re-emerging @world with --changed-use doesn't rebuild anything either way)

I also tried with and without the following command line parameters: i8042.noloop i8042.nomux i8042.nopnp i8042.reset, again doesn't change anything

I tried various combinations of kernel drivers and nothing so far has ever made a difference.

Hoping to get some input to get to the bottom of this   :Very Happy: 

Thanks

EDIT: Forgot to mention that this is on the latest stable kernel (5.15.19-gentoo)Last edited by MrRoy3 on Tue Feb 15, 2022 3:23 pm; edited 1 time in total

----------

## charles17

This computer or any of the others?

The touchpad might have its own article in the wiki

----------

## MrRoy3

 *charles17 wrote:*   

> This computer or any of the others?

 

I haven't found my exact model on this list, based on the specs listed (mine has a single 256GB KIOXIA SSD and 8GB of RAM), however the one you posted appears to be the closest one.

 *charles17 wrote:*   

> The touchpad might have its own article in the wiki

 

I tried to install the driver (compiled in kernel) from this page and it didn't change anything

As per the wiki page, dmesg should identify it as a ALPS device, but on my case, it's not identified at all, it just shows as a PS/2 Generic Mouse

❯ dmesg | grep -i input

```
[    1.208059] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0

[    1.208135] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input1

[    1.208187] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2

[    1.208608] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/LNXVIDEO:00/input/input3

[    1.272905] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4

[    1.815213] input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input6

[   10.864753] input: DELL Wireless hotkeys as /devices/virtual/input/input7

[   10.880871] snd_hda_codec_generic hdaudioC1D0:    inputs:

[   10.894301] input: Dell WMI hotkeys as /devices/platform/PNP0C14:00/wmi_bus/wmi_bus-PNP0C14:00/9DBB5994-A997-11DA-B012-B622A1EF5492/input/input9

[   11.673762] input: HD-Audio Generic Front Headphone as /devices/pci0000:00/0000:00:08.1/0000:03:00.6/sound/card1/input8

[   12.448982] elogind-daemon[1986]: Watching system buttons on /dev/input/event0 (Power Button)

[   13.475485] elogind-daemon[1986]: Watching system buttons on /dev/input/event1 (Lid Switch)

[   13.475626] elogind-daemon[1986]: Watching system buttons on /dev/input/event2 (Sleep Button)

[   13.475965] elogind-daemon[1986]: Watching system buttons on /dev/input/event4 (AT Translated Set 2 keyboard)
```

❯ libinput list-devices

```
Device:           PS/2 Generic Mouse

Kernel:           /dev/input/event5

Group:            7

Seat:             seat0, default

Capabilities:     pointer 

Tap-to-click:     n/a

Tap-and-drag:     n/a

Tap drag lock:    n/a

Left-handed:      disabled

Nat.scrolling:    disabled

Middle emulation: disabled

Calibration:      n/a

Scroll methods:   *button

Click methods:    none

Disable-w-typing: n/a

Accel profiles:   flat *adaptive

Rotation:         n/a
```

----------

## MrRoy3

I rebooted on the Ubuntu live CD to gather some more information:

ubuntu@ubuntu:~$ dmesg | grep -i input

```
[    1.340147] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0

[    1.340235] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input1

[    1.340296] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2

[    1.463127] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input3

[    1.653479] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:10/LNXVIDEO:00/input/input5

[    2.484496] input: 04F31234:00 04F3:2C6B Touchscreen as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input7

[    2.484684] input: 04F31234:00 04F3:2C6B as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input8

[    2.484740] input: 04F31234:00 04F3:2C6B as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input9

[    2.484776] hid-generic 0018:04F3:2C6B.0001: input,hidraw0: I2C HID v1.00 Device [04F31234:00 04F3:2C6B] on i2c-04F31234:00

[    2.485081] input: DELL0A78:00 27C6:0D42 Mouse as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input11

[    2.485133] input: DELL0A78:00 27C6:0D42 Touchpad as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/inpu12

[    2.485171] hid-generic 0018:27C6:0D42.0002: input,hidraw1: I2C HID v1.00 Mouse [DELL0A78:00 27C6:0D42] on i2c-DELL0A78:00

[    3.127906] input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input6

[  168.207756] input: DELL Wireless hotkeys as /devices/virtual/input/input14

[  168.304851] input: Dell WMI hotkeys as /devices/platform/PNP0C14:00/wmi_bus/wmi_bus-PNP0C14:00/9DBB5994-A997-11DA-B012-B622A1EF5492/input/input15

[  168.439235] input: 04F31234:00 04F3:2C6B as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input16

[  168.439351] input: 04F31234:00 04F3:2C6B UNKNOWN as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input17

[  168.439410] input: 04F31234:00 04F3:2C6B UNKNOWN as /devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input18

[  168.439481] hid-multitouch 0018:04F3:2C6B.0001: input,hidraw0: I2C HID v1.00 Device [04F31234:00 04F3:2C6B] on i2c-04F31234:00

[  168.624020] input: DELL0A78:00 27C6:0D42 Mouse as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input20

[  168.624165] input: DELL0A78:00 27C6:0D42 Touchpad as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/inpu21

[  168.624280] hid-multitouch 0018:27C6:0D42.0002: input,hidraw1: I2C HID v1.00 Mouse [DELL0A78:00 27C6:0D42] on i2c-DELL0A78:00

[  168.637581] input: Integrated_Webcam_HD: Integrate as /devices/pci0000:00/0000:00:08.1/0000:03:00.4/usb3/3-1/3-1:1.0/input/input23

[  168.934533] input: HD-Audio Generic HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card1/input24

[  168.934572] input: HD-Audio Generic HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card1/input25

[  169.031359] snd_hda_codec_realtek hdaudioC2D0:    inputs:

[  169.083969] input: HD-Audio Generic Headphone Mic as /devices/pci0000:00/0000:00:08.1/0000:03:00.6/sound/card2/input26

[  201.864718] rfkill: input handler disabled
```

ubuntu@ubuntu:~$ cat /proc/bus/input/devices (removed irrelevant data)

```
I: Bus=0011 Vendor=0002 Product=0001 Version=0000

N: Name="PS/2 Generic Mouse"

P: Phys=isa0060/serio1/input0

S: Sysfs=/devices/platform/i8042/serio1/input/input6

U: Uniq=

H: Handlers=mouse3 event10 

B: PROP=1

B: EV=7

B: KEY=70000 0 0 0 0

B: REL=3

I: Bus=0018 Vendor=04f3 Product=2c6b Version=0100

N: Name="04F31234:00 04F3:2C6B"

P: Phys=i2c-04F31234:00

S: Sysfs=/devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input16

U: Uniq=

H: Handlers=mouse0 event6 

B: PROP=2

B: EV=1b

B: KEY=400 0 0 0 0 0

B: ABS=3273800000000003

B: MSC=20

I: Bus=0018 Vendor=04f3 Product=2c6b Version=0100

N: Name="04F31234:00 04F3:2C6B UNKNOWN"

P: Phys=i2c-04F31234:00

S: Sysfs=/devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input17

U: Uniq=

H: Handlers=event7 

B: PROP=0

B: EV=9

B: ABS=10000000000

I: Bus=0018 Vendor=04f3 Product=2c6b Version=0100

N: Name="04F31234:00 04F3:2C6B UNKNOWN"

P: Phys=i2c-04F31234:00

S: Sysfs=/devices/platform/AMDI0010:00/i2c-0/i2c-04F31234:00/0018:04F3:2C6B.0001/input/input18

U: Uniq=

H: Handlers=event12 

B: PROP=0

B: EV=100001

I: Bus=0018 Vendor=27c6 Product=0d42 Version=0100

N: Name="DELL0A78:00 27C6:0D42 Mouse"

P: Phys=i2c-DELL0A78:00

S: Sysfs=/devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input20

U: Uniq=

H: Handlers=mouse1 event8 

B: PROP=0

B: EV=17

B: KEY=30000 0 0 0 0

B: REL=1943

B: MSC=10

I: Bus=0018 Vendor=27c6 Product=0d42 Version=0100

N: Name="DELL0A78:00 27C6:0D42 Touchpad"

P: Phys=i2c-DELL0A78:00

S: Sysfs=/devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input21

U: Uniq=

H: Handlers=mouse2 event9 

B: PROP=5

B: EV=1b

B: KEY=e520 10000 0 0 0 0

B: ABS=2e0800000000003

B: MSC=20
```

If I do cat /dev/input/event9 it shows output when I use the touch pad

So it confirms that the last entry in /proc/bus/input/devices is the one I need to get the drivers for.

----------

## grknight

Looks like you need CONFIG_I2C_DESIGNWARE_PLATFORM, CONFIG_HID_ALPS and CONFIG_I2C_HID_ACPI at minimum in the kernel config.

Edit.. oh, and CONFIG_HID_MULTITOUCH too

----------

## MrRoy3

 *grknight wrote:*   

> Looks like you need CONFIG_I2C_DESIGNWARE_PLATFORM, CONFIG_HID_ALPS and CONFIG_I2C_HID_ACPI at minimum in the kernel config.
> 
> Edit.. oh, and CONFIG_HID_MULTITOUCH too

 

I was missing CONFIG_I2C_DESIGNWARE_PLATFORM from those you mentioned, the other ones I already had. I added CONFIG_I2C_DESIGNWARE_PLATFORM (and also _CORE and _PCI) but sadly it didn't change anything (tried both with and without _CORE)

❯ egrep -i "designware|alps|i2c_hid|multitouch" .config | grep -v #

```
CONFIG_MOUSE_PS2_ALPS=y

CONFIG_I2C_DESIGNWARE_CORE=y

CONFIG_I2C_DESIGNWARE_PLATFORM=y

CONFIG_I2C_DESIGNWARE_PCI=y

CONFIG_HID_MULTITOUCH=y

CONFIG_HID_ALPS=y

CONFIG_I2C_HID_ACPI=y

CONFIG_I2C_HID_CORE=y
```

----------

## pietinger

 *MrRoy3 wrote:*   

> I was missing CONFIG_I2C_DESIGNWARE_PLATFORM from those you mentioned, the other ones I already had. I added CONFIG_I2C_DESIGNWARE_PLATFORM (and also _CORE and _PCI) but sadly it didn't change anything (tried both with and without _CORE)

 

I suppose you did these changes by editing your .config and not with "make menuconfig". Never do this. Read this post from @NeddySeagoon: https://forums.gentoo.org/viewtopic-p-8686380.html#8686380

If you go into the help (in your "make menuconfig") of I2C_DESIGNWARE_PLATFORM you will see this:

```
Selects: I2C_DESIGNWARE_CORE [=y] && MFD_SYSCON [=y]
```

I suppose you missed MFD_SYSCON also.

----------

## MrRoy3

 *pietinger wrote:*   

> I suppose you did these changes by editing your .config and not with "make menuconfig". Never do this. Read this post from @NeddySeagoon: https://forums.gentoo.org/viewtopic-p-8686380.html#8686380

 

No, I always update my config by using "make menuconfig", however I didn't know that it was bad practice to edit the .config manually, I will keep that in mind

 *pietinger wrote:*   

> If you go into the help (in your "make menuconfig") of I2C_DESIGNWARE_PLATFORM you will see this:
> 
> ```
> Selects: I2C_DESIGNWARE_CORE [=y] && MFD_SYSCON [=y]
> ```
> ...

 

It's a mistake from my previous post, I meant to say with and without CONFIG_I2C_DESIGNWARE_PCI

However, MFD_SYSCON was NOT selected... 

❯ grep SYSCON .config

```
# CONFIG_MFD_SYSCON is not set
```

I'm not sure why, but manually enabling it (through make menuconfig) did not change the trackpad's behavior

After enabling MFD_SYSCON:

❯ egrep -i "designware|mfd_syscon|i2c_hid|alps|multitouch" .config

```
# DesignWare PCI Core Support

# end of DesignWare PCI Core Support

CONFIG_MOUSE_PS2_ALPS=y

CONFIG_I2C_DESIGNWARE_CORE=y

# CONFIG_I2C_DESIGNWARE_SLAVE is not set

CONFIG_I2C_DESIGNWARE_PLATFORM=y

# CONFIG_I2C_DESIGNWARE_BAYTRAIL is not set

CONFIG_I2C_DESIGNWARE_PCI=y

CONFIG_MFD_SYSCON=y

# CONFIG_SND_DESIGNWARE_I2S is not set

CONFIG_HID_MULTITOUCH=y

CONFIG_HID_ALPS=y

CONFIG_I2C_HID_ACPI=y

CONFIG_I2C_HID_CORE=y
```

----------

## pietinger

If it works with Ubuntu and not with Gentoo there could be a way to find out what is the difference.

Boot with your Ubuntu-CD and do a "lsmod". Notice all used modules. Do the same with Gentoo-CD. Notice also all used modules. Compare these both lists. What are the differences ?

(Maybe we have to disable some modules in Gentoo to not get it as generic mouse).

----------

## MrRoy3

It hadn't occured to me that it could be a module/driver that needs to be removed, rather than added.

The lsmod for ubuntu: https://pastebin.com/Vkka7eBF

The ls /sys/module for ubuntu: https://pastebin.com/MbXZ8NPA

The lsmod for gentoo (most modules are built in kernel): https://pastebin.com/kCbc5Kia

The ls /sys/module for gentoo: https://pastebin.com/rcj1b9xS

----------

## pietinger

 *MrRoy3 wrote:*   

> The lsmod for gentoo (most modules are built in kernel): 

 

Sorry, please dont boot YOUR system; boot the Gentoo Minimal Installation CD and do the "lsmod".

As far as I can see from your Ubuntu Live system, it uses (concerning your touchpad):

dell_laptop, dell_rbtn, dell_smbios, dell_smm_hwmon, dell_wmi, dell_wmi_descriptor, hid, hid_generic, hid_multitouch, i2c_algo_bit, i2c_hid, i2c_piix4, wmi, wmi_bmof, sparse_keymap

I dont see: MOUSE_PS2_ALPS and HID_ALPS

----------

## MrRoy3

Here's the lsmod from the gentoo live cd : https://pastebin.com/0xVch3qx

and /sys/module: https://pastebin.com/b84EFxFg

I will check that all the modules you listed are included in my kernel (and remove ALPS) and report back

----------

## pietinger

 *MrRoy3 wrote:*   

> I will check that all the modules you listed are included in my kernel (and remove ALPS) and report back

 

I dont know if Ubuntu has patched some drivers; I dont hope so. You should try this:

Enable in "Device Drivers -> I2C support -> I2C Hardware Bus support" ONLY => "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"

(yes, disable all other)

----------

## MrRoy3

 *pietinger wrote:*   

> dell_laptop, dell_rbtn, dell_smbios, dell_smm_hwmon, dell_wmi, dell_wmi_descriptor, hid, hid_generic, hid_multitouch, i2c_algo_bit, i2c_hid, i2c_piix4, wmi, wmi_bmof, sparse_keymap
> 
> I dont see: MOUSE_PS2_ALPS and HID_ALPS

 

I could not find "i2c_hid", but I have the following symbols enabled : I2C_HID_ACPI, I2C_HID_CORE

I also have the following symbols disabled : I2C_HID_OF and I2C_HID_OF_GOODIX

I also couldn't find just "wmi" but I have APCI_WMI enabled and the various Dell related WMI enabled as well.

I cannot remove MOUSE_PS2_ALPS without also removing MOUSE_PS2. Doing so (and removing HID_ALPS) results in the trackpad not working at all.

The PS/2 Generic Mouse doesn't appear anymore in libinput list-devices, and no reference to it in dmesg, but I noticed this message in dmesg:

```

[    0.657261] ------------[ cut here ]------------

[    0.657263] WARNING: CPU: 4 PID: 1 at drivers/i2c/busses/i2c-designware-common.c:471 i2c_dw_clk_rate+0x11/0x20

[    0.657277] Modules linked in:

[    0.657280] CPU: 4 PID: 1 Comm: swapper/0 Not tainted 5.15.19-gentoo #25

[    0.657285] Hardware name: Dell Inc. Inspiron 5515/0WCD6Y, BIOS 1.6.0 11/04/2021

[    0.657286] RIP: 0010:i2c_dw_clk_rate+0x11/0x20

[    0.657293] Code: 48 83 c4 10 5b 5d c3 e8 9d 4c 3b 00 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 8b 47 68 48 85 c0 74 08 e8 92 a0 66 00 89 c0 c3 <0f> 0b c3 66 66 2e 0f 1f 84 00 00 00 00 00 90 48 8b 97 08 05 00 00

[    0.657296] RSP: 0018:ffffa239c007fd28 EFLAGS: 00010246

[    0.657300] RAX: 0000000000000000 RBX: ffff90fe80e7f028 RCX: 0000000000000000

[    0.657302] RDX: ffffa239c007fd34 RSI: ffffa239c01090f4 RDI: ffff90fe80e7f028

[    0.657304] RBP: ffff90fe80e7f028 R08: ffff90ff8652c980 R09: ffff90fe80bfe0c0

[    0.657306] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000

[    0.657308] R13: 000000000000012c R14: 000000000000012c R15: 0000000000000000

[    0.657310] FS:  0000000000000000(0000) GS:ffff90ff86500000(0000) knlGS:0000000000000000

[    0.657313] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033

[    0.657315] CR2: 0000000000000000 CR3: 0000000076e0c000 CR4: 0000000000350ee0

[    0.657318] Call Trace:

[    0.657320]  <TASK>

[    0.657322]  i2c_dw_probe_master+0x100/0x4a0

[    0.657326]  dw_i2c_plat_probe+0x220/0x310

[    0.657330]  platform_probe+0x3a/0x90

[    0.657336]  really_probe.part.0+0xa0/0x290

[    0.657340]  __driver_probe_device+0x8b/0x120

[    0.657344]  driver_probe_device+0x19/0xd0

[    0.657347]  __driver_attach+0xa6/0x170

[    0.657351]  ? __device_attach_driver+0xe0/0xe0

[    0.657355]  bus_for_each_dev+0x73/0xb0

[    0.657358]  bus_add_driver+0x106/0x1b0

[    0.657362]  driver_register+0x8a/0xe0

[    0.657366]  ? i2c_init+0xaf/0xaf

[    0.657370]  do_one_initcall+0x3f/0x1b0

[    0.657375]  kernel_init_freeable+0x1bb/0x203

[    0.657381]  ? rest_init+0xb0/0xb0

[    0.657387]  kernel_init+0x11/0x110

[    0.657392]  ret_from_fork+0x22/0x30

[    0.657396]  </TASK>

[    0.657401] ---[ end trace 23792ab37601d756 ]---
```

----------

## MrRoy3

 *pietinger wrote:*   

> Enable in "Device Drivers -> I2C support -> I2C Hardware Bus support" ONLY => "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"
> 
> (yes, disable all other)

 

Tried it, it is the same as before, but with no designware error in dmesg

To be clear, by "disable all other", do you mean at the "I2C Hardware Bus support" level (where other symbols such as "Diolan U2C-12 USB Adapter" appear) or at the "I2C Support" level, where "APCI I2C Operation region support" appears, for instance?

----------

## MrRoy3

 *pietinger wrote:*   

> I dont know if Ubuntu has patched some drivers; I dont hope so. You should try this:

 

I am going to try another distro to see if this could be the case.

----------

## pietinger

 *MrRoy3 wrote:*   

> To be clear, by "disable all other", do you mean at the "I2C Hardware Bus support" level [...] 

 

Yes.

 *MrRoy3 wrote:*   

> [...] or at the "I2C Support" level, where "APCI I2C Operation region support" appears, for instance?

 

No.

----------

## MrRoy3

 *pietinger wrote:*   

> Yes.

 

Ok, that is what I did.

I tried with MX Linux and the touchpad also works fine on the live CD.

lsmod from MX Linux: https://pastebin.com/9TYLkdLTLast edited by MrRoy3 on Thu Feb 10, 2022 10:02 pm; edited 1 time in total

----------

## pietinger

Its almost the same as with Ubuntu.

 *MrRoy3 wrote:*   

> I tried with MX Linux and the touchpad also works fine on the live CD.

 

With "works fine" you mean, it accepts gestures. It would be needful to know if Ubuntu and MX Linux works with X11 or wayland ... because for this:

 *MrRoy3 wrote:*   

> I also use Wayland (Sway) rather than Xorg,

 

we need a wayland expert (I am not).

(BTW: Of course you should disable all mentioned modules which are not needed anymore like MFD_SYSCON)

----------

## MrRoy3

 *pietinger wrote:*   

> With "works fine" you mean, it accepts gestures.

 

Yes, the mouse move smoothly and without much input lag and scrolling works.

 *pietinger wrote:*   

> It would be needful to know if Ubuntu and MX Linux works with X11 or wayland ... because for this:

 

Good point, MX Linux definitely uses X11 since it comes with Xfce, but for Ubuntu I'm not sure. In any case, I have booted on a Fedora live CD which comes with Gnome-Wayland out of the box, and the trackpad also works fine on Fedora.

What is curious, is that on all the other distros where it works, the libinput list-devices command always returns this part (which is missing from my Gentoo installation):

```
Device:           DELL0A78:00 27C6:0D42 Touchpad

Kernel:           /dev/input/event10

Group:            7

Seat:             seat0, default

Size:             113x77mm

Capabilities:     pointer gesture

Tap-to-click:     disabled

Tap-and-drag:     enabled

Tap drag lock:    disabled

Left-handed:      disabled

Nat.scrolling:    disabled

Middle emulation: disabled

Calibration:      n/a

Scroll methods:   *two-finger edge 

Click methods:    *button-areas clickfinger 

Disable-w-typing: enabled

Accel profiles:   flat *adaptive

Rotation:         n/a
```

I am pretty sure that's the source of the problem, the missing "touchpad" input device. It is also missing from the Gentoo live cd.

I have searched for "27C6 0D42" online hoping to find some documentation or a reference to a specific kernel driver, but nothings comes up...

Is there any way to show which driver is used for specific input devices? Similar to the "lspci -k" command, I suppose.

 *pietinger wrote:*   

> (BTW: Of course you should disable all mentioned modules which are not needed anymore like MFD_SYSCON)

 

Done

----------

## pietinger

 *MrRoy3 wrote:*   

> I have searched for "27C6 0D42" online hoping to find some documentation or a reference to a specific kernel driver, but nothings comes up...
> 
> Is there any way to show which driver is used for specific input devices?

 

I did a google search with: "27C6:0D42" and found these links:

https://bugzilla.kernel.org/show_bug.cgi?id=214749

https://bugzilla.kernel.org/show_bug.cgi?id=214597

This tells me it should work. I have a suspicion you have enabled too much. Do you have this kernel config: https://wiki.gentoo.org/wiki/Libinput ?

In device drivers -> Input device support does it looks like so -> ?

```
-*- Generic input layer (needed for keyboard, mouse, ...)

[*]   Export input device LEDs in sysfs 

[ ]   Support for memoryless force-feedback devices 

-*-   Sparse keymap support library

[ ]   Matrix keymap support library 

      *** Userland interfaces *** 

[*]   Mouse interface 

[*]     Provide legacy /dev/psaux device

(1024)  Horizontal screen resolution

(768)   Vertical screen resolution

[ ]   Joystick interface 

[*]   Event interface 

[ ]   Event debugging 

      *** Input Device Drivers ***

[ ]   Keyboards  ----

[ ]   Mice  ---- 

[ ]   Joysticks/Gamepads  ---- 

[ ]   Tablets  ----  
```

----------

## grknight

 *pietinger wrote:*   

> This tells me it should work. I have a suspicion you have enabled too much. Do you have this kernel config: https://wiki.gentoo.org/wiki/Libinput ?

 

You can never enable "too much" when it comes to drivers in the kernel.  Debug, sure, but drivers just go unused when talking about in-kernel bits.

This is how binary distros, as well as gentoo-kernel{,-bin} kernels, are configured.

----------

## MrRoy3

 *pietinger wrote:*   

> This tells me it should work. I have a suspicion you have enabled too much. Do you have this kernel config: https://wiki.gentoo.org/wiki/Libinput ?

 

Yes

 *pietinger wrote:*   

> In device drivers -> Input device support does it looks like so -> ?
> 
> ```
> -*- Generic input layer (needed for keyboard, mouse, ...)
> 
> ...

 

It wasn't exactly like so, but I have tried exactly this and my trackpad has the same behavior as before   :Crying or Very sad: 

----------

## pietinger

 *grknight wrote:*   

> You can never enable "too much" when it comes to drivers in the kernel.  Debug, sure, but drivers just go unused [...]

 

Moaning about too many enabled drivers is an old habit I have because I see the kernel configuration always from a security point of view. If all possible drivers are enabled as module you should blacklist some for security reasons (e.g. https://madaidans-insecurities.github.io/guides/linux-hardening.html#kasr-kernel-modules). I dont like blacklisting and like a slim kernel.

----------

## pietinger

MrRoy3,

before I give up I would try to take a look into your complete kernel .config. If you want you could wgetpaste it and give me a link here.

----------

## MrRoy3

Thanks pietinger, I appreciate the help. You can find my .config here : https://dpaste.com/CCR83NJWY

Today, I made some tests, the most recent test by enabling a truck load of symbols in the Device Drivers section (mostly as modules). I went through most symbols in Misc devices, I2C support, I3C Support, Input device support and HID Support and enabled basically everything (as modules). Note : the above wgetpaste is from before those tests, as not to pollute what you would check...

Despite doing this, my trackpad is still not detected properly, and does not show as a touchpad in cat /proc/bus/input/devices.

This leads me to believe that it's not a driver issue, but rather a hardware detection issue.

I also tried using gentoo-kernel-bin and genkernel but I could not get those to boot (my root partition is LUKS encrypted, and I didn't get the password prompt from my initramfs using these kernels)

Is it possible that my kernel is missing some parameters that helps it detect hardware? I'm afraid my knowledge on this matter is rather limited so I wouldn't even know what to search for.

----------

## pietinger

Maybe I have found a reason, because I saw I line I am not allowed to see. This line (and some others I dont memorize) was dropped between 5.10.x and 5.15.x

```
CONFIG_FB_SIMPLE=y
```

This tells me, you copied only your old .config into 5.15.x sources without ever doing a "make oldconfig" ... this can lead to troubles ... (I hope you have never edited .config manually; if yes: throw it away).

So, first of all: Do a "make oldconfig" (not "olddefconfig") and answer all questions (say yes to the new SYS_FB_SIMPLE).

After this, check (with "make menuconfig") if all settings you have done are enabled again: I2C and hid settings looking good. Forget I3C (you dont have it). Try to disable all these:

```
CONFIG_INPUT_MOUSE=y

CONFIG_MOUSE_PS2=m

CONFIG_MOUSE_PS2_ALPS=y

CONFIG_MOUSE_PS2_BYD=y

CONFIG_MOUSE_PS2_LOGIPS2PP=y

CONFIG_MOUSE_PS2_SYNAPTICS=y

CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y

CONFIG_MOUSE_PS2_CYPRESS=y

CONFIG_MOUSE_PS2_LIFEBOOK=y

CONFIG_MOUSE_PS2_TRACKPOINT=y

CONFIG_MOUSE_PS2_ELANTECH=y

CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y

# CONFIG_MOUSE_PS2_SENTELIC is not set

# CONFIG_MOUSE_PS2_TOUCHKIT is not set

CONFIG_MOUSE_PS2_FOCALTECH=y

CONFIG_MOUSE_PS2_SMBUS=y

# CONFIG_MOUSE_SERIAL is not set

# CONFIG_MOUSE_APPLETOUCH is not set

# CONFIG_MOUSE_BCM5974 is not set

# CONFIG_MOUSE_CYAPA is not set

CONFIG_MOUSE_ELAN_I2C=y

CONFIG_MOUSE_ELAN_I2C_I2C=y

CONFIG_MOUSE_ELAN_I2C_SMBUS=y

# CONFIG_MOUSE_VSXXXAA is not set

# CONFIG_MOUSE_GPIO is not set

CONFIG_MOUSE_SYNAPTICS_I2C=y

CONFIG_MOUSE_SYNAPTICS_USB=y
```

This is my section (maybe we need touchscreen; this should be done later) =>

```
# Input Device Drivers

#

# CONFIG_INPUT_KEYBOARD is not set

# CONFIG_INPUT_MOUSE is not set

# CONFIG_INPUT_JOYSTICK is not set

# CONFIG_INPUT_TABLET is not set
```

BTW (not related to your problem): You should disable these:

```
CONFIG_DEVMEM=y

CONFIG_NVRAM=y

CONFIG_DEVPORT=y
```

(security reasons; I recommend to do the whole KSPP => https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings )

and enable this:

```
# CONFIG_CHECKPOINT_RESTORE is not set
```

(mesa loves it)

----------

## MrRoy3

 *pietinger wrote:*   

> Maybe I have found a reason, because I saw I line I am not allowed to see. This line (and some others I dont memorize) was dropped between 5.10.x and 5.15.x
> 
> ```
> CONFIG_FB_SIMPLE=y
> ```
> ...

 

I didn't import my .config from 5.10, this is a new install I did just a few days ago using the amd64 minimal install iso for 2022-01-30. It installed into 5.15.16 and I upgraded it shortly after to 5.15.19 (when it moved into stable).

I'm not sure why you say that you are "not allowed to see it" since I can see it in my menuconfig. I tried "make oldconfig" but it said "no change to .config". And I definitely did not modify my .config manually, I always use "make menuconfig".

The reason why I enabled CONFIG_FB_SIMPLE was because I use a LUKS encrypted drive and I couldn't get the passphrase prompt to show up without enabling this, however, at your instructions I disabled it and replaced it with "SYSFB_SIMPLEFB", and it still works (I get the passphrase prompt during boot).

 *pietinger wrote:*   

> After this, check (with "make menuconfig") if all settings you have done are enabled again: I2C and hid settings looking good. Forget I3C (you dont have it). Try to disable all these:
> 
> ```
> CONFIG_INPUT_MOUSE=y
> 
> ...

 

I disabled all of those. Now, the trackpad doesn't work at all, and no mouse shows up in cat /proc/bus/input/devices

 *pietinger wrote:*   

> This is my section (maybe we need touchscreen; this should be done later) =>
> 
> ```
> # Input Device Drivers
> 
> ...

 

I have disabled all of those (and touch screen too); the built-in keyboard doesn't respond anymore, but I plugged in a USB keyboard and that one works.

 *pietinger wrote:*   

> BTW (not related to your problem): You should disable these:
> 
> ```
> CONFIG_DEVMEM=y
> 
> ...

 

I have done this, except the KSPP for now, I plan to do it at a later time though, thanks for the advice   :Smile: 

Here's my new .config, if you want to see it : https://dpaste.com/7DV6XXZFH

----------

## pietinger

 *MrRoy3 wrote:*   

> I'm not sure why you say that you are "not allowed to see it" since I can see it in my menuconfig.

 

Yes, I saw it also. But its gone with 5.15.x. It doesnt exist. This line says: This is not a 5.15.x configuration. So where it comes from ?

 *MrRoy3 wrote:*   

> The reason why I enabled CONFIG_FB_SIMPLE was because [...]

 

With 5.15.x you cannot enable it, because it is not existant anymore ... there is no CONFIG_FB_SIMPLE in a 5.15. kernel configuration (sorry, I am not a native english speaker). I dont care what you have done, but I can confirm that this configuration is broken. Do yourself a favour and try a complete new .config.

----------

## pietinger

P.S.: I forgot: You have no firmware drivers enabled:

```
CONFIG_EXTRA_FIRMWARE=""
```

If its done by your initramfs then its ok, else you should read in our Gentoo Wiki ->

https://wiki.gentoo.org/wiki/AMD_microcode

https://wiki.gentoo.org/wiki/AMDGPU

----------

## MrRoy3

Ok, I will try this tonight.

How do I start from a "new" .config? Should I just delete the one I have and do a make menuconfig, or copy a "default" one from elsewhere?

----------

## pietinger

Best should be to backup your old .config (only to be able to compare) and then do first a "make distclean" (cleans all). If you go into "make menuconfig" you have a new .config with all defaults set (from kernel developers). This is not bootable and usually everybody starts with https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel

There are some other articles I recommend:

https://wiki.gentoo.org/wiki/Kernel/Gentoo_Kernel_Configuration_Guide

https://wiki.gentoo.org/wiki/Kernel/Configuration

Our @NeddySeagoon explains the hardisk modules here:

https://forums.gentoo.org/viewtopic-p-8688524.html#8688524

You NEED also:

https://wiki.gentoo.org/wiki/HDD

and maybe https://wiki.gentoo.org/wiki/NVMe

----------

## MrRoy3

 *pietinger wrote:*   

> P.S.: I forgot: You have no firmware drivers enabled:
> 
> ```
> CONFIG_EXTRA_FIRMWARE=""
> ```
> ...

 

I thought this option was to build the firmware "in-kernel"? My GPU drivers are built as modules, my understanding was that when they are loaded as modules, they will load the firmware automatically when they are loaded, but if they are built in-kernel, then you need to load the firmware as you specified. Is this wrong?

As for the microcode, I will check the link you sent.

----------

## MrRoy3

 *pietinger wrote:*   

> Best should be to backup your old .config (only to be able to compare) and then do first a "make distclean" (cleans all). If you go into "make menuconfig" you have a new .config with all defaults set (from kernel developers). This is not bootable and usually everybody starts with https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel
> 
> There are some other articles I recommend:
> 
> https://wiki.gentoo.org/wiki/Kernel/Gentoo_Kernel_Configuration_Guide
> ...

 

Thanks, I will work on this tonight and report back my laptop is back in a bootable state  :Smile: 

----------

## pietinger

Dont hurry. Take your time you need  :Smile: 

Dont forget to check your list from "lsmod" ...  :Wink: 

----------

## Hu

 *pietinger wrote:*   

> With 5.15.x you cannot enable it, because it is not existant anymore ... there is no CONFIG_FB_SIMPLE in a 5.15. kernel configuration (sorry, I am not a native english speaker). I dont care what you have done, but I can confirm that this configuration is broken. Do yourself a favour and try a complete new .config.

 Where did you see it was removed?  As of v5.15.18, it seems to exist:

```
$ git grep FB_SIMPLE v5.15.18 -- '*Kconfig*'

v5.15.18:drivers/firmware/Kconfig:224:config SYSFB_SIMPLEFB

v5.15.18:drivers/firmware/google/Kconfig:55:    depends on FB_SIMPLE

v5.15.18:drivers/gpu/drm/tiny/Kconfig:67:     On x86 BIOS or UEFI systems, you should also select SYSFB_SIMPLEFB

v5.15.18:drivers/video/fbdev/Kconfig:2195:config FB_SIMPLE

$ git grep -A10 FB_SIMPLE v5.15.18 -- drivers/video/fbdev/Kconfig

v5.15.18:drivers/video/fbdev/Kconfig:2195:config FB_SIMPLE

v5.15.18:drivers/video/fbdev/Kconfig-2196-  tristate "Simple framebuffer support"

v5.15.18:drivers/video/fbdev/Kconfig-2197-  depends on FB

v5.15.18:drivers/video/fbdev/Kconfig-2198-  depends on !DRM_SIMPLEDRM

v5.15.18:drivers/video/fbdev/Kconfig-2199-  select FB_CFB_FILLRECT

v5.15.18:drivers/video/fbdev/Kconfig-2200-  select FB_CFB_COPYAREA

v5.15.18:drivers/video/fbdev/Kconfig-2201-  select FB_CFB_IMAGEBLIT

v5.15.18:drivers/video/fbdev/Kconfig-2202-  help

v5.15.18:drivers/video/fbdev/Kconfig-2203-    Say Y if you want support for a simple frame-buffer.

v5.15.18:drivers/video/fbdev/Kconfig-2204-

v5.15.18:drivers/video/fbdev/Kconfig-2205-    This driver assumes that the display hardware has been initialized

```

----------

## MrRoy3

I have started from a fresh .config (using make distclean and moving my /boot/config* to another folder) and did only the strict minimum changes to my .config to be able to boot (amdgpu drivers, nvme drivers, etc). I avoided making any changes that weren't necessary, but sadly, the issue remains, and the trackpad has the same behavior as before, and does not appear in cat /proc/bus/input/devices.

Following this, I used genkernel to make a kernel (I figured out what I did wrong last time), and even with genkernel, I have the same problem.

----------

## pietinger

 *MrRoy3 wrote:*   

> Following this, I used genkernel to make a kernel (I figured out what I did wrong last time), and even with genkernel, I have the same problem.

 

For the moment I must give up. I see only two possibilities: This Dell needs patched versions of some modules which are included in some distribution, but not in gentoo, or, we have a problem with kernel 5.15.x like it was here: https://forums.gentoo.org/viewtopic-t-1147186-highlight-.html (having another touchpad than yours). I am very sorry not being able to find it. Maybe the only chance it waiting for new kernel versions ?

----------

## pietinger

 *Hu wrote:*   

> Where did you see it was removed?  As of v5.15.18, it seems to exist:

 

Hu, you are right.I should have been more exact:

Before (=some time between 5.10 and 5.15): FB_SIMPLE was available EVEN when SIMPLEDRM was enabled.

Now: If SIMPLEDRM is enabled THEN SIMPLE_FB is not available anymore.

----------

## MrRoy3

 *pietinger wrote:*   

>  *MrRoy3 wrote:*   Following this, I used genkernel to make a kernel (I figured out what I did wrong last time), and even with genkernel, I have the same problem. 
> 
> For the moment I must give up. I see only two possibilities: This Dell needs patched versions of some modules which are included in some distribution, but not in gentoo, or, we have a problem with kernel 5.15.x like it was here: https://forums.gentoo.org/viewtopic-t-1147186-highlight-.html (having another touchpad than yours). I am very sorry not being able to find it. Maybe the only chance it waiting for new kernel versions ?

 

Ok, thanks for your help.

I see that 5.15.23 is stable now, so I will try this version. If it still doesn't work I will try 5.16.9 (unstable), and if it still doesn't work, I will try to revert to 5.10 like the other person in the thread you linked

----------

## MrRoy3

Well, I tried 5.15.23, 5.16.9 and 5.10.100, and I get the same behavior on all kernel versions. In all cases, my touchpad isn't detected as a touchpad, but rather as a PS/2 Mouse.

I recently tried a manjaro live cd (Sway edition) and it works on there as well, with the following device detected:

```
I: Bus=0018 Vendor=27c6 Product=0d42 Version=0100

N: Name="DELL0A78:00 27C6:0D42 Touchpad"

P: Phys=i2c-DELL0A78:00

S: Sysfs=/devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input24

U: Uniq=

H: Handlers=event10 mouse2 

B: PROP=5

B: EV=1b

B: KEY=e520 10000 0 0 0 0

B: ABS=2e0800000000003

B: MSC=20
```

And dmesg:

```
[    9.706485] input: DELL0A78:00 27C6:0D42 Touchpad as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input12

[   10.632404] input: DELL0A78:00 27C6:0D42 Touchpad as /devices/platform/AMDI0010:03/i2c-1/i2c-DELL0A78:00/0018:27C6:0D42.0002/input/input24
```

This one is missing from my Gentoo install.

Is it possible that the root of the problem is that the kernel doesn't detected the hardware itself? Whether the driver is there or not, if the hardware isn't detected, then it won't work correctly. Does that make sense?

On all other distros I tried, dmesg shows that the hardware is detected, but on Gentoo, it doesn't show in dmesg. Maybe I am missing some kernel module that helps to detected some hardware?

----------

## pogwizd

Hi,

On a previous Dell latitude 5491, and my current one (Dell latitude 5521), I had the same problems.

What resolved it was to enable those in the kernel:

```
Device Drivers  --->

     I2C support  ---> 

         I2C Hardware Bus support  --->

              <*> Synopsys DesignWare Platform

     Multifunction device drivers  --->

              <*> Intel Low Power Subsystem support in PCI mode

     HID support  --->

         I2C HID support  --->

             <*> HID over I2C transport layer

```

Maybe it will do the some for you?

For info, here is my dmesg:

```
dmesg | grep -i -e touch -e syna

[    2.878917] usbcore: registered new interface driver synaptics_usb

[    3.211116] input: DELL0A67:00 0488:1024 Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-13/i2c-DELL0A67:00/0018:0488:1024.0001/input/input11

[    3.211181] hid-multitouch 0018:0488:1024.0001: input,hidraw0: I2C HID v1.00 Mouse [DELL0A67:00 0488:1024] on i2c-DELL0A67:00

```

----------

## MrRoy3

That did not work for me   :Sad:   but I have an AMD CPU on my laptop, so I don't think the Intel Low Power Subsystem support is good for me. I haven't found an equilvalent for AMD CPUs.

----------

## pietinger

 *MrRoy3 wrote:*   

> That did not work for me    but I have an AMD CPU on my laptop, so I don't think the Intel Low Power Subsystem support is good for me. I haven't found an equilvalent for AMD CPUs.

 

I think its is dependent on your mainboard you have: You could try this: Go into (I am not an AMD expert - but I have seen it there; because I know Intel Low Power; it is right one line below):

```
Processor type and features  --->

     [ ] Intel Low Power Subsystem Support

=>   [ ] AMD ACPI2Platform devices support

... and maybe also as Module all these

Defvce Drivers ---> I2C support ---> 2C Hardware Bus support  --->

[ ] AMD 8111

[ ] AMD MP2 PCIe

[ ] Synopsys DesignWare Platform
```

It is worth a try, isnt it ?

(of course you need all HID, HID Multitouch we talked about; try it also as module; in Multifunction device drivers I dont know any AMD driver)

----------

## MrRoy3

That also did not work for me. I tried exactly as your mentioned, and then added a few more after that, but no change. It is detected as a normal PS/2 Mouse, and no touchpad is detected.

----------

## pietinger

In an other thread was given this link for a kernel config (for an ASUS notebook with AMD):

https://wiki.gentoo.org/wiki/Asus_Tuf_Gaming_fx505dy#Touchpad

Have you tried all these ?

----------

## MrRoy3

 *pietinger wrote:*   

> In an other thread was given this link for a kernel config (for an ASUS notebook with AMD):
> 
> https://wiki.gentoo.org/wiki/Asus_Tuf_Gaming_fx505dy#Touchpad
> 
> Have you tried all these ?

 

That worked !!!   :Very Happy: 

I think what I was missing was  <*> AMD GPIO pin control

I am not 100% sure about this, I will do more experimentation tonight to pin-point it, and then I have a few superfluous symbols I need to remove

But now it's working correctly, even my touch screen is working now.

I will create a Wiki article on my laptop so no one else has to go through this again

Thanks for all the help !

----------

## pietinger

 *MrRoy3 wrote:*   

> Thanks for all the help !

 

Thank you back to you for trying and responding  :Smile: 

Also a big thank you to @pogwizd for giving input to/for the right way !

----------

