You are not logged in.

#1 2022-03-07 18:02:03

freddyg
Member
Registered: 2022-03-07
Posts: 25

Get drivers from another distribution?

I recently purchased a Thinkpad P14s with a touchscreen and have been unable to get it to function under both xorg and wayland with as many of the tools available in the repository and AUR as possible. I spoke with someone on reddit who says this specific hardware is supported on redhat currently, but I don't want to switch. Would I just have to wait for drivers to eventually make their way to arch?

Any help is greatly appreciated.

Offline

#2 2022-03-07 18:17:43

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,364

Re: Get drivers from another distribution?

My suggestion would be to use a Redhat live USB, and, if the touchscreen works, determine what drivers are being used.

My guess is that the driver is in the kernel tree, but is not enabled in the kernel configuration on Arch.  If that is the case, you would have to build the driver either in tree, or out of tree.
https://wiki.archlinux.org/title/Compile_kernel_module

Or, if you don't want to use Redhat at all, you could peruse the Arch kernel configuration using make oldconfig as described in the article above and see if you can find modules related to your hardware to determine what needs be built.   This all sounds a bit scary, but it really is not all that bad.

Edit:  You don't happen to know what kind of touchscreen it is, do you?  I see there are AUR packages for Elo, Goodix, Silead and eGalax.

Last edited by ewaller (2022-03-07 18:23:26)


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#3 2022-03-07 19:21:30

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 13,502

Re: Get drivers from another distribution?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#4 2022-03-08 00:46:51

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

ewaller wrote:

Edit:  You don't happen to know what kind of touchscreen it is, do you?  I see there are AUR packages for Elo, Goodix, Silead and eGalax.

It is a Raydium touchscreen, output of

less /proc/bus/input/devices
I: Bus=0018 Vendor=0000 Product=0000 Version=0000
N: Name="Raydium Touchscreen"
P: Phys=
S: Sysfs=/devices/platform/AMDI0010:01/i2c-1/i2c-RAYD0001:00/input/input10
U: Uniq=
H: Handlers=event7 mouse0 
B: PROP=2
B: EV=b d
B: KEY=400 0 0 0 0 0
B: ABS=661800001000003

Pardon the lack of code block formatting, I am new to the arch forums (obviously) despite using it as a daily driver for years now. Glad to be here now wish I came sooner.

Additionally, it is a thinkpad p14s amd gen2 so there is no wiki page about it specifically, but I have read those pages a bit.

Will try booting redhat in the morning. Staying in a place with poor internet atm so it will take time to download. I will return with updates.

Edit: if it means anything, I am on LTS kernel currently so I imagine this could be my problem. I have had better luck with LTS than the vanilla kernel in the past so I stick it on all builds by default now. Also fixed formatting

Last edited by freddyg (2022-03-08 16:32:47)

Offline

#5 2022-03-08 00:53:52

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: Get drivers from another distribution?

freddyg wrote:

Pardon the lack of code block formatting

No problem smile
https://bbs.archlinux.org/help.php#bbcode


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#6 2022-03-08 07:38:52

seth
Member
Registered: 2012-09-03
Posts: 62,570

Re: Get drivers from another distribution?

There's an input device for the thing.
Does it "work" w/

libinput debug-events

and

xev

in the sense that it produces output when you touch-and-smear it?

Offline

#7 2022-03-08 16:35:31

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

xev and libinput debug-events both return no inputs, I have also tested using the tslib tools to no avail. Trying the fedora solution momentarily.

Offline

#8 2022-03-08 17:31:49

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

Fedora touchscreen is confirmed to work on live USB but I am somewhat confused how to pinpoint and fix this issue. I realize I must add it to the kernel or reboot, but I am not seeing much difference in fedora vs arch by observing lsmod. I thought I had found the missing driver (i2c_hid) but it looks as if it is loading fine on my arch install. I tried booting the standard kernel for arch as well, and was stuck at a black screen.

Upon further inspection on arch, i2c_hid is being filled by i2c_hid_acpi, and i2c_hid_acpi has no driver. Is this normal?

My /proc/bus/input/devices also shows different handlers for the device than fedora. From tests on arch, I have determined it to be event8 but my devices reads event7. How would I override or change this?

Output from devices file, libinput list-devices, and lsmod respectively from Fedora.

devices:

I: Bus=0018 Vendor=2386 Product=4b4e Version=0100
N: Name="RAYD0001:00 2386:4B4E"
P: Phys=i2c-RAYD0001:00
S: Sysfs=/devices/platform/AMDI0010:01/i2c-1/i2c-RAYD0001:00/0018:2386:4B4E.0001/input/input11
U: Uniq=
H: Handlers=mouse2 event8 
B: PROP=2
B: EV=1b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003
B: MSC=20

