Ядро не распознает новые устройства из модуля DKMS?

Ядро не распознает новые устройства из модуля DKMS?

Я проделал некоторую работу по обратному портированию модулей ядра для hid-appleи bcm5974(при большой помощи отSicVolo) и написание для них скриптов DKMS, чтобы я мог поддерживать совместимость при обновлениях ядра:

Патчи довольно просты, они просто добавляют поддержку новых идентификаторов USB-продуктов.

Проблема, с которой я столкнулся, заключается в том, что даже после установки этих новых модулей ядра с помощью DKMS мои устройстваникогдапривязанные к правильным драйверам, они всегда привязаны к usbhidи затем к hid-generic, где они должны быть привязаны к hid-appleи bcm5974для клавиатуры и трекпада соответственно.

Изменения естьДействительнопростые и, насколько я могу судить, они должны сообщить ядру достаточнопривяжите нужные устройствакправильные водители.

Есть ли какой-то шаг, который я упускаю, чтобы сообщить ядру, что оно действительно должно привязать эти устройства к этим драйверам? Я устанавливаю модули в неправильном месте в DKMS?

Если я прохожу через трудности повторной привязки устройств к правильным драйверам (т.е.: нахожу, ищу, отвязываю, привязываю), они работают отлично, и патчи функционируют так, как и ожидалось. Но как мне заставить ядро ​​привязывать все правильно?по умолчанию?

решение1

Моя проблема заключалась в том, что я устанавливал пакеты в неправильные каталоги в DKMS.

Важно настроить, DEST_MODULE_LOCATIONчтобы указать на каталог в драйверах ядра, в котором должен находиться ваш модуль. Я устанавливал в /updates, но это было неправильное место. Мне пришлось переместить его в , /kernel/drivers/hidчтобы он был распознан.

Странно то, что DKMS, похоже, все равно устанавливает драйвер, /extrasнезависимо от того, что вы здесь передаете, но каким-то образом это исправляет ситуацию.

Связанный контент