
linux设备模型
文章平均质量分 63
梦路遥
这个作者很懒,什么都没留下…
展开
-
linux下平台总线之一为什么要引入平台总线
平台平台可以理解为一个虚拟的总线,主要描述soc上的资源,这些资源的共同点是CPU可以直接访问的资源。为什么要用这个平台总线,平台设备,平台驱动?1个linux设备,驱动总要挂载在一条总线上面,比如usb I2C I2S SPI,对于这种设备它们本身就已经有一条对应的总线了,但在嵌入式系统中soc上会有很多外设控制器,比如led,这个LED并没有对应的标准总线让它挂载。所以linux内核就...原创 2018-11-19 17:03:15 · 1199 阅读 · 0 评论 -
Linux的下平台总线之二平台总线的注册
目录一、重要结构体1.1 总线是怎么定义的?1.2 平台总线是怎么定义的?二、平台总线是什么时候注册的?三、int __init platform_bus_init(void) 函数分析这里只是做一个流程的分析,太复杂了,没怎么看懂 ......T_T看这里一定要跟踪内核源码来看,不然更加不知道讲的什么鬼....以下的代码都是基于某个项目 Android源码下的代码...原创 2018-12-08 11:31:28 · 467 阅读 · 0 评论 -
Linux的下平台总线之三平台设备的注册
目录一、重要结构体 二、linux 下平台设备的注册是如何实现的?2.1 linux 设备的注册2.2 linux 平台设备的注册一、重要结构体struct platform_device { const char *name; //设备名称 int id; bool id_auto; struct device dev; ...原创 2018-12-08 14:54:22 · 1066 阅读 · 0 评论 -
Linux的下平台总线之四平台驱动的注册
一、到底是platform_device 先注册呢?还是platform_driver先注册?platform_device 和 platform_driver的注册顺序是相对的。我们遇到的绝大多数情况都是 platform_device 先注册,然后是platform_driver 后注册,比如usb驱动。但是也有例外的,比如U盘。USB: usb 设备插进去电脑,开始运行usb...原创 2018-12-08 15:34:20 · 483 阅读 · 0 评论