LINUX.ORG.RU

История изменений

Исправление I-Love-Microsoft, (текущая версия) :

Что-то никто не пишет свои вопросы... Может это совсем не требуется для тех у кого есть опыт, но всё же опишу. Тем более, что тот пример что я выложил, работает лишь с относительно свежими ядрами и поэтому проще взять с kernel.org и собрать.

Первое с чего надо начать это вот что: 1) скачать последнее stable ядро с kernel.org (стрелка - самое видное на странице) 2) собрать это ядро - распаковать в любую папку внутри home, скопировав настройку из arch/x86/configs/i386_defconfig (32 бит ОС) или x86_64_defconfig в корневой каталог ядра под именем .config и выполнив make -j 5 и соберется ядро, где 5 это число потоков 3) sudo make install (или вместо sudo под пользователем root это делать) - ядро установится в систему и после перезагрузки можно будет выбрать это ядро как рабочее в системе 4) собрать драйвер: создать в каталоге с драйвером файл Makefile с

obj-m := mypci.o
внутри и выполнить в текущем каталоге
make -C /home/user/linux-4.8.9 M=$(pwd) modules
где 4.8.9 это путь до каталога с ядром которое скачали 5) получившийся файл .ko можно загрузить при помощи sudo insmod mypci.ko - после этого он появится в выводе команды lsmod

В принципе ничего нового, но прежде чем работать с примером, нужно его собрать поверх свежего ядра. Если тут отпишутся те, кто интересовались, можем выложить это в какой-то открытый репозиторий, чтобы можно было вместе пилить и тестировать на железе, попутно разбираясь и отвечая на вопросы.

Исходная версия I-Love-Microsoft, :

Что-то никто не пишет свои вопросы... Может это совсем не требуется для тех у кого есть опыт, но всё же опишу. Тем более, что тот пример что я выложил, работает лишь с относительно свежими ядрами и поэтому проще взять с kernel.org и собрать.

Первое с чего надо начать это вот что: 1) скачать последнее stable ядро с kernel.org (стрелка - самое видное на странице) 2) собрать это ядро - распаковать в любую папку внутри home, скопировав настройку из arch/x86/configs/i386_defconfig (32 бит ОС) или x86_64_defconfig в корневой каталог под именем .config и выполнив make -j 5 и соберется ядро, где 5 это число потоков 3) sudo make install (или вместо sudo под пользователем root это делать) - ядро установится в систему и после перезагрузки можно будет выбрать это ядро как рабочее в системе 4) собрать драйвер: создать в каталоге с драйвером файл Makefile с

obj-m := mypci.o
внутри и выполнить в текущем каталоге
make -C /home/user/linux-4.8.9 M=$(pwd) modules
где 4.8.9 это путь до каталога с ядром которое скачали 5) получившийся файл .ko можно загрузить при помощи sudo insmod mypci.ko - после этого он появится в выводе команды lsmod

В принципе ничего нового, но прежде чем работать с примером, нужно его собрать поверх свежего ядра. Если тут отпишутся те, кто интересовались, можем выложить это в какой-то открытый репозиторий, чтобы можно было вместе пилить и тестировать на железе, попутно разбираясь и отвечая на вопросы.