fix: НЕ делать detach_kernel_driver() — это отключает audio интерфейсы!
Проблема: detach_kernel_driver(0) отключает ядро от интерфейса 0, который является частью audio function (интерфейсы 0-2). Решение: Убрать detach_kernel_driver() вообще. Control transfer с CTRL_TYPE_VENDOR работает без claim interface и не требует отключения ядра. Это как в xvf_host.py — там тоже нет detach_kernel_driver().
This commit is contained in:
@@ -152,12 +152,8 @@ class XVF3800Controller:
|
||||
_LOGGER.debug("Looking for PID %04x...", pid)
|
||||
dev = usb.core.find(idVendor=self._vendor_id, idProduct=pid)
|
||||
if dev is not None:
|
||||
try:
|
||||
if dev.is_kernel_driver_active(0):
|
||||
_LOGGER.info("Detaching kernel driver from device...")
|
||||
dev.detach_kernel_driver(0)
|
||||
except Exception as exc:
|
||||
_LOGGER.warning("Could not detach kernel driver: %s", exc)
|
||||
# НЕ делаем detach_kernel_driver() — это отключает audio интерфейсы!
|
||||
# Control transfer с CTRL_TYPE_VENDOR работает без claim interface
|
||||
|
||||
self._dev = dev
|
||||
_LOGGER.info(
|
||||
|
||||
Reference in New Issue
Block a user