LINUX.ORG.RU

Если два драйвера обслуживают одно устройство

 


0

1

Привет, ЛОР! Есть одна тян одно USB-устройство. Оно может обслуживаться двумя драйверами. Для разных целей. Я поясню. Устройство косплеит uart. То есть tty-порт. Но, разумеется, это только интерфейс к внутренней начинке. И соответственно, оно может обслуживаться 2-мя драйверами. Общим, для tty-портов. И специальным драйвером, который уже знает приёмчики команды.

По умолчанию, общий драйвер цепляет устройство первым. Чтобы переключить на второй драйвер, нужно определить usb-path и сделать unbind по найденному пути. Соответственно потом исполнить bind для второго драйвера, но он и сам может найти при загрузке модуля. Просто если уже подцеплено первым драйвером, то он не может его сам перехватить.

В связи с этим вопрос, есть ли в линукс стандартный способ привязки устройств к драйверам и наоборот? Окромя как руками байнд-анбайнд. Блэклист модуля – не выход, так как модуль нужен для других устройств.

★★★★★

Дружище, твой аватар называется udev и такие истории похожи на работу с usb-модемом, который по дефолтю превращаяется в эмулируемый cd-rom

anonymous
()

через alias не работает? Типа

alias usb:v3574p6211d*dc*dsc*dp*ic*isc*ip*in* mt7921u

Еще можно загружать драйвер перед загрузкой драйвера man modprobe.conf /install

vel ★★★★★
()