将驱动编译到内核笔记

6 篇文章 0 订阅
2 篇文章 0 订阅

文件夹的选择

把我们的驱动源文件(test.c)放到对应目录下,具体放到哪里需要根据驱动的类型和特点。
一般情况下我们分为字节驱动和块驱动,他们分别对应的文件夹时drivers下的char文件夹与block文件夹。(实际上并不一定要放到这些文件,可以再新建文件夹)在这里插入图片描述

内核的配置系统组成

可参考牧野星辰的博客

将字符驱动编译到内核

以test.c为例,将其添加到插入目录下,此时可分为两种情况。
1、不创建子目录,直接将test.c拷贝到char目录
打开char目录的Kconfig,仿写其他驱动的格式在menu "Character devices"的下一行之后添加

	config TEST     
	bool "Memory device driver"
	default y
	help
	This is a test

打开char目录的Makefile,仿写其他驱动的格式添加

	obj-$(CONFIG_TEST) += test.o

保存运行即可。
2、创建子目录test文件夹,此时需要在子目录再创建Konfig与Makefile文件
在test文件夹的Kconfig写入

	menuconfig  TEST1
		config TEST     
			bool "Memory device driver"
			default y
			help 
			This is a test

在test文件夹的Makefile写入

obj-$(CONFIG_TEST) += test.o

打开char目录的Kconfig添加

source "drivers/char/test/Kconfig"

打开char目录的Makefile添加

obj-$(CONFIG_TEST) += test/

重新编译内核,在ARM上输入

 cat /proc/devices

可看见test驱动是否已经挂载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值