libinput:

Device:           RAYD0001:00 2386:4B4E
Kernel:           /dev/input/event8
Group:            7
Seat:             seat0, default
Size:             320x180mm
Capabilities:     touch 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      identity matrix
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

lsmod:

Module                  Size  Used by
uinput                 20480  0
exfat                  81920  1
snd_seq_dummy          16384  0
snd_hrtimer            16384  1
nft_objref             16384  1
nf_conntrack_netbios_ns    16384  1
nf_conntrack_broadcast    16384  1 nf_conntrack_netbios_ns
nft_fib_inet           16384  1
nft_fib_ipv4           16384  1 nft_fib_inet
nft_fib_ipv6           16384  1 nft_fib_inet
nft_fib                16384  3 nft_fib_ipv6,nft_fib_ipv4,nft_fib_inet
nft_reject_inet        16384  6
nf_reject_ipv4         16384  1 nft_reject_inet
nf_reject_ipv6         20480  1 nft_reject_inet
nft_reject             16384  1 nft_reject_inet
nft_ct                 20480  16
nft_chain_nat          16384  2
nf_nat                 49152  1 nft_chain_nat
nf_conntrack          163840  4 nf_nat,nft_ct,nf_conntrack_netbios_ns,nf_conntrack_broadcast
nf_defrag_ipv6         24576  1 nf_conntrack
nf_defrag_ipv4         16384  1 nf_conntrack
ip_set                 61440  0
nf_tables             258048  217 nft_ct,nft_reject_inet,nft_fib_ipv6,nft_objref,nft_fib_ipv4,nft_chain_nat,nft_reject,nft_fib,nft_fib_inet
nfnetlink              20480  3 nf_tables,ip_set
qrtr                   20480  4
ns                     32768  1 qrtr
bnep                   28672  2
snd_ctl_led            24576  0
snd_hda_codec_realtek   159744  1
snd_hda_codec_generic    98304  1 snd_hda_codec_realtek
snd_soc_dmic           16384  1
snd_hda_codec_hdmi     73728  1
snd_acp3x_pdm_dma      16384  1
snd_acp3x_rn           16384  6
amdgpu               7802880  1
snd_soc_core          344064  3 snd_acp3x_rn,snd_soc_dmic,snd_acp3x_pdm_dma
snd_hda_intel          57344  15
snd_compress           32768  1 snd_soc_core
snd_intel_dspcfg       28672  1 snd_hda_intel
ac97_bus               16384  1 snd_soc_core
snd_intel_sdw_acpi     20480  1 snd_intel_dspcfg
btusb                  65536  0
intel_rapl_msr         20480  0
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_hda_codec         172032  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
btrtl                  28672  1 btusb
uvcvideo              122880  0
intel_rapl_common      28672  1 intel_rapl_msr
btbcm                  20480  1 btusb
snd_hda_core          110592  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
btintel                36864  1 btusb
videobuf2_vmalloc      20480  1 uvcvideo
snd_hwdep              16384  1 snd_hda_codec
videobuf2_memops       20480  1 videobuf2_vmalloc
bluetooth             671744  14 btrtl,btintel,btbcm,bnep,btusb
mt7921e                90112  0
snd_seq                90112  7 snd_seq_dummy
videobuf2_v4l2         36864  1 uvcvideo
iommu_v2               24576  1 amdgpu
edac_mce_amd           36864  0
videobuf2_common       69632  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
gpu_sched              45056  1 amdgpu
snd_seq_device         16384  1 snd_seq
mt76_connac_lib        40960  1 mt7921e
mt76                   90112  2 mt7921e,mt76_connac_lib
i2c_algo_bit           16384  1 amdgpu
kvm_amd               143360  0
snd_pcm               139264  8 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_compress,snd_soc_core,snd_hda_core,snd_acp3x_pdm_dma,snd_pcm_dmaengine
drm_ttm_helper         16384  1 amdgpu
kvm                  1019904  1 kvm_amd
thinkpad_acpi         126976  0
irqbypass              16384  1 kvm
mac80211             1150976  3 mt76,mt7921e,mt76_connac_lib
ecdh_generic           16384  1 bluetooth
ttm                    81920  2 amdgpu,drm_ttm_helper
snd_timer              49152  3 snd_seq,snd_hrtimer,snd_pcm
platform_profile       16384  1 thinkpad_acpi
videodev              270336  3 videobuf2_v4l2,uvcvideo,videobuf2_common
rapl                   20480  0
ledtrig_audio          16384  3 snd_ctl_led,snd_hda_codec_generic,thinkpad_acpi
cfg80211             1007616  4 mt76,mt7921e,mac80211,mt76_connac_lib
drm_kms_helper        303104  1 amdgpu
snd_rn_pci_acp3x       20480  0
snd                   110592  58 snd_ctl_led,snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_compress,thinkpad_acpi,snd_soc_core,snd_pcm
mc                     65536  4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
rfkill                 36864  8 bluetooth,thinkpad_acpi,cfg80211
libarc4                16384  1 mac80211
cec                    61440  1 drm_kms_helper
snd_pci_acp3x          20480  0
pcspkr                 16384  0
joydev                 28672  0
i2c_piix4              28672  0
soundcore              16384  2 snd_ctl_led,snd
raydium_i2c_ts         28672  0
think_lmi              24576  0
i2c_scmi               20480  0
wmi_bmof               16384  0
firmware_attributes_class    16384  1 think_lmi
acpi_cpufreq           32768  0
drm                   630784  7 gpu_sched,drm_kms_helper,amdgpu,drm_ttm_helper,ttm
zram                   24576  2
ip_tables              32768  0
isofs                  49152  1
squashfs               69632  1
hid_multitouch         32768  0
rtsx_pci_sdmmc         32768  0
mmc_core              192512  1 rtsx_pci_sdmmc
crct10dif_pclmul       16384  1
crc32_pclmul           16384  0
crc32c_intel           24576  2
nvme                   49152  0
uas                    32768  0
ghash_clmulni_intel    16384  0
usb_storage            81920  3 uas
ccp                   110592  1 kvm_amd
serio_raw              20480  0
nvme_core             135168  1 nvme
sp5100_tco             20480  0
ucsi_acpi              16384  0
rtsx_pci              110592  1 rtsx_pci_sdmmc
r8169                  98304  0
typec_ucsi             49152  1 ucsi_acpi
typec                  65536  1 typec_ucsi
wmi                    36864  2 wmi_bmof,think_lmi
video                  57344  1 thinkpad_acpi
i2c_hid_acpi           16384  0
i2c_hid                32768  1 i2c_hid_acpi
sunrpc                655360  1
be2iscsi              126976  0
bnx2i                  57344  0
cnic                   73728  1 bnx2i
uio                    24576  1 cnic
cxgb4i                 53248  0
cxgb4                 540672  1 cxgb4i
tls                   110592  1 cxgb4
cxgb3i                 40960  0
cxgb3                 184320  1 cxgb3i
mdio                   16384  1 cxgb3
libcxgbi               77824  2 cxgb4i,cxgb3i
libcxgb                28672  2 libcxgbi,cxgb3i
qla4xxx               315392  0
iscsi_boot_sysfs       20480  2 be2iscsi,qla4xxx
iscsi_tcp              28672  0
libiscsi_tcp           36864  4 libcxgbi,iscsi_tcp,cxgb4i,cxgb3i
libiscsi               73728  8 be2iscsi,libiscsi_tcp,bnx2i,libcxgbi,iscsi_tcp,qla4xxx,cxgb4i,cxgb3i
scsi_transport_iscsi   143360  7 be2iscsi,libiscsi_tcp,bnx2i,libcxgbi,iscsi_tcp,qla4xxx,libiscsi
loop                   40960  7
fuse                  172032  3

