自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (5)
  • 收藏
  • 关注

转载 input子系统学习笔记九 evdev输入事件驱动分析

http://blog.chinaunix.net/uid-20776117-id-3212124.html evdev 输入事件驱动,为输入子系统提供了一个默认的事件处理方法。其接收来自底层驱动的大多数事件,并使用相应的逻辑对其进行处理。evdev 输入事件驱动从底层接收事件信息,将其反映到 sys 文件系统中,用户程序通过对 sys 文件系统的操作,就能够达到处理事件的能力。下面先

2012-10-23 23:49:14 1089

转载 闲聊linux中的input设备(12) 多去读读她的心,关注她的内心世界

插播一条消息:火箭官网刚刚公布,姚明彻底告别本赛季。看来退役也是迟早的事情了,其实上大学就一直关注火箭队,一个主要原因是有姚明,谁让咱是中国人呢,中国人都是很爱国的,当然个别间谍分子除外。因为姚明,喜欢上了麦迪……如今二人都沦落这般境地,想想让人心寒。烟花易冷、人事易分啊。好了,不提这些伤心地事儿了。我们做点有劲的事儿,继续研究我们的evdev 设备美眉。前面已经打开她的心扉了。某位脑残的

2012-10-21 21:51:50 915

转载 闲聊linux中的input设备(11) 慢慢打开她的心扉

没错,到目前为止,akm input设备也注册了,evdev handler大叔的全貌也搞明白了,他们的女儿也亭亭玉立了……是不是该干正事的时候了?好吧,我们就来看看如何来干这份正事:还是列出那份操作集函数(handler大叔为我们这些笑的最后的弟兄精心准备的泡妹妹大法,不过现实生活中可没有这样的爸爸):static const struct file_operatio

2012-10-21 21:50:44 1083

转载 闲聊linux中的input设备(10) 原来你也在这里

