linux 设备驱动开发详解
qiaoliang328
这个作者很懒,什么都没留下…
展开
-
vmware12+centos7+win7 无法共享文件 /mnt/hgfs 问题
问题:win7 操作系统,vmware12 重新安装,centos7 从其他电脑拷贝过来;1. vmtool 安装失败:/tmp/modconfig-oAfYr7/vmhgfs-only/page.c:1649:23: warning: passing argument 3 of ‘wait_on_bit’ makes integer from pointer without a c...原创 2020-01-23 23:07:40 · 324 阅读 · 0 评论 -
cs8900驱动移植到s3C2440+LINUX-2.6.30+JFFS2
linux-2.6.30内核CS8900在s3c2440上的移植前提:已经移植好linux-2.6.30和基于busybox-1.15.2的jffs2文件系统。经过验证,以下步骤在linux-2.6.30上移植成功。1,修改drivers/net/arm/Makefile文件添加: obj-$(CONFIG_ARM_CS8900) += cs8900.o2,修改drivers/n原创 2010-01-12 23:42:00 · 2068 阅读 · 0 评论 -
编译模块的时候出现的莫名奇怪的错误
[root@qljt globalmem]# make -C /linux_kernel/linux-2.6.30/ M=/linux_drivers/06/globalmem/ modulesmake: Entering directory `/linux_kernel/linux-2.6.30 CC [M] /linux_drivers/06/globalmem/globalmem.oI原创 2010-01-14 19:46:00 · 2457 阅读 · 0 评论 -
kmalloc
在设备驱动程序中动态开辟内存,不是用malloc,而是kmalloc,或者用get_free_pages直接申请页。释放内存用的是kfree,或free_pages. 请注意,kmalloc等函数返回的是物理地址!而malloc等返回的是线性地址!关于kmalloc返回的是物理地址这一点本人有点不太明白:既然从线性地址到物理地址的转换是由386cpu硬件完成的,那样汇编指令的操作数应该是线性地转载 2009-11-22 15:01:00 · 1350 阅读 · 0 评论 -
linux设备驱动开发详解——globalmem
常见的两种错误:1.在插入模块的时候出现如下问题: # insmod globalmem.ko insmod: error inserting globalmem.ko: -1 Device or resource busy ANSWER:主设备号被占用了,换另一个。 你把globalmem.c文件里面的宏定义那里改为226或其他,然后再编译就可以插入了!特别注意: 如原创 2009-11-25 22:33:00 · 4346 阅读 · 2 评论 -
rmmod: chdir(/lib/modules): No such file or directory 解决方法
1.创建/lib/modules/2.6.30空目录就.2.使用如下源码生成rmmod命令,就可以没有任何提示的卸载ko模块了[luther.gliethttp]#include stdio.h>#include stdlib.h>#include unistd.h>#include fcntl.h>#include string.h>#include errno.h>int main原创 2010-01-15 00:44:00 · 7535 阅读 · 2 评论 -
uboot启动uImage与zImage的区别
1. 指令的区别:启动uImage 用bootm; 启动zImage 用go;2. 文件区别:uImage 在zImage加了0x40(63) 个字节, 包含这个映像文件的类型、加载位置、生成时间、大小等信息;3. bootm uImage 会把bootargs 传给uImage; go zImage 不会给zImage 传递任何东西;原创 2017-07-07 20:23:24 · 1500 阅读 · 0 评论 -
手把手教你如何配置内核---举例添加RT5370驱动
之前写过一个关于在2.6内核上移植RT5370的驱动,http://blog.csdn.net/andylauren/article/details/51972072使用的是无线网卡官方提供的驱动,然后据说在3.0.1内核版本之后已经提供了RT5370网卡的支持,然后经过一系列的配置学习终于将RT5370驱动配置进入内核,并在该内核下运行起了无线网卡,具体过程将在下一篇文章中详细介绍。在配转载 2017-09-02 16:05:44 · 619 阅读 · 0 评论