Last edited by freddyg (2022-03-08 18:02:43)

Offline

#9 2022-03-08 18:09:14

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,364

Re: Get drivers from another distribution?

I would start by comparing the output of lspci on Redhat vs Arch Linux.  My guess is i2c_*  and perhaps thinkpad_acpi


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#10 2022-03-08 18:19:50

progandy
Member
Registered: 2012-05-17
Posts: 5,280

Re: Get drivers from another distribution?

Edit: Sorry, I missed that the libinput output is from fedora.

If libinput shows it on arch linux as well, try to get some output with "libinput debug-events" when touching it.

My /proc/bus/input/devices also shows different handlers for the device than fedora. From tests on arch, I have determined it to be event8 but my devices reads event7. How would I override or change this?

That numbering can change depending on the order the devices are detected in. If one device is completely missing, then you might have a problem.

Last edited by progandy (2022-03-08 18:26:51)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#11 2022-03-08 19:43:23

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

libinput list-devices on arch shows the following for the touchscreen. It also hasn't detected anything in terms of touch input when I have tested it before. When trying debug-gui, it says it adds the touchscreen but no input detected still.

Device:           Raydium Touchscreen
Kernel:           /dev/input/event7
Group:            7
Seat:             seat0, default
Size:             35x0mm
Capabilities:     touch 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      identity matrix
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Fedora lspci -k:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
	Subsystem: Lenovo Device 5094
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
	Subsystem: Lenovo Device 5094
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:02.6 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:02.7 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
	Kernel driver in use: pcieport
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
	Kernel driver in use: pcieport
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
	Subsystem: Lenovo Device 5094
	Kernel driver in use: piix4_smbus
	Kernel modules: i2c_piix4, sp5100_tco
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
	Subsystem: Lenovo Device 5094
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166a
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166b
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166c
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166d
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166e
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166f
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1670
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1671
01:00.0 Non-Volatile memory controller: Union Memory (Shenzhen) Device 6304 (rev 03)
	Subsystem: Union Memory (Shenzhen) Device 6304
	Kernel driver in use: nvme
	Kernel modules: nvme
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0e)
	Subsystem: Lenovo Device 5094
	Kernel driver in use: r8169
	Kernel modules: r8169
