内核---添加驱动资料内容
duyiwuer11
duyiwuer11 Lv.5
2017年08月30日 16:37:52
只看楼主

怎样修改kconfig 第一步:在对应的设备驱动目录下将kconfig打开,然后修改: /999/linux-2.6.32.2/drivers/char中的kconfig打开: 修改后然后保存。在linux 目录下终端中输入make menuconfig 如下所示: 范例1说明: config LEDS_MINI2440 tristate

怎样修改kconfig
第一步:在对应的设备驱动目录下将kconfig打开,然后修改:
/999/linux-2.6.32.2/drivers/char中的kconfig打开:
修改后然后保存。在linux 目录下终端中输入make menuconfig 如下所示:
范例1说明:
config LEDS_MINI2440
tristate "LED Support for Mini2440 GPIO LEDs" //tristate 表示有三种选择*或m或不选
// 如果 tristate换成bool 表示只有两种选择,选中*和不选中
depends on MACH_MINI2440
// 依赖于MACH_MINI2440宏, 如果定义了改MACH_MINI2440 宏,那么上面一行菜单才会出现。
default y if MACH_MINI2440 // 即如果选中了 MACH_MINI2440 才能编译进内核
help
This option enables support for LEDs connected to GPIO lines
on Mini2440 boards.
一般可以不用配置依赖的宏:即如下:
config LEDS_MINI2440
tristate "LED Support for Mini2440 GPIO LEDs" //tristate 表示有三种选择
default y // 如果是 y 就默认编译进内核,如果为 m 默认选项选择编译进模块。如是 n
// 表示默认不选。
Help //帮助信息
This option enables support for LEDs connected to GPIO lines
on Mini2440 boards.
第二步:在linux根目录下输入make menuconfig即可看到。
第三步:修改 makefile(在驱动对应的目下的makefile
说明obj-$(CONFIG_LEDS_MINI2440) += mini2440_leds.o
根据CONFIG_LEDS_MINI2440来决定后面mini2440_leds.o代码的编译方式(有的编译成模块有的编译进内核或者不编译)
第四步:写mini2440_leds.c对应的驱动程序
第五步:如果编译进内核就在make menuconfig中对应选项选择为*,如果编译为模块就选为m。
4.8.8知识点8:编写驱动程序实例:
第一步:编写驱动程序:leddeng.c
第二步:修改kconfig(在驱动程序对应的目录下的kconfig)
第三步:修改makefile (在驱动程序对应的目录下的kconfig)
第四步: make menuconfig添加选项:(linux根目录下)
第五步: make modules(编译模块程序)(如果make驱动就直接编译进内核)

免费打赏

相关推荐

APP内打开