- 博客(16)
- 资源 (4)
- 收藏
- 关注
转载 -ERESTARTSYS理解
1,http://blog.csdn.net/xjingfeng/article/details/11603887-ERESTARTSYS is connected to the concept of a restartable system call. A restartable system call is one that can be transparently re-exec
2017-05-31 13:41:24 7271
转载 Linux内核部件分析-设备驱动模型之device
http://www.linuxidc.com/Linux/2011-10/44627p6.htmlinux的设备驱动模型,是建立在sysfs和kobject之上的,由总线、设备、驱动、类所组成的关系结构。从本节开始,我们将对linux这一设备驱动模型进行深入分析。 头文件是include/linux/device.h,实现在drivers/base目录中。本节要分析的,是其中
2017-05-28 22:26:36 557
转载 Linux 理解devfs、sysfs、udev
http://blog.csdn.net/linuxheik/article/details/8459061linux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中两种。一、devfs devfs是在2.4内核就出现了,它是用来解决linux中设备管理混乱的问题,你查看一下/dev下的设备文件就知道其中有许多是空的(也就是没有对应的硬件的),但是
2017-05-26 10:42:22 941
转载 system:udev原理分析
http://blog.csdn.net/linuxheik/article/details/8459098一.udev简介在Linux系统中,/dev目录用来保存设备文件的.每个文件指向一个系统设备.用户的程序可以通过使用这些设备文件, 对真实的硬件的设备进行操作.如: hda是第1个IDE硬盘,sda是第1个SCSI硬盘. 在2.4内核时代, 在/dev下保存了所有ke
2017-05-25 17:55:39 1576
转载 设备模型之kobject,kset及其关系
http://blog.chinaunix.net/uid-24227137-id-3266449.htmlLinux2.6以后的设备驱动,都是在设备模型的基础上构建的,因此,要编写linux下的设备驱动程序,不论是usb设备,pci设备等,都需要了解设备模型。设备模型的基础结构体主要是kobject,kset这两个结构体:struct kobject {
2017-05-24 17:16:01 374
转载 设备模型的uevent机制
http://www.cnblogs.com/black-mamba/p/5055683.html内核模块的热插拔事件的通知基于uevent机制。当kobject的状态发生改变(如,add, remove等)时,会通知用户空间,用户空间接收到事件通知后可以做相应的处理。uevent把事件上报给用户空间的两种途径: 1.通过kmod模块,直接调用用户空间的可执行程序或脚
2017-05-24 10:28:40 965
转载 关于设备号的思考
这是最后的运行流程,用户open设备节点,通过主设备号找到驱动程序,根据次设备号找到对应的设备,使用驱动函数中的read(),write()等函数操作设备。为了搭建这样的运行时环境,需要做如下工作:1 驱动程序加载(申请主设备号,在/proc/devices下创建设备)2 根据具体设备创建设备节点 (查询合适的主设备号和可用的次设备号 在/dev下面创建设备节点)先
2017-05-23 15:44:26 315
转载 linux下热插拔事件的产生是怎样通知到用户空间,kobject_uevent_env之uevent_helper
本人CU博客中的文章,本来是希望CU给推荐到首页的,结果周五不知道CU博客出了啥问题,居然没什么更新。所以我干脆把再把它放到这里,因为话题涉及设备驱动模块自动加载,本版已经有同学问过这方面的问题。热插拔(hotplug,打这个词的时候我常常想到热干面)不一定非要指类似U盘那样的插入拔出,此处的热插拔广义上讲,是指一个设备加入系统,内核如何通知用户空间。举个简单的例子,如果你的电脑中有块PC
2017-05-23 11:18:35 743
转载 Linux设备模型之device_add
0.前言Linux设备模型是学习linux驱动的很重要的内容。了解这些知识,对于学习linux设备驱动有很大的帮助。 linux设备类型的内容还是比较多的,这里就重点说明device_add函数的流程。1.总体框架linux设备模型:设备device,驱动driver,总线bus。设备代表物理设备,驱动代表了设备操作方法,bus则是用来管理和匹配它们。device和driv
2017-05-23 11:13:17 6787
转载 ioctl的命令cmd构造详解
http://blog.csdn.net/heli200482128/article/details/53196796http://blog.csdn.net/leechar_linux/article/details/39545235在嵌入式中经常碰到魔数,比如:#define PLATDRV_MAGIC 0X60#define LED_OFF _IO(PLATDRV_MA
2017-05-22 10:53:06 1255
原创 dev_set_drvdata, dev_get_drvdata machanism
example:static intvrha_fpga_dtb_probe(struct vrha_device *vdev)//tianxianting, vrha_device* already created by function "vrha_device_create", so if matched//pass vrha_device* to this probe
2017-05-09 14:56:50 1054
转载 Linux设备模型(2)_Kobject
1. 前言Kobject是Linux设备模型的基础,也是设备模型中最难理解的一部分(可参考Documentation/kobject.txt的表述)。因此有必要先把它分析清楚。2. 基本概念由“Linux设备模型(1)_基本概念”可知,Linux设备模型的核心是使用Bus、Class、Device、Driver四个核心数据结构,将大量的、不同功能的硬件设备(以及驱动该硬件设备的
2017-05-08 17:17:37 363
转载 Linux设备模型(4)_sysfs
1. 前言sysfs是一个基于RAM的文件系统,它和Kobject一起,可以将Kernel的数据结构导出到用户空间,以文件目录结构的形式,提供对这些数据结构(以及数据结构的属性)的访问支持。sysfs具备文件系统的所有属性,而本文主要侧重其设备模型的特性,因此不会涉及过多的文件系统实现细节,而只介绍sysfs在Linux设备模型中的作用和使用方法。具体包括:sysfs和Ko
2017-05-08 17:00:22 290
转载 sysfs API总结
sysfs是用于表现设备驱动模型的文件系统,它基于ramfs。要学习Linux的设备驱动模型,就要先做好底层工作,总结sysfs提供给外界的API就是其中之一。sysfs文件系统中提供了四类文件的创建与管理,分别是目录、普通文件、软链接文件、二进制文件。目录层次往往代表着设备驱动模型的结构,软链接文件则代表着不同部分间的关系。比如某个设备的目录只出现在/sys/devices下,其它地方涉及到它时
2017-05-08 16:35:30 381
转载 SYSFS以及设备文件或kobject目录创建的关系
sysfs_create_group()定义的文件 kernel/fs/sysfs/group.c: [html] view plain copystatic int internal_create_group(struct kobject *kobj, int update, const struct a
2017-05-08 16:31:39 559
原创 dtb to dts by dtc
1,DTC(Device tree compiler)是一个小工具,负责将DTS转换成DTB(Device tree blob)。DTB是DTS的二进制形式,供机器使用。使用中,我们首先根据硬件修改DTS文件,然后在编译的时候通过DTC工具将DTS文件转换成DTB文件,然后将DTB文件烧写到机器上(如emmc,磁盘等存储介质)。系统启动时,fastboot(或者类似的启动程序,如Uboot)在
2017-05-08 10:53:00 2044
lemoal-nvme-polling-vault-2017-final_0.pdf
2020-03-13
个人总结 - m25p80.c debug on Micron spi nor_flash.pdf
2017-09-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人