03:00.0 Network controller: MEDIATEK Corp. Device 7961
	Subsystem: Lenovo Device e0bc
	Kernel driver in use: mt7921e
	Kernel modules: mt7921e
04:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader (rev 01)
	Subsystem: Lenovo Device 5094
	Kernel driver in use: rtsx_pci
	Kernel modules: rtsx_pci
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
	Subsystem: Lenovo Device 5094
	Kernel driver in use: r8169
	Kernel modules: r8169
06:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02)
	Subsystem: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller
	Kernel driver in use: xhci_hcd
07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev d1)
	Subsystem: Lenovo Device 509b
	Kernel driver in use: amdgpu
	Kernel modules: amdgpu
07:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
	Subsystem: Lenovo Device 5094
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
07:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
	Subsystem: Lenovo Device 5094
	Kernel driver in use: ccp
	Kernel modules: ccp
07:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
	Subsystem: Lenovo Device 5094
	Kernel driver in use: xhci_hcd
07:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
	Subsystem: Lenovo Device 5094
	Kernel driver in use: xhci_hcd
07:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor (rev 01)
	Subsystem: Lenovo Device 5094
	Kernel driver in use: snd_rn_pci_acp3x
	Kernel modules: snd_pci_acp3x, snd_rn_pci_acp3x
07:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller
	Subsystem: Lenovo Device 5094
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

Arch lspci -k:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
        Subsystem: Lenovo Device 5094
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
        Subsystem: Lenovo Device 5094
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:02.6 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:02.7 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
        Kernel driver in use: pcieport
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
        Kernel driver in use: pcieport
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
        Subsystem: Lenovo Device 5094
        Kernel driver in use: piix4_smbus
        Kernel modules: i2c_piix4, sp5100_tco
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
        Subsystem: Lenovo Device 5094
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 3
        Kernel driver in use: k10temp
        Kernel modules: k10temp
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 7
01:00.0 Non-Volatile memory controller: Union Memory (Shenzhen) Device 6304 (rev 03)
        Subsystem: Union Memory (Shenzhen) Device 6304
        Kernel driver in use: nvme
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0e)
        Subsystem: Lenovo Device 5094
        Kernel driver in use: r8169
        Kernel modules: r8169
03:00.0 Network controller: MEDIATEK Corp. MT7921 802.11ax PCI Express Wireless Network Adapter
        Subsystem: Lenovo Device e0bc
        Kernel driver in use: mt7921e
        Kernel modules: mt7921e
04:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader (rev 01)
        Subsystem: Lenovo Device 5094
        Kernel driver in use: rtsx_pci
        Kernel modules: rtsx_pci
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
        Subsystem: Lenovo Device 5094
        Kernel driver in use: r8169
        Kernel modules: r8169
06:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02)
        Subsystem: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev d1)
        Subsystem: Lenovo Device 509b
        Kernel driver in use: amdgpu
        Kernel modules: amdgpu
07:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
        Subsystem: Lenovo Device 5094
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
07:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
        Subsystem: Lenovo Device 5094
        Kernel driver in use: ccp
        Kernel modules: ccp
07:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
        Subsystem: Lenovo Device 5094
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
07:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
        Subsystem: Lenovo Device 5094
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
07:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
        Subsystem: Lenovo Device 5094
        Kernel driver in use: snd_rn_pci_acp3x
        Kernel modules: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x
07:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller
        Subsystem: Lenovo Device 5094
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

Everything to this point has seemed pretty similar. I installed i2c-tools-git and the touchpad's event moved to event 6 mouse 0 but still is not functional.

Last edited by freddyg (2022-03-08 20:23:33)

