Melhor maneira de abordar erros do kernel HID_MAX_USAGES?

1

Este é um problema que tenho pela segunda vez: basicamente, um dispositivo baseado em USB reporta alguns números errados para "HID_MAX_USAGES", resultando no kernel dando uma mensagem de erro e o dispositivo não está funcionando. Eu tive esse problema com um mouse Sharkoon Drakonia um par de anos atrás, e enquanto o mouse é suportado pelo kernel do linux até agora, o teclado destacável do meu novo Medion P2213T não é. Mas existem todos os tipos de dispositivos disponíveis com esse problema, dê uma olhada no este relatório de erros para saber mais detalhes.

Pelo que li até agora, existem diferentes maneiras de contornar esse problema: O que a maioria das pessoas parece usar é reconstruir o kernel, depois de alterar "HID_MAX_USAGES" em "include / linux / hid.h" para um valor mais alto (principalmente em torno de 64k). Embora isso funcione muito bem, o desenvolvedor indicado no relatório de bug que eu relacionei acima apontou que ele aumentará o uso de memória, e isso levará a um mau desempenho, especialmente em um dispositivo tablet de baixo nível. Além disso, você terá que reconstruir o kernel toda vez que quiser uma atualização de segurança e não puder usar o sistema de atualização automática do kernel (esta é realmente a pior parte) ...

A segunda abordagem seria pensar em corrigir o Descritor de Relatório HID USB, pois normalmente esses altos valores não são justificados de qualquer maneira. Acho que há duas maneiras para isso novamente, consertando-o no próprio firmware do dispositivo ou adicionando-o a algum tipo de lista de permissões no código-fonte do kernel para sobrescrever o valor. Mas é difícil encontrar mais informações nos dois sentidos.

Portanto, tudo se resume a estas perguntas:

Onde eu gostaria de adicionar o teclado destacável a essa "lista de permissões"? Quais dados devo anexar? Eu sei que deveria ser possível, porque o meu mouse Sharkoon é suportado por kernels atualizados até agora.

Existem outras maneiras de fazer o kernel suportar meu dispositivo, sem desativar as atualizações automáticas do kernel?

Obrigado!

    
por elephantery 24.08.2015 / 01:06

0 respostas