#linux #module #kernel #beagleboard #recompile
#linux #модуль #ядро #beagleboard #перекомпилировать
Вопрос:
Я использую его g_file_storage
в качестве драйвера на своем embedded linux
компьютере, чтобы использовать его в качестве накопителя для любого usb-хоста.Я сделал это хорошо!!
Теперь мне нужно сделать больше …. это зафиксировать событие извлечения на usb-устройстве .. это функциональность, не предоставляемая g_file_storage
до сих пор.
У меня есть это function fsg_suspend()
в g_file_storage driver
…Это процедура, которая вызывается, когда USB-хост Windows выполняет "Safely remove hardware"
…..
я подумываю о добавлении простого printk для отправки простого сообщения в функции /var/log/message
in fsg_suspend
, которую я буду просматривать из пользовательского пространства BeagleBoard
…..
но я сомневаюсь в очень простом программировании ядра…если вы можете мне помочь….
я написал простые модули ядра .. допустим, module.c
файл, я использую простую команду make для его компиляции, затем modprobe/insmod
вставляю его, а затем использую …… речь идет о модуле, полностью написанном мной.
и
я также настроил модуль как параметр M в файле конфигурации при перекомпиляции ядра .. затем я создаю, создаю модули, создаю modules_install
, make_install
затем мы используем modprobe
для использования этой конкретной функции .. пожалуйста, поправьте меня, если я ошибаюсь….
Но здесь этот модуль является модулем ядра, если я внесу в него изменения, то ……..
могу ли я просто перекомпилировать его, используя его makefile …и выполните modprobe …? но этот Makefile, похоже, не поддерживает эту идею ..
будет ли это мешать работе уже существующей копии этого модуля в запущенном ядре? Или мне придется перекомпилировать ядро?
Ответ №1:
Я не понимаю большую часть первой половины запроса. Вопрос помечен как Linux и kernel, так почему же так много говорится о Windows?
Если я правильно понимаю, вам придется отключить существующий драйвер устройства. Самый простой способ — это перестроить ядро без него. Затем используйте команды insmod
и rmmod
для загрузки и выгрузки нового драйвера.
Я не могу судить по предоставленным вами деталям, но, возможно, есть способ, чтобы новый драйвер сосуществовал со старым. Если ему не нужен IRQ или он может использовать отдельный, то вы можете создать новые узлы устройства и использовать его независимо от существующего драйвера.
Комментарии:
1. Там есть только одна строка о Windows, не так ли?