MBR (mbr) wrote,
MBR
mbr

Category:

USB again

Продолжаю охуевать от реализации USB. Теперь пройдемся по linux и virtualbox.

lsusb

1. При попытке вывода -v. Начинает хотеть странный дескриптор 0xa. Что за дескриптор, usb.org понятия не имеет. Greg тоже молчит.
2. Про HID Report Descriptors: ** UNAVAILABLE **, думаю, многие в курсе. Но есть подозрения, что это на уровне libusb проблема.

suspend/wakeup

1. После resume выдается сигнал reset. Да, так в исходниках и есть - resume_reset. И все, никакого конфигурирования. В нормальной реализации, согласно стейт-машине usb, устройство должно так и оставаться в состоянии POWERED, ожидания конфигурирования.
2. Мало того, устанавливается реквест SET FEATURE с фичей REMOTE_WAKEUP. Хотя в спецификации четко сказано: The TEST_MODE feature is only defined for a device recipient

Похоже на легаси скопированное с win. Начиная с vista все поменялось. Не факт, что в лучшую сторону.

virtualbox

1. suspend оно пробрасывает, а вот resume - нет. Устройство, заснувшее проброшенным в виртуальную машину, засыпает мертвым сном.
2. reset также не проходит - подозреваю какие-то хаки. В итоге устройство конфигурируется дважды. Согласно стандарта, после этого устройство вообще должно перестать работать и перейти в ADRESSED.

Подозреваю, что PC программисты равно хреново реализовывают стеки, так же как и embedded программисты забивают болт на стейт-машины. Вот, наверное, как-то так оно и работает.

Лучшее - враг хорошего. Надеюсь, этот ман будет вам полезен.
Tags: embed, it
Subscribe

  • Все приходится делать самому (с)

    В коем веке сложились обстоятельства, что пришлось опытную партию самому собирать. Руки вроде помнят :) Заодно нашел штук 40 косяков и…

  • Боль, печаль, USB.

    Решил в коем веке свой зарядный зоопарк проапгрейдить. Пора уже давно на C-C кабели переползать. Купил топовую зарядку baseus компактную, с GaN за…

  • Наебалово

    Однако ж. Если лить в мотоблок и прочие китайские 4х тактные двигатели автомобильное минеральное масло той же спецификации, выходит примерно в 2-2.5…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 2 comments