Какие параметры ядра доступны для устранения проблем с USB

17

Существует множество проблем со стеком USB на Rapsberry Pi, и разработчики прилагают все усилия, чтобы исправить их как можно больше. Они вводят некоторые параметры модулей ядра (например dwc_otg.fiq_fix_enable), которые позволяют время от времени исправлять ошибки. Большинство из них по умолчанию включены в последних ядрах, поэтому вы не хотите знать их, чтобы использовать их. Однако всегда полезно знать, что можно отключить при устранении неполадок. И полезно знать, что они вам больше не нужны в вашем cmdline.txt при очистке или переустановке SD-карты.

Так, каков список всех таких опций, что и в чем их смысл?

Кшиштоф Адамски
источник
1
Я понимаю, что вы делаете, но это не вопрос (кроме как в заголовке). Возможно, перенесите большую часть этой информации в свой ответ.
Jivings
1
Да, самодокументирование. Теперь лучше?
Кшиштоф Адамски
1
Выглядит хорошо. Хорошая работа
Jivings
Это очень хорошая тема, особенно на этом раннем этапе RaspPi. Можете ли вы также предоставить подробную информацию о том, как включить эти параметры для полноты?
Beeblebrox

Ответы:

14
  • dwc_otg.speed -> 1 ограничит скорость USB до полной скорости 12 Мбит / с (USB 1.1)
  • dwc_otg.lpm_enable -> 0 по умолчанию, отключает поддержку LPM, никогда не видел здесь никого со значением 1, но он указан по умолчанию cmdline.txt
  • dwc_otg.fiq_fix_enable -> 1 (по умолчанию сейчас) дает около 10% дополнительной производительности ARM, когда USB не занят, за счет уменьшения количества прерываний, которые делает USB
  • dwc_otg.microframe_schedule -> 1 (по умолчанию сейчас). Это должно исправить ошибку, когда присутствует слишком много периодических конечных точек.
  • dwc_otg.nak_holdoff_enable -> 1 (по умолчанию сейчас) NAK Holdoff schame, на самом деле не знаю, что он делает

Есть еще?

Кшиштоф Адамски
источник
dwc_otg.speed = 1, кажется, ломает много клавиатур. Если у вас есть КБ, который не ломается, сообщите мне об этом здесь: raspberrypi.stackexchange.com/questions/4090/…
greggo
1
dwc_otg.fiq_fsm_enable=0смотрите здесь .
CrazyCoder
dwc_otg.nak_holdoff_enable=1В соответствии с этим это также уменьшает прерывания в определенных случаях.
Серин
4

Этот USB-контроллер имеет несколько функций, которыми можно управлять с помощью параметров модуля. Я нашел этот документ с подробным описанием каждого параметра и доступных параметров.

http://www.cl.cam.ac.uk/~atm26/ephemeral/rpi/dwc_otg/doc/html/module%20parameters.html ( архив , сентябрь 2015 г.)

Кажется очевидным, что вы можете нанести вред вашему устройству, если вы установите некоторые из этих параметров. К счастью, исправить это - просто переустановить SD-карту в другом месте и отредактировать файл cmdline.txt.

Майкл
источник