全部博文(396)
发布时间:2019-04-28 21:22:47
1. 前言common clock framework是用来管理系统clock资源的子系统,根据职能,可分为三个部分:1)向其它driver提供操作clocks的通用API。2)实现clock控制的通用逻辑,这部分和硬件无关。3)将和硬件相关的clock控制逻辑封装成操作函数集,交由底层的platform开发者实现,由通用逻辑调用。因此,蜗蜗.........【阅读全文】
发布时间:2019-03-27 21:34:38
MTD(Memory Technology Device)即常说的Flash等使用存储芯片的存储设备,MTD子系统对应的是块设备驱动框架中的设备驱动层,可以说,MTD就是针对Flash设备设计的标准化硬件驱动框架。本文基于3.14内核,讨论MTD驱动框架。MTD子系统框架设备节点层:MTD框架可以在/dev下创建字符设备节点(主设备号90)以.........【阅读全文】
发布时间:2019-03-04 21:31:37
/*struct pinctrl_state { struct list_head node;//挂入链表头的节点 const char *name;//该state的名字 struct list_head settings;//属于该状态的所有的settings};*/static int xxx_probe(struct platform_device *dev){ /*先申请内存、注册创建相关节点*/ /*下.........【阅读全文】
发布时间:2018-08-14 16:18:37
好记性不如烂笔头,整理一下笔记~ Linux驱动之输入子系统框架 输入子系统将该类驱动划分为3部分 1、核心层 input.c 2、设备层 Gpio_keys.c ... 3、事件处理层 Evdev.c 事件处理层为纯软件的东西,设备层涉及底层硬件,它们通过核.........【阅读全文】
发布时间:2018-02-06 10:39:23
在Linux IIC驱动中看到一段代码:static struct platform_device_id xx_driver_ids[] = {{.name = "s3c2410-i2c",.driver_data = TYPE_S3C2410,}, {.name = "s3c2440-i2c",.driver_data = TYPE_S3C2440,}, { },};MODULE_DEVICE_TABLE(platform, xx_driver_ids);MODULE_DEV.........【阅读全文】