废话不多讲,开门见山,我们继续上节那个没有完的故事,我们收集到的那些值到底会传到哪里去呢?深入input_pass_event(dev, type, code, value)内部,看她花落谁家?static void input_pass_event(struct input_dev *dev,                          unsigned int type,

2012-10-21 21:49:46 1731

转载 闲聊linux中的input设备(9) 代代相传,何处是尽头

这里我们只以其中的一行为例来分析一下如何给我们的input子系统上报事件。input_report_abs(data->input_dev, ABS_RX, rbuf[0]);继续跟踪: static inline void input_report_abs(struct input_dev *dev, unsigned int code, int value){

2012-10-21 21:48:50 1787

转载 闲聊linux中的input设备(8) 面对美女,我们将何去何从

说到evdev handler这个名字,相信大家一定再熟悉不过了,就是那个妻妾成群孩子成堆的家伙,一个让世界上很多男人都望尘莫及的家伙。嫉妒吧,羡慕吧,这些或许都已不重要,为了解解恨,我们还得想办法搞定她跟akm input设备大妈生下的那个女儿了。不过想搞定他女儿,咱得先搞定她爸。只要她爸开口了,后面的事情可能就好说了一些。不管怎样,还是来熟悉一下这位evdev handle大叔。s

2012-10-21 21:46:07 1228

转载 闲聊linux中的input设备(7) 爱情的结晶

Handler兄果然是handler兄,很给力,这不,刚和人家好上,就有了爱情的种子。有位仁兄要问了:“他是怎么做到的呢?说出来让我学习学习一下,哥这么多年了,还是一直和自己的左手生活着”,好吧,我们就来看看事情是怎样发生的:  没有错,就在第六节的error = handler->connect(handler, dev, id);这行代码中,发生了那么点事儿,也就是那么点事儿,让他们最

2012-10-21 21:44:12 1216

转载 闲聊linux中的input设备(6) 一见钟情,从此注定牵手一生

看到这里,有的哥们要生气了,怎么我们美丽的input设备被嫁出去,居然一下就忽悠过去了,都不详细描述一下她的具体被嫁过程,她到底嫁给哪个handler了?又是怎么相中的?相中后他们两又一起做了些什么?好了,为了满足这位兄弟的欲望,我们来详细阅读一下前面那个input_attach_handler(dev, handler)函数。就是在这个函数中,发生了所有该发生的事情。static i

2012-10-21 21:35:28 979

转载 闲聊linux中的input设备(5) 她那含情脉脉的眼神

http://blog.csdn.net/lmm670/article/details/6084210真正的执行者乃input_register_device()函数。同样来自input core中,我们来看一下她的全貌:int input_register_device(struct input_dev *dev){       1 static at

2012-10-21 18:24:14 947

转载 闲聊linux中的input设备(4) 她一直默默地在背后支持着你

对应input core,前面我一直在夸她的好,对于一个大家都不认识的家伙,我这样说她,是不是显的特虚,好了,为了证明她并不是那么的虚,我不得不拿出前面第二节中出现过的两行代码来看看:akm->input_dev = input_allocate_device();err = input_register_device(akm->input_dev);没有错,这正是我们要把

2012-10-18 23:44:54 859

转载 闲聊linux中的input设备(3)如果不认识他们仨,故事继续不下去了

从前一节来看,在linux内核中添加一个input设备变得很简单了。我们再也不必须去动手写那些该死的接口函数了。可是你有没有想过,是谁让我们的工作变得这么简单了呢?答案是linux内核中的input core。她总是那么痴情,默默地不求回报地为你做许许多多的事情,在你背后默默的支持你爱着你。是的,你所想到的大多数事情,我们的input core都已经为你做好。除了感动,我们还能说什么呢?(in

2012-10-18 00:37:13 945

转载 闲聊linux中的input设备(2)初次相识便好上

究竟何谓input设备,相信武汉跳蚤市场上卖宠物小狗的大妈都能一口答出来,你能不知道么?对,就是我们传说中的输入设备。说到输入设备,相信用过电脑的兄弟都不会陌生了,即按键、鼠标、键盘、等一系列需要我们用户“动手”产生信息,然后丢给我们聪明绝顶的pc来处理的设备。前面说了,linux内核input子系统中已经实现了input设备的接口函数,这使得我们工作量大大的减轻了。我们以akm8973芯片(用于

2012-10-18 00:35:22 1266

转载 闲聊linux中的input设备(1)Linux中的设备大家族

用过linux的哥们都知道,linux所有的设备都是以文件的形式实现的,要访问一个设备,我们只需要以open、read、write的形式对设备的进行操作就可以了。在linux系统的/dev目录下,罗列了当前系统支持的所有设备。运行 ls /dev一下,着实吓了一大跳,[root@localhost ~]# ls /devadsp        full     midi

2012-10-18 00:34:32 1115

转载 linux设备和驱动加载的先后顺序

Linux驱动先注册总线,总线上可以先挂device,也可以先挂driver,那么究竟怎么控制先后的顺序呢。Linux系统使用两种方式去加载系统中的模块:动态和静态。静态加载:将所有模块的程序编译到Linux内核中,由do_initcall函数加载核心进程(/init/main.c)kernel_initàdo_basic_setup()àdo_initcalls()该函数中会将在__

2012-10-09 11:16:43 1228

转载 Linux内核部件分析--设备驱动模型之device-driver

前面我们分析了device、driver、bus三种类型,主要是三者的注册与注销,在sysfs中的目录与属性文件创建等内容。本节就来详细分析下,在设备注册到总线上时,总线是如何为其寻找对应的驱动的;在驱动注册到总线上时,总线又是如何为其寻找对应的设备的。本节的实现代码集中在drivers/base/bus.c和drivers/base/dd.c中。先来回忆下,在device_reg

2012-10-09 11:12:17 875

转载 Linux内核部件分析--设备驱动模型之bus

前面我们分析了设备驱动模型中的device和driver,device和driver本来是不相关的东西,只因为bus的存在,才被联系到了一起。本节就来看看设备驱动模型中起枢纽作用的bus。本节的头文件在include/linux/device.h和drivers/base/base.h,实现代码主要在bus.c中。因为在bus中有很多代码时为了device找到driver或者driver找到dev

2012-10-09 11:10:52 1229

转载 Linux内核部件分析--设备驱动模型之device

linux的设备驱动模型,是建立在sysfs和kobject之上的,由总线、设备、驱动、类所组成的关系结构。从本节开始,我们将对linux这一设备驱动模型进行深入分析。     头文件是include/linux/device.h,实现在drivers/base目录中。本节要分析的,是其中的设备,主要在core.c中。struct device {      struc

2012-10-09 11:10:04 995

转载 Linux内核部件分析--设备驱动模型之driver

上节我们分析设备驱动模型中的device,主要是drivers/base/core.c,可以说是代码量最大的一个文件。本节要分析的驱动driver,就要相对简单很多。原因也很简单,对于driver,我们能定义的公共部分实在不多,能再sysfs中表达的也很少。本节的分析将围绕drivers/base/driver.c,但头文件仍然是include/linux/device.h和drivers/bas

2012-10-09 11:01:39 713

slickedit color theme solarized

slickedit color theme solarized

2013-11-27

slickedit bitstream vera fonts

slickedit bitstream vera fonts

2013-11-27

slickedit v18 18.0.1.2 序列号 破解

亲测windows7 32,ubuntu12.0.4 64 内附序列号生成软件 read_me.txt为详细使用方法。

2013-11-26

slickedit 2013 v18 win linux mac

slickedit 2013 v18 (18.0.1.2) 包含win mac linux 32/64 但个人使用的是linux 64位的 se_18000102_linux64.tar.gz

2013-11-22

UNIX环境高级编程

UNIX环境高级编程(第二版中文) 影印版

2012-12-24

空空如也

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

TA关注的人

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