bus_driver_device
文章平均质量分 80
lamdoc
这个作者很懒,什么都没留下…
展开
-
设备
linux系统中,每个设备都用device结构的一个实例来表示, 1. device定义如下: struct device { struct device *parent; //父设备,指该设备所属的设备。 struct device_private *p; //私有数据 struct kobject ko原创 2012-06-13 18:07:27 · 308 阅读 · 0 评论 -
驱动中platform resource 和 porbe 之间的关系
1. platform_device 会包含platform_data 和 resource定义: 一般platform device信息,会定义在 arch/arm/mach-xxx/board-xxx.c 中。 如这里的sarac模块,被定义在arch/arm/mach-cartesio/core-sta2065.c中 static struct platform_device sa原创 2012-12-11 10:55:35 · 466 阅读 · 0 评论 -
switch_class
switch 类 1. init/exit: static int __init switch_class_init(void) { return create_switch_class(); //新建一个switch类 } static void __exit switch_class_exit(void) { class_原创 2012-06-28 11:15:36 · 831 阅读 · 0 评论 -
bus_devices_driver
驱动 driver:struct device_driver { const char *name; struct bus_type *bus; //表示这个驱动属于哪条总线。 struct module *owner; const char *mod_name; /* used for built-原创 2012-06-25 11:35:42 · 305 阅读 · 0 评论 -
各类总线传输速率
1. USB总线 USB1.1: -------低速模式(low speed):1.5Mbps -------全速模式(full speed): 12Mbps USB2.0:向下兼容。增加了高速模式,最大速率480Mbps。 -------高速模式(high speed): 25~480Mbps USB3.0:向下兼容。 -------super speed :理论上原创 2012-06-15 20:35:07 · 590 阅读 · 0 评论 -
设备驱动 --- device_driver
1. 驱动程序device_driver定义: struct device_driver { const char *name; //驱动程序名 struct bus_type *bus; //驱动程序所操作的总线类型 struct module原创 2012-06-13 18:11:19 · 484 阅读 · 0 评论 -
Class 类
类是一个设备的高层概念,它抽象出了低层的实现细节。 所有的类都显示在sys/class/目录下。 如: 所有的网络接口都集中在/sys/class/net/下,输入设备都集中在/sys/class/input/下, 串行设备都集中在sys/class/tty/下。 在许多情况下,类子系统是向用户空间导出信息的最好方法。 1. class 定义在device.h中原创 2012-06-13 18:15:47 · 419 阅读 · 0 评论 -
kset
kset总是在sysfs中出现,一旦设置了kset并把它添加到系统中,就会在sysfs中创建一个目录。kset中的每一个kobject成员都会在sysfs中表述。 kset定义: /** * struct kset - a set of kobjects of a specific type, belonging to a specific subsystem.原创 2012-06-13 17:55:51 · 349 阅读 · 0 评论 -
kobject概念
kobject --- kernel对象的意思,是内核中类似面向对象的概念. kobject可以被认为是最顶层的基类,其他类都是他的派生物。 C语言中不允许直接描述继承关系,所以使用了诸如在一个结构中嵌入另外一个结构的技术。 定义如下: struct kobject{ const char *name; struct list_h原创 2012-06-13 17:49:59 · 569 阅读 · 0 评论 -
总线
总线是处理器和一个或多个设备之间的通信。在设备模型中,所有的设备都通过总线相连。 总线可以相互插入,比如一个USB控制器通常是一个PCI设备。 设备模型展示了总线和他们所控制的设备时间的关系。 1. bus_type 结构用来表示总线: struct bus_type { const char *name; //总线名称原创 2012-06-13 18:04:20 · 325 阅读 · 0 评论 -
sysfs与kobject交互
对于sysfs中的每个目录,内核中都会存在一个对应的kobject。 每个kobject都输出一个或多个属性,他们在kobject的sysfs目录中表现为文件,其内容由内核生成,这些内容揭示了kobject和sysfs在底层是如何交互的。 只要调用kobject_add(),就能在sysfs中显示kobject. 一、创建sysfs入口需要注意一下几点: 1.kobject在sysfs中的原创 2012-06-13 17:59:45 · 656 阅读 · 0 评论 -
xloader bootlog access
1. xloader 中除了把log输出到串口外,还备份存放在 &__LOG_START --- &__LOG_END中 void puts(char *buf) { uart_register_t *pUartRegs = (uart_register_t *) UART1_REG_START_ADDR; while (*buf)原创 2012-12-13 10:52:37 · 460 阅读 · 0 评论