| Предыдущий | Следующий |
| kIOUSBSyncRequestOnWLThread | kIOUSBLowLatencyFrameListNotPreviouslyAllocated |
kIOUSBHighSpeedSplitError
Ошибка относится к пути transaction translator концентратора
kIOUSBHighSpeedSplitError сообщается об ошибке, отправленной концентратору на высокоскоростной шине при попытке выполнить split-транзакцию. Такие транзакции используются, когда высокоскоростной хост или концентратор переносит трафик устройства полной или низкой скорости через transaction translator. Поэтому результат указывает на путь шины и концентратора, а не только на неудачный запрос приложения.
Его нельзя считать синонимом kIOUSBPipeStalled. Stall — состояние конечной точки, которое может требовать её собственного восстановления; split error относится ко времени и пути трансляции между хостом, концентратором и устройством меньшей скорости. Снятие halt не исправит повреждённый или перегруженный путь transaction translator.
Топология является частью диагноза
- Запишите скорость устройства и все родительские концентраторы до корневого контроллера. Состояние имеет смысл только при переносе функции полной или низкой скорости через высокоскоростной hub.
- Сравните устройство на прямом корневом порту и другом концентраторе. Так можно отделить transaction translator и общий путь hub от поведения конечной точки самого устройства.
- Сохраните параллельную активность USB на том же концентраторе, особенно других функций полной и низкой скорости, вместе с журналами контроллера, точной конечной точкой и типом передачи.
- Повторяемый результат при идентичном трафике — основание проверить концентратор, кабель, порт, драйвер контроллера или электрическое поведение устройства до изменения кадрирования протокола верхнего уровня.
Ссылки
- Apple: коды ошибок IOUSBFamily
- Документация ядра Linux: драйвер EHCI
- Документация Linux USB: transaction translators и split-транзакции
Нужно найти другой код? Найти другой код состояния или ошибки.