Faça um lsmode veja qual desses drivers está carregado. Você também pode querer ler o seu /var/log/Xorg.0.log.
Wingedsubmariner
essas perguntas foram um acompanhamento da minha anterior . Para ser honesto, parece que nenhum está carregado.
banuy
Respostas:
34
É provável que nenhum deles esteja fazendo isso. No meu sistema, por exemplo, onde estou usando o Fedora 19 e um Thinkpad 410 com um touchpad Synaptic, também não tenho driver do Kernel.
Então, o que está cuidando deste dispositivo? Bem, na verdade é este módulo do Kernel:
$ lsmod|grep -iE "input"
uinput 17672 0
Se você quiser ver mais sobre este módulo, pode usar modinfo uinput:
$ modinfo uinput
filename: /lib/modules/3.13.11-100.fc19.x86_64/kernel/drivers/input/misc/uinput.ko
version: 0.3
license: GPL
description: User level driver support for input subsystem
author: Aristeu Sergio Rozanski Filho
alias: devname:uinput
alias: char-major-10-223
...
Como se vê, dispositivos de entrada como esses geralmente são tratados em um nível superior, nesse caso, os drivers reais são implementados no nível X11.
O uinput é um módulo do kernel do linux que permite manipular o subsistema de entrada da terra do usuário. Pode ser usado para criar e manipular dispositivos de entrada de um aplicativo. Ele cria um dispositivo de caracteres no diretório / dev / input. O dispositivo é uma interface virtual, não pertence a um dispositivo físico.
Eles estão no subsistema do X11. Você pode ver o dispositivo usando o xinput --listcomando Por exemplo, aqui estão os dispositivos no meu laptop Thinkpad:
Indo mais fundo se o seu sistema estiver usando um touchpad Synaptic (que acredito que eles representam ~ 90% de todos os touchpads), você pode fazer um locate synaptics | grep xorgque revele os seguintes arquivos:
É o que associa os dispositivos físicos a esse driver. E você provavelmente está se perguntando, como esse cara pode ter tanta certeza? O uso deste comando mostra o dispositivo associado ao meu Synaptic TouchPad fornecido usando id=12a xinput --listsaída que mostrei anteriormente:
Muito interessante! Ao usar o driver mtrack xorg em vez de synaptics, encontrei algo diferente do que você disse na página mtrack : "Suporta qualquer trackpad cujo driver do kernel use o protocolo multitoque com fenda". Parece que o motorista xorg não realmente ter contato direto com o hardware, mas a sua resposta parece conflitos com esta declaração ...
xuhdev
Eu acho que o driver de entrada do xorg é diferente do driver de dispositivo. Corri journalctl -b 0e procurei touchpad, e tenho essa linha (**) bcm5974: Applying InputClass "evdev touchpad catchall". Assim que eu sei bcm5974é o driver de dispositivo
xuhdev
@xuhdev - o driver do xorg está obtendo os dados de movimento através do uinputmódulo do kernel (driver). O que não está claro sobre essa afirmação?
slm
@ SLI Eu acho que o OP está perguntando sobre o driver de dispositivo, não o driver xorg. O que você mostrou é o driver xorg, que, pelo meu entendimento, é totalmente diferente do driver de dispositivo. uinputo módulo não é direcionado relacionado a dispositivos de hardware; depende dos drivers de hardware para fornecer as informações corretas e, em seguida, o uinput fornece uma interface de entrada unificada para a terra do usuário. O software userland, neste caso o driver synaptics xorg, pode conectar o xorg ao kernel (e a entrada do usuário indiretamente) usando o uinput. Por favor me corrijam se eu estiver errado, como eu não sou um perito neste campo ..
xuhdev
Você também deve incluir hid_multitouchna sua lista. Acho que é isso que está gerenciando o touchpad no meu Dell Precision, e não tenho o uinputmódulo carregado.
Cerin
2
$ cat /var/log/Xorg.0.log | grep "input driver"
No meu laptop, mostra:
...
[ 9.054] (II) Using input driver 'synaptics' for 'Elan Touchpad'
...
Não use cat | grep como você pode usar diretamente grepem arquivos que ignoram o catcomando.
Thomas
grep -e "input driver" /var/log/Xorg.0.log
masterwok
journalctl -u display-manager | grep "input driver"e xinput --listme ajudou a descobrir que preciso habilitar a opção do kernel "Elantech" ao recompilar o kernel.
lsmod
e veja qual desses drivers está carregado. Você também pode querer ler o seu/var/log/Xorg.0.log
.Respostas:
É provável que nenhum deles esteja fazendo isso. No meu sistema, por exemplo, onde estou usando o Fedora 19 e um Thinkpad 410 com um touchpad Synaptic, também não tenho driver do Kernel.
Então, o que está cuidando deste dispositivo? Bem, na verdade é este módulo do Kernel:
Se você quiser ver mais sobre este módulo, pode usar
modinfo uinput
:Como se vê, dispositivos de entrada como esses geralmente são tratados em um nível superior, nesse caso, os drivers reais são implementados no nível X11.
FONTE: Introdução ao uinput: o subsistema de entrada no nível do usuário
Então, onde estão os drivers do meu touchpad?
Eles estão no subsistema do X11. Você pode ver o dispositivo usando o
xinput --list
comando Por exemplo, aqui estão os dispositivos no meu laptop Thinkpad:Observe que meu TouchPad aparece nesta lista. Você pode descobrir informações adicionais sobre esses dispositivos
/proc
, por exemplo:OK, mas onde está o motorista?
Indo mais fundo se o seu sistema estiver usando um touchpad Synaptic (que acredito que eles representam ~ 90% de todos os touchpads), você pode fazer um
locate synaptics | grep xorg
que revele os seguintes arquivos:Os primeiros resultados são o driver que você está perguntando. Ele é carregado no X.org através do segundo arquivo aqui:
E esta linha:
É o que associa os dispositivos físicos a esse driver. E você provavelmente está se perguntando, como esse cara pode ter tanta certeza? O uso deste comando mostra o dispositivo associado ao meu Synaptic TouchPad fornecido usando
id=12
axinput --list
saída que mostrei anteriormente:fonte
journalctl -b 0
e procureitouchpad
, e tenho essa linha(**) bcm5974: Applying InputClass "evdev touchpad catchall"
. Assim que eu seibcm5974
é o driver de dispositivouinput
módulo do kernel (driver). O que não está claro sobre essa afirmação?uinput
o módulo não é direcionado relacionado a dispositivos de hardware; depende dos drivers de hardware para fornecer as informações corretas e, em seguida, o uinput fornece uma interface de entrada unificada para a terra do usuário. O software userland, neste caso o driver synaptics xorg, pode conectar o xorg ao kernel (e a entrada do usuário indiretamente) usando o uinput. Por favor me corrijam se eu estiver errado, como eu não sou um perito neste campo ..hid_multitouch
na sua lista. Acho que é isso que está gerenciando o touchpad no meu Dell Precision, e não tenho ouinput
módulo carregado.No meu laptop, mostra:
fonte
cat | grep
como você pode usar diretamentegrep
em arquivos que ignoram ocat
comando.grep -e "input driver" /var/log/Xorg.0.log
journalctl -u display-manager | grep "input driver"
exinput --list
me ajudou a descobrir que preciso habilitar a opção do kernel "Elantech" ao recompilar o kernel.