Page 15 of 46
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 1:48 pm
by CleverMouse
Поддержка UHCI:
http://ftp.kolibrios.org/users/CleverMo ... kernel.mnt .
Всё-таки за документацию я определённо уважаю Microsoft и определённо не уважаю Intel.
Bochs отзывает прерывание UHCI в начале очередного usb-фрейма, так что выключение прерываний на 1 мс в Bochs имеет тяжёлые последствия для uhci. VMWare Player наотрез отказывается доставлять прерывание UHCI при том, что в регистрах UHCI прерывание видно и разрешено, а в регистрах PCI никакие подозрительные биты не установлены. В qemu вроде работает. На ноутбуке с интеловским чипсетом при ближайшем рассмотрении UHCI не оказалось совсем, только контроллеры EHCI.
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 6:57 pm
by SoUrcerer
Взять ядро, взять драйвера и пробовать там, где есть UHCI, так?
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 7:00 pm
by CleverMouse
Да.
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 7:42 pm
by Serge
Пока не взлетело. Клавиатура периодически мигает светодиодом. Лог не удалось получить. Доска отладки падает или зависает. Указывал путь на диске - создала файл размером 1 байт который не читался. Системные часы идут.
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 7:48 pm
by CleverMouse
http://ftp.kolibrios.org/users/CleverMo ... el-dbg.mnt - версия, дублирующая отладочный вывод на экран.
P.S. Реализация обоих контроллеров пока что в ядре для удобства отладки.
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 7:59 pm
by dunkaist
Ноутбук ASUS K50IJ. USB-устройства:
- мышь оптическая ACME CO118 (две кнопки + скролл/кнопка)
- флэшка Kingston на 16GB
- плеер Samsung YP-Q3 (по идее, флэшка на 8GB)
- геймпад Defender
- встроенная камера
Выводы
lspci и
lsusb с подключенными указанными устройствами.
Сохранить логи не имею возможности.
Мышь при подключении всякий раз светила диодом, но никогда не влияла на курсор. Клики тоже не работали.
Первый тест (только мышь (внутренняя камера никуда не делась, конечно), была воткнута до загрузки):
на вкладке user только строчка "
tatus changed, 01A3". далее ничего на этой вкладке не появлялось.
на вкладке kernel каждые полсекунды-секунду появлялись строчки:
Code: Select all
USB port disabled after reset
connect status changed, 01A3
После отключения строчки "бежать" перестали. Далее при каждом отключении никакой реакции со стороны системы. При каждом подключении на вкладке kernel появлялась строчка "connect status changed, 0082", независимо от порта подключения.
Второй тест (только мышь, подключалась после загрузки колибри):
До подключения мыши на вкладке kernel были строки:
Code: Select all
FS - HD read error
UHCI controller at 00:D0 with 2 ports initialized
UHCI controller at 00:D1 with 2 ports initialized
UHCI controller at 00:D2 with 2 ports initialized
UHCI controller at 00:E8 with 2 ports initialized
UHCI controller at 00:E9 with 2 ports initialized
UHCI controller at 00:EA with 2 ports initialized
Подключил мышь - на вкладке ядра появилось "connect status changed, 0082"
При подключении геймпада (с включенной мышью) побежали строки
Code: Select all
USB port disabled after reset
connect status changed, 01A3
На подключение флэшки система никак не реагировала.
Третий тест (только флэшка, подключена до загрузки):
такое же поведение, как и во втором тесте, только вместо одной строчки "FS - HD read error" их было две.
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 8:38 pm
by Mario
Имеет смысл поделить тему?
Re: Тестируем USB OHCI controller
Posted: Mon Aug 15, 2011 8:42 pm
by CleverMouse
Обновлённое ядро
http://ftp.kolibrios.org/users/CleverMo ... kernel.mnt : некоторые изменения и включён отладочный вывод на экран.
Mario, разделять вряд ли стоит, уровни стека USB выше контроллеров одинаковы. Имеет смысл переименовать во что-нибудь менее контроллеро-специфическое.
Re: Тестируем поддержку USB
Posted: Mon Aug 15, 2011 11:35 pm
by CleverMouse
И ещё одно обновление,
http://ftp.kolibrios.org/users/CleverMo ... kernel.mnt . Копирование отладочного лога на экран входит в комплект.
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 12:01 am
by Serge
Подключены мышь Logitech LS-1 и клавиатура Zodiak KM-9010
После инициализации ядра клавиатура периодически мигает светодиодом. На экран последовательно выводятся строчи
USB port disabled after reset
USB port disabled after reset
connect status changed, 01A3
connect status changed, 01A3
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 2:13 pm
by CleverMouse
Как показало вскрытие, VMWare настаивает на том, чтобы в PCI-регистре LEGSUP стоял 13-й бит. Поэтому ещё одно обновление, плюс небольшие изменения в районе опроса портов:
http://ftp.kolibrios.org/users/CleverMo ... kernel.mnt .
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 2:51 pm
by dunkaist
Прошу извинить за задержку.
Диод мыши при подключении всегда горел, сама мышь признаков жизни не подавала (работающий тачпад не может мешать?).
Первый тест (только мышь, включена до загрузки):
около минуты на вкладке ядра бежали три строчки:
Code: Select all
connect status changed, 01A3
status 0280/0080
USB port disabled after reset
Потом появилась строка "error in SET_ADDRESS, USB device disabled" и сообщения прекратились.
Отключил мышь: "connect status changed, 0082".
Подключил мышь: "connect status changed, 0082".
На последующие отключения реакции не было, при подключениях добавлялась строка "connect status changed, 0082".
Второй тест (только мышь, включалась после загрузки):
до включения мыши на вкладке ядра (как и в тот раз)
Code: Select all
FS - HD read error
UHCI controller at 00:D0 with 2 ports initialized
UHCI controller at 00:D1 with 2 ports initialized
UHCI controller at 00:D2 with 2 ports initialized
UHCI controller at 00:E8 with 2 ports initialized
UHCI controller at 00:E9 with 2 ports initialized
UHCI controller at 00:EA with 2 ports initialized
На отключения реакции не было, при подключениях добавлялась строка "connect status changed, 0082".
Ядро из поста перед этим.
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 3:21 pm
by CleverMouse
Хм. Младший бит статуса порта в UHCI означает "устройство подключено", следующий бит "значение предыдущего бита изменилось". 0082 соответствует ситуации "устройство не подключено, но статус подключения изменился со времени последнего сброса статуса". Переход 01A3 -> 0280 соответствует исчезновению устройства в ходе сброса порта.
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 3:43 pm
by dunkaist
Тестировал мышь на всех четырёх доступных USB портах - то же. Отключал в биосе тачпад - никаких изменений. У меня там пара EHCI контроллеров, но скудный биос позволяет отключить только _всю_ подсистему USB.
Других мышей поблизости нет.
Re: Тестируем поддержку USB
Posted: Tue Aug 16, 2011 4:28 pm
by CleverMouse
Хм. Что конкретно будет писать ядро
http://ftp.kolibrios.org/users/CleverMo ... ernel1.mnt ? Желательно с самого начала, определения контроллеров.