2014-01-20 3 views
2

Я пытаюсь добавить USB-драйвер к драйверу последовательного порта для своего устройства арки linux arm, и я заметил, что исходное дерево ядра уже содержит исходные файлы для драйвера FTDI, расположенного в:Компилировать модуль ядра FTDI

драйвера/usb/serial, файлы ftdi_sio.c и ftdi_sio.h.

Когда я перехожу к ядру/драйверам, я не могу найти модуль ftdi_sio.ko где угодно.

Как создать модуль ядра ftdi и включить его в загрузку, чтобы я мог использовать usb для возможности последовательного порта в моем арку linux?

+0

ссылка http://stackoverflow.com/questions/21237632/cross-compile-ftdi-vcp-driver-for-embedded-linux-arm –

+0

'ftdi_sio.ko' не может быть найдена, поскольку она скомпилирована как часть ядра linux. i.e статическая часть модуля linux. – Jeyaram

ответ

3

Я полагаю, у вас есть дерево исходных кодов ядра (от менеджера пакетов дистрибутива) на устройстве руки и вы не кросс-компилирования:

make menuconfig 

Перейдите к: Драйверы устройств -> USB Support -> USB Serial конвертер Поддержка

и выберите «M'odule для USB FTDI Single Port Serial Driver

Выход, сохранить изменения и

make M=drivers/usb/serial/ 
make modules_install 
+0

Спасибо, эти шаги сработали. Если я хочу загрузить с uImage с включенным драйвером сейчас, как бы я начал это делать? Могу ли я запустить make uImage после make modules_install? Я пытался это сделать, и это не сработало. – user3215598

+0

в основном, 'make modules_install' должен делать необходимый материал. он должен скопировать сгенерированный файл .ko в/lib/modules/kernel-version/и runnig 'depmod', поэтому, если вы создаете с теми же источниками, что и текущее запущенное ядро, все в порядке. – Mali

+0

Я на самом деле кросс-компиляция, поэтому я сделал: make ARCH = arm menuconfig, выберите «M'odule для USB FTDI», сделайте M = драйверы/usb/serial ARCH = arm CROSS_COMPILE =/home/z3/bin/arm-, тогда: INSTALL_MOD_PATH = сделать ARCH = arm CROSS_COMPILE =/home/z3/bin/arm modules_install. И все, что мне нужно сделать, это снова u-boot из uImage? (нет необходимости перекомпилировать и построить новый uImage?) – user3215598

1

Отредактируйте .config:

make ARCH=arm menuconfig 

и монтируем модули: make modules и make modules_install

Не забывайте: insmod usbserial.ko и insmod ftdi_sio.ko, если вам нужно, и depmod -a, чтобы их загрузить после цикла питания ,

Смежные вопросы