Quais parâmetros do kernel estão disponíveis para corrigir problemas de USB

16

Existem muitos problemas com a pilha USB no Rapsberry Pi e os desenvolvedores estão trabalhando duro para corrigir o maior número possível deles. Eles introduzem algumas opções de módulos do kernel (como dwc_otg.fiq_fix_enable) que permitem essas correções de tempos em tempos. A maioria deles está sendo ativada por padrão nos kernels recentes, então você não deseja conhecê-los para usá-los. É sempre bom saber o que você pode desativar ao solucionar problemas. E é bom saber que você não precisa mais deles no seu cmdline.txt para limpá-lo ou reinstalar o seu cartão SD.

Então, qual é a lista de todas essas opções e qual é o significado delas?

Krzysztof Adamski
fonte
11
Entendo o que você está fazendo, mas isso não é uma pergunta (exceto no título). Talvez mova a maior parte dessas informações para sua auto-resposta.
Jivings
11
Sim, auto-documentando. É melhor agora?
Krzysztof Adamski
11
Parece bom. Bom trabalho
Jivings
Este é um tópico muito bom, especialmente nesta fase inicial do RaspPi. Você também pode fornecer detalhes de como ativar essas opções para garantir a integridade?
Beeblebrox

Respostas:

14
  • dwc_otg.speed -> 1 limitará a velocidade do USB à velocidade máxima de 12Mbps (USB 1.1)
  • dwc_otg.lpm_enable -> 0 por padrão, desabilita o suporte ao LPM, nunca vi alguém com valor 1 aqui, mas está especificado como padrão cmdline.txt
  • dwc_otg.fiq_fix_enable -> 1 (padrão agora) fornece cerca de 10% de desempenho extra ao ARM quando o USB não está ocupado, diminuindo o número de interrupções que o USB faz
  • dwc_otg.microframe_schedule -> 1 (padrão agora) Isso deve corrigir o erro quando houver muitos pontos de extremidade periódicos
  • dwc_otg.nak_holdoff_enable -> 1 (padrão agora) NAK holdoff schame, realmente não sei o que faz

Existe mais?

Krzysztof Adamski
fonte
dwc_otg.speed = 1 parece quebrar muitos teclados. Se você tem uma KB que não romper com isso, por favor me avise aqui: raspberrypi.stackexchange.com/questions/4090/...
Greggo
11
dwc_otg.fiq_fsm_enable=0, veja aqui .
22714 CrazyCoder
dwc_otg.nak_holdoff_enable=1De acordo com isso , também reduz as interrupções em certos casos.
Cerin
4

Este controlador USB possui vários recursos que podem ser controlados pelos parâmetros do módulo. Encontrei este documento detalhando cada parâmetro e opções disponíveis.

http://www.cl.cam.ac.uk/~atm26/ephemeral/rpi/dwc_otg/doc/html/module%20parameters.html ( arquivo , setembro de 2015)

Parece óbvio que você pode danificar seu dispositivo se definir algumas dessas opções. Felizmente, consertá-lo é uma questão de remontar o cartão SD em outro lugar e editar o arquivo cmdline.txt.

Michael
fonte