向内核中添加驱动
2009-05-21 20:15
211 查看
本文为《编译S3C2410的kernel》的续
这里以最简单的驱动为例:网卡驱动。
步骤一:
准备网卡驱动程序,enc28j60.c、enc28j60.h。
步骤二:
在内核的驱动目录下建立ncard的文件夹
# cd /home/su/kernel/drivers
# mkdir ncart
把网卡驱动程序拷到该文件夹下
# cd ncard
# cp /home/su/enc28j60.c /home/su/enc28j60.h ./
步骤三:
在网卡驱动的目录下写一个配置文件Config.in
# vi Config.in
其内容如下:
#netcard drviver configuration
mainmenu_option next_comment
comment 'Net Card Driver'
bool 'NET CARD support' CONFIG_NCARD
endmenu
步骤四:
在网卡驱动的目录下写Makefile
# vi Makefile
其内容如下:
#driver Makefile
O_TARGET := ncard.o
export-objs :=
obj-$(CONFIG_NCARD) += enc28j60.o
include $(TOPDIR)/Rules.make
步骤五:
修改总驱动目录下的Makefile
# pwd
/home/su/kernel/drivers/ncard
# cd ..
# vi Makefile
在其42行加入以下这句:
subdir-$(CONFIG_NCARD) += ncard
步骤六:
修改kernel中某个目录下的Config.in 文件,这里选择改kernel/arch/arm 下的Config.in
# cd /home/su/kernel/arch/arm
# vi Config.in
在其最后一行加入下面的一句话:
source drivers/ncard/Config.in
步骤七:
修改kernel顶层目录的Makefile
# cd /home/su/kernel
# vi Makefile
在161行加入如下的一句话:
DRIVERS-$(CONFIG_NCARD) += drivers/ncard/ncard.o
步骤八:
配置内核的选项
# make menuconfig
这时,可看到菜单列表中多了一项
Net Card Drive --à
进去按“Y”选上,形如
【*】NET CARD support
步骤九:
保存,退出
步骤十:
编译内核
# make zImage
步骤十一:
新生成的内核zImage,可在kernel/arch/arm/boot 下找到,把其烧到arm板上。
这里以最简单的驱动为例:网卡驱动。
步骤一:
准备网卡驱动程序,enc28j60.c、enc28j60.h。
步骤二:
在内核的驱动目录下建立ncard的文件夹
# cd /home/su/kernel/drivers
# mkdir ncart
把网卡驱动程序拷到该文件夹下
# cd ncard
# cp /home/su/enc28j60.c /home/su/enc28j60.h ./
步骤三:
在网卡驱动的目录下写一个配置文件Config.in
# vi Config.in
其内容如下:
#netcard drviver configuration
mainmenu_option next_comment
comment 'Net Card Driver'
bool 'NET CARD support' CONFIG_NCARD
endmenu
步骤四:
在网卡驱动的目录下写Makefile
# vi Makefile
其内容如下:
#driver Makefile
O_TARGET := ncard.o
export-objs :=
obj-$(CONFIG_NCARD) += enc28j60.o
include $(TOPDIR)/Rules.make
步骤五:
修改总驱动目录下的Makefile
# pwd
/home/su/kernel/drivers/ncard
# cd ..
# vi Makefile
在其42行加入以下这句:
subdir-$(CONFIG_NCARD) += ncard
步骤六:
修改kernel中某个目录下的Config.in 文件,这里选择改kernel/arch/arm 下的Config.in
# cd /home/su/kernel/arch/arm
# vi Config.in
在其最后一行加入下面的一句话:
source drivers/ncard/Config.in
步骤七:
修改kernel顶层目录的Makefile
# cd /home/su/kernel
# vi Makefile
在161行加入如下的一句话:
DRIVERS-$(CONFIG_NCARD) += drivers/ncard/ncard.o
步骤八:
配置内核的选项
# make menuconfig
这时,可看到菜单列表中多了一项
Net Card Drive --à
进去按“Y”选上,形如
【*】NET CARD support
步骤九:
保存,退出
步骤十:
编译内核
# make zImage
步骤十一:
新生成的内核zImage,可在kernel/arch/arm/boot 下找到,把其烧到arm板上。
相关文章推荐
- 添加一个新的驱动到内核
- 如何把一个自己写的外部驱动模块编译添加到内核中 来自网络
- linux-2.6.35内核移植—LCD驱动的添加
- Linux 内核设备驱动之GPIO驱动之GPIO 管脚添加
- Linux-2.6.32.2内核在mini2440上的移植(八)---添加ADC驱动
- linux-2.6.35内核配置和网卡驱动添加
- 【引用】Linux-2.6.32.2内核在mini2440上的移植(六)---添加LCD背光驱动
- S3c6410 linux内核移植(9)---添加adc驱动、电池电量检测之文件修改
- 为Android内核添加新驱动,并添加到menuconfig菜单【实践简记】
- 内核自带按键驱动的添加与测试
- 往android的内核添加驱动及ueventd.rc 修改
- 【内核驱动】 在内核源码中添加第一个驱动程序
- linux-2.6.35内核配置和网卡驱动添加 .
- S5PV210之添加缺少的-内核提供的'.h'文件 linux3.0.8驱动
- linux-2.6.35内核移植—USB驱动的添加
- i2c 与 spi 设备在新版内核中不采用DTS设备树形式 在驱动添加设备信息(board_info)的方法
- 向内核添加一个新驱动
- S3c6410 linux内核移植(10)---添加充电控制脚驱动(LED驱动)
- 在linux-2.6.29.1内核中修改添加DM9000的驱动
- 为Android内核添加新驱动,并添加menuconfig菜单