自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

转载 I2C设备驱动框架和一个实例注册

注:这是我在自己学习I2C驱动框架时候记录的笔记,不喜勿喷 一、内核中实现I2C驱动框架和一个实例注册相关的文件 1./dricer/i2c/i2c-core.c 2./arch/arm/mach-s3c2440/mach-smdk2440.c 3.driver/i2c/buses/i2c-s3c2410.c 4./driver/i2c/i2c-dev.c 以后分析的代码就来源于这几个...

2017-01-18 14:47:14 475

原创 input子系统框架学习

注:这篇文章是我在学习的过程中,整理出来的,我也是学习这,不喜勿喷!一、input子系统基础 1.input子系统的分层 注:一般的驱动框架都分为两层(驱动框架层和驱动设备层),驱动框架层是由内核开发者提供,驱动设备层是由具体的驱动开发工程师来编写。但是input子系统的分层为3层 (1)最上层:输入事件驱动层,在evdev.c,mousedev.c、joydev.c等文件下。注意:不是...

2016-12-18 19:07:52 320

原创 framebuffer驱动框架代码解析

注:我的博客都是我在学习时候为了增强我对一些内容的印象而写的,不喜勿喷 一、framebuffer驱动相关基础 1.驱动框架部分涉及的文件 (1)driver/video/fbmem.c (2)driver/video/fbsys.c (3)driver/video/fb_notify.c2.相关的两个重要结构体。 (1)fb_fix_screeninfo结构体,framebuffer不

2016-12-12 20:32:22 489

原创 LED驱动框架解析

注:我看的内核是三星官方提供的2.6.35版本的内核 一、驱动框架基础 1.框架,框架首先要有框架的思想,也就是要明白我们自己要写哪一部分的代码,哪一部分代码是别人帮我们写好的(我们直接用就行)。2.首先要明白写一个驱动,需要两波人的参与。 (1)内核维护者提供的框架相同的部分。 (2)驱动开发工程师根据不同的硬件,使用内核维护者提供的框架部分的接口来开发硬件的驱动。二、内核维护者

2016-12-08 21:59:32 429

原创 S5PV210静态映射表的构建过程

注:分析的三星官方的内核。 一、板子启动相关 1.首先得明白一般与板子相关的启动初始化都在mach-xxx.c文件。因为静态映射表我们主要关注的是板子的GPIO,而GPIO也属于板子启动必须初始化的部分,所以我们要找的文件就是/kernel/arch/arm/mach-s5pv210/mach-smdkc110.c文件。 2.熟悉内核的人都知道板子的启动相关初始化都在一个结构体当中。 (1)

2016-12-08 16:38:24 299

转载 Linux内核之platform设备驱动框架的理解

1.首先明白一点platform的创建是基于bus和device。而且platform的创建分为两步:在devicesmu目录下的创建。和bus目录下的创建。 不多说直接看代码int __init platform_bus_init(void){ int error; early_platform_cleanup(); error = device_register(&pla

2016-11-26 16:25:48 369

转载 Linux内核之BUS驱动设备模型理解

声明:也是参考前面两位大神而写出来的。作为学生,如果有不对的,不喜勿喷。进入正题。1.BUS相关的数据结构struct bus_type { //bus的名称, const char *name; //bus相关的属性 struct bus_attribute *bus_attrs; //device相关的属性 struc

2016-11-26 14:21:05 411

转载 Linux内核之Devices创建过程解析

内核版本:2.6.35.7 声明:一部分是我自己整理的,大多数都是参考别人文章整理的。也感谢那些经常发文章教导的大神们。废话不说,进入正题。 参考文章链接 Device的创建是基于kobject和kset。 参考文章链接 1.要明白Device的创建过程,首先要知道它相关的结构体 struct device { struct device *parent;

2016-11-25 21:53:03 436

Pyqt5 利用QMediaPlayer实现的播放器。

学习Pyqt5 QMediaPlayer。本播放器实现了进度条的拖动,上一首,下一首、播放的当前时间显示等

2021-01-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除