Meu teclado não tem um driver Linux, alguém pode me dizer o que significam essas mensagens de erro?

1

Esta pergunta pode ser melhor feita em unix.stackexchange.com, mas estou perguntando aqui porque tenho certeza que alguém terá uma resposta.

Meu keybaord não tem um driver para Linux, e estou pensando em tentar escrever um como uma maneira de aprender C. Eu tenho um livro, mas um bom projeto também é útil. Eu realmente não sei como fazer isso, mas isso é uma questão para outro lugar e hora. A pergunta que tenho agora é o que significam as seguintes mensagens de erro?

Eu recebo 54 deles na inicialização, cada um com um número principal diferente entre parênteses.

[ 1.543402] hid-generic 0003:05C7:2012.0004: unknown main item tag 0x0

e depois recebo 1 destes:

[ 1.546827] hid-generic 0003:05C7:2012.0004: unbalanced collection at end of report description

e 1 deles:

[ 1.547479] hid-generic: probe of 0003:05C7:2012.0004 failed with error -22

Alguém pode me dizer o que isso significa? Eu sei de fato que é o meu teclado. As mensagens desaparecem quando eu o desconecto.

    
por Jonathan 25.11.2015 / 19:00

1 resposta

1

Peço desculpas por estragar sua diversão, mas não parece um bom projeto. Por um lado, há este relatório de bug do Launchpad que soa muito parecido com o seu. Em segundo lugar, há uma solução possível no no sempre útil Wiki do Arch Linux : é recomendável que você ative o EHCI Hand-off nas configurações da BIOS.

Se é realmente um bug, ou uma configuração incorreta das configurações do BIOS, dificilmente é uma questão a ser resolvida por escrever um bom driver. Minha inclinação pessoal é que é uma questão de configuração da BIOS (você me avisa?) Porque este colega alemão reporta usando exatamente o seu teclado genérico sem problemas em 2006. Ele mostra a saída de

cat /proc/bus/input/devices
.......
I: Bus=0003 Vendor=05c7 Product=2012 Version=0001
N: Name="Generic USB K/B"

que é exatamente o seu teclado, conforme relatado por

[    1.543402] hid-generic 0003:05C7:2012.0004: unknown main item tag 0x0

Quanto ao significado das mensagens de erro, posso ajudá-lo apenas parcialmente: escondeu -genérico é um driver para periféricos compatíveis com HID. HID (= Human Interface Device) é um protocolo para a especificação de dispositivos de entrada / saída que garante a compatibilidade de componentes em diferentes computadores. Você pode encontrar uma boa introdução para HID aqui .

Você estava procurando por um projeto (avançado!) C: você pode procurar as mensagens de erro encontradas no código do driver hid-generic mencionado acima. Eu sou muito preguiçoso para fazer isso sozinho.

    
por 25.11.2015 / 19:41