Offline

#12 2022-03-08 20:27:42

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

Checking dmesg | grep -i ray as seen in an older kind of relevant post reveals the following

[   21.437028] raydium_ts i2c-RAYD0001:00: supply avdd not found, using dummy regulator
[   21.437424] raydium_ts i2c-RAYD0001:00: supply vccio not found, using dummy regulator
[   21.558341] input: Raydium Touchscreen as /devices/platform/AMDI0010:01/i2c-1/i2c-RAYD0001:00/input/input7
[   94.580173] raydium_ts i2c-RAYD0001:00: raydium_i2c_irq: invalid packet crc 0x491 vs 0xeb00
[   94.588757] raydium_ts i2c-RAYD0001:00: raydium_i2c_irq: invalid packet crc 0x4e9 vs 0xeb00
[   94.597953] raydium_ts i2c-RAYD0001:00: raydium_i2c_irq: invalid packet crc 0x448 vs 0xeb00

With the final three entries repeating quite a bit, even running the command twice subsequently reveals a ton more of the same kind of entry. It normally doesn't happen unless I touch it though, and then there are more entries. Modprobe hid-multitouch didn't work.

Last edited by freddyg (2022-03-08 20:29:11)

Offline

#13 2022-03-09 23:45:59

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

Spent more time on this issue today, I found a raydium_i2c_ts driver spot on lsmod with nothing filling its place, but when I run

insmod: ERROR: could not insert module /lib/modules/5.15.27-1-lts/kernel/drivers/input/touchscreen/raydium_i2c_ts.ko.zst: File exists

Last edited by freddyg (2022-03-11 17:53:50)

Offline

#14 2022-03-10 04:49:22

progandy
Member
Registered: 2012-05-17
Posts: 5,280

Re: Get drivers from another distribution?

I think you misunderstand the lsmod output. The left column lists the modules that are loaded. The right column lists modules are are dependent on that module on the left, similar to the "Required by" field in "pacman -Qi"

If your fedora test used kernel 5.16, then I suggest you try that as well with arch linux.

Last edited by progandy (2022-03-10 04:50:42)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#15 2022-03-10 20:24:28

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

Most recent default arch kernel (5.16 at the time of writing) finally boots correctly but also does not have touch screen or anything different from the other posts. Tested in KDE on xorg and Sway on wayland.

Only notable difference between how each OS picks up the device is arch uses a name to title it in libinput where fedora just uses the driver and device ID. Is there a way I could specify this to libinput on arch?

Update:

libinput in KDE today displyed

event7  - Raydium Touchscreen: kernel bug: device has min == max on ABS_X

Xorg log shows

[    11.557] (II) config/udev: Adding input device Raydium Touchscreen (/dev/input/event7)
[    11.557] (**) Raydium Touchscreen: Applying InputClass "evdev touchscreen catchall"
[    11.557] (**) Raydium Touchscreen: Applying InputClass "libinput touchscreen catchall"
[    11.557] (**) Raydium Touchscreen: Applying InputClass "clickpad-buttons"
[    11.557] (II) Using input driver 'libinput' for 'Raydium Touchscreen'
[    11.557] (**) Raydium Touchscreen: always reports core events
[    11.557] (**) Option "Device" "/dev/input/event7"
[    11.558] (II) event7  - Raydium Touchscreen: is tagged by udev as: Touchscreen
[    11.558] (EE) event7  - Raydium Touchscreen: kernel bug: device has min == max on ABS_X
[    11.558] (II) event7  - Raydium Touchscreen: was rejected
[    11.643] (II) event7  - not using input device '/dev/input/event7'.
[    11.643] (EE) libinput: Raydium Touchscreen: Failed to create a device for /dev/input/event7
[    11.643] (EE) PreInit returned 2 for "Raydium Touchscreen"
[    11.643] (II) UnloadModule: "libinput"
[    11.644] (II) config/udev: Adding input device Raydium Touchscreen (/dev/input/mouse0)
[    11.644] (II) No input driver specified, ignoring this device.
[    11.644] (II) This device may have been added with another device file.

Last edited by freddyg (2022-03-11 17:54:03)

Offline

#16 2022-03-11 18:16:17

freddyg
Member
Registered: 2022-03-07
Posts: 25

Re: Get drivers from another distribution?

SOLUTION FOUND!

Blacklisting the kernel with

echo "blacklist raydium_i2c_ts" | sudo tee /etc/modprobe.d/unneeded-modules.conf

Upon reboot, configuring the touchscreen in KDE works effortlessly. Thanks for all the suggestions everyone!

Offline

Board footer

Powered by FluxBB