记录:
tina的include文件在:/home/momo/T113/Tina-Linux/lichee/linux-5.4/include
驱动文件:/home/momo/T113/Tina-Linux/lichee/linux-5.4/drivers
而设备树文件在:/home/momo/T113/Tina-Linux/lichee/linux-5.4/arch/arm/boot/dts
t113所用的设备树文件在:/home/momo/T113/Tina-Linux/device/config/chips/t113/configs/mq_r
模块的出入口
我们来寻找一个简单的文件查看模块的入口
在这个目录下的这个文件打开后可以看见相对少量的代码
MODULE_AUTHOR("[email protected]");
此函数是用来描述驱动作者信息的
在最后一行我门可以看到这个模块的入口函数和出口函数以及模块描述和模块证件(必要)
以及在头部我们可以看到模块的头文件
当然我在学习过程中还看到了其他的模块入口函数,具体的解析:
https://blog.csdn.net/qq_37568748/article/details/109504432
https://blog.csdn.net/ASKLW/article/details/79698422
简单来说就是uboot启动的顺序不大相同
模块出入口解析(module.h)
可以看到module的初始化和退出都是调用了__initcall函数,其定义在linux/init.h我们不再追究,在网上可以了解到module_init的优先值大概是6
模块的制作
那么既然已经知道了模块的出入口,那么我们简单做个模块