реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Загрузка модуля драйвера в ембедед Linux, нужна помощь.
_Vladimir_
сообщение Aug 20 2007, 09:25
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Есть встаиваемый Линукс. Грузится из флэш. Затем монтируется NFS с ност машиной через ethernet.
Надо загрузить два драйвера, например
komdrv.ko
kontronwdt.ko

В /etc/udev/rules.d/ лежит файл "kontron.rules" в котором есть строки
KERNEL=="watchdog", NAME="misc/%k", SYMLINK+="%k"
KERNEL=="lm75", NAME="misc/%k", SYMLINK+="%k"

Это все из BSP .
Очевидно я должен кудато положить модули и сделать линк с именем watchdog.
(Драйвер "lm75" на потом).

В BSP демо варианте прошивки это грузилось вот так

mounting... ramfs at /dev
Creating initial udev device nodes:
making extra nodes
udev startup is finished!
udev demon startup ...done
Using /koKontron eb8347 board driver 0100 for Kernel 2.6.13-rc6
mdrv.ko
Using /kontronwdt.ko

Сейчас выглядит так
Looking up port of RPC 100005/1 on 192.168.0.2
VFS: Mounted root (nfs filesystem).
Freeing unused kernel memory: 132k init
init started: BusyBox v1.00 (2006.06.14-08:04+0000) multi-call binary
mounting... ramfs at /dev
Creating initial udev device nodes:
making extra nodes
udev startup is finished!
udev demon startup ...done

далее идет логин...
Т.е. udev стартует. Но что делать дальше не пойму.
Куда положить *.ко файлы и где и что прописать?.
Если след kontronwdt.ko как-то прослеживался то где была загрузка коmdrv.ko не вообще не понятно.
Чтение доки не проясyило особо. В теории понятно но как практически - не въеду.
Снес только образ демо программки из флэш.

Кто-нибудь может подсказать?
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Aug 20 2007, 14:15
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Загрузил модули руками с помощью insmod.
стали в /dev и в /sys
Только не понял - это альтернативный метод или как...?
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Aug 21 2007, 10:10
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Вопрос снимается. Решил.
Go to the top of the page
 
+Quote Post
Johny
сообщение Aug 24 2007, 10:31
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 140
Регистрация: 18-10-05
Пользователь №: 9 792



Цитата(_Vladimir_ @ Aug 21 2007, 14:10) *
Вопрос снимается. Решил.


Приветствую, коллега.

Судя по описанию X-board PXA?
Ядро у них теперь 2.6?

Я себе мозги не парил, прописал в загрузочных скриптах
insmod
mknode

или как вариант

modprobe

Правда ядро 2.4.19 с Bluez-овым патчем юзаю.
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Aug 29 2007, 12:54
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Цитата(Johny @ Aug 24 2007, 13:31) *
Судя по описанию X-board PXA?

Нет. У меня MPC8347. А Kontron - EB8347. Module E2Brain.

Цитата(Johny @ Aug 24 2007, 13:31) *
Ядро у них теперь 2.6?

Да - 2.6.13. Поставка Модуля c Toolkit-ом + BSP ровно год назад была.

Цитата(Johny @ Aug 24 2007, 13:31) *
Я себе мозги не парил, прописал в загрузочных скриптах
insmod
mknode
или как вариант
modprobe

Правда ядро 2.4.19 с Bluez-овым патчем юзаю.

Спасибо. Я поставил insmod, просто в Linux - embedded первый проект,
и было ложное ощущение что в демо как-то по другому сделано.
Восстановил демо образ и посмотрел - именно insmod в загрузочном.
Go to the top of the page
 
+Quote Post
amw
сообщение Sep 1 2007, 10:21
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Все модули ложатся в каталог
/lib/modules/<версия ядра>
Штатные модули ядра лежат в
/lib/modules/<версия ядра>/kernel
Дополнительные обычно в
/lib/modules/<версия ядра>/misc
При таком размещении modprobe сам найдет модуль по команде
/sbi/modprobe komdrv

Для автоматической загрузки модулей нужны правильные файлы зависимости модулей. Они генерируюся из depmod, который нужно запустить после добавления модуля в каталог /lib/modules/<версия ядра>/

Автоматически могут закружатся модули для PnP устройств и при включенной поддеожке автозакрузки модулей в ядре.

Сообщение отредактировал amw - Sep 1 2007, 10:21


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 08:42
Рейтинг@Mail.ru


Страница сгенерированна за 0.01475 секунд с 7
ELECTRONIX ©2004-2016