随笔分类 -  linux驱动及硬件知识

摘要:6.1 字符设备驱动结构 先看看字符设备驱动的架构: 6.1.1 cdev cdev结构体是字符设备的核心数据结构,用于描述一个字符设备,cdev定义如下: void cdev_init(struct cdev *, const struct file_operations *); // 将cdev 阅读全文
posted @ 2017-04-26 16:36 liuwanpeng 阅读(1380) 评论(0) 推荐(0)
摘要:1. 与内核版本不一致 嵌入式开发时,模块编译时需要制定内核的路径,内核的版本信息会加入到模块文件中,如果目标板上运行的内核与模块中包含的内核版本对不上,加载就会出错,报如下错误: insmod invalid format 可通过modinfo查看ko文件中包含的内核版本信息 2. 内核没有编译, 阅读全文
posted @ 2016-12-19 19:31 liuwanpeng 阅读(3533) 评论(0) 推荐(0)
摘要:转:http://www.tinylab.org/show-the-usage-of-procfs-sysfs-debugfs/ by falcon of TinyLab.org 2014/08/25 1 前言 内核中有三个常用的伪文件系统:procfs,debugfs和sysfs。 procfs 阅读全文
posted @ 2016-12-16 16:50 liuwanpeng 阅读(1797) 评论(0) 推荐(0)
摘要:linux内核默认会包含git的commit ID。 而linux的内核在insmod模块时,会对模块和内核本身的版本做严格的校验。在开发产品时,改动内核后,由于commit ID变更,会导致linux内核变更,之前已编译发布的模块与升级后的linux版本不一致,必须重新编译,非常麻烦。 为了解决这 阅读全文
posted @ 2016-12-12 15:06 liuwanpeng 阅读(1599) 评论(0) 推荐(0)
摘要:转载:http://blog.csdn.net/adaptiver/article/details/7225980 1. 引子 编译2.6.35.7 kernel版本的时候发现,“2.6.35.7“的内核版本编译成功后生成的版本号变成了“2.6.35.7+”,为什么后面会多一个加号呢?问题出现在Li 阅读全文
posted @ 2016-12-09 10:48 liuwanpeng 阅读(1598) 评论(0) 推荐(0)
摘要:mdev的hotplug模式 1, busybox 添加mdev支持 2, 在/etc/rc.d/rcS中添加 #mount filesystem /bin/mount -a #start mdev echo /sbin/mdev > /proc/sys/kernel/hotplug #设置系统的h 阅读全文
posted @ 2016-12-05 10:04 liuwanpeng 阅读(275) 评论(0) 推荐(0)