自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 input 子系统的分析与学习(三)-----input子系统中的结构体

继续写input子系统。在input子系统中,也有client\handle\handler\device等概念。在内核的设计中这种设计有很多。之前在i2c的实现中,就有client\device等概念。有一篇博客写得很好,这里转载一下。http://blog.chinaunix.net/uid-20672257-id-3149668.html   内核的输入子系统是对分散的,多种不同

2013-06-23 10:01:39 1542

原创 input 子系统的分析与学习(二)

下面分析一下自己实现的光传感器的驱动。先附上代码: #include #include #include #include #include #include #include #include #include #define EVENT_TYPE_LIGHT ABS_MISC#define LIGH

2013-06-23 00:27:30 3491 1

原创 input 子系统的分析与学习(一)

依然不明白struct device 中的parent是什么意思?最近在写一个光感传感器设备的驱动。不知为何上层的接口是通过input设备实现的。其实我们自己也可以讲某一个输入设备 如传感器等写为一个字符设备,但是那样的话,我们需要自己实现open\read\write等方法,需要自己实现阻塞。但是通过实现成一个input设备,我们可以把注意力集中到input设备要汇报的事件上面,其他的工

2013-06-22 22:08:17 1318

原创 mini2440 uboot的使用经历

记录一下自己在mini2440上面 使用uboot的曲折的经历。首先是使用了买板子时自带的代码: u-boot-1.1.6。但是编译时,总是提示有错误。也不知道这个版本是不是tekk的那个版本,自己修改了一些地方,但是感觉uboot的编译体系与一般的开源软件不相同,编译时,总是提示 有函数的实现找不到,即undefined reference to _,,,,网上说需要在makefile中添加

2013-06-15 23:55:34 3158

原创 mini2440 I2C驱动的分析与学习(三)

最后说一下i2c和smbus的关系。首先在一个链接中详细的介绍了smbus协议。http://www.mjmwired.net/kernel/Documentation/i2c/smbus-protocol。我理解的大意就是,i2c是smbus的一个子集,也就是说凡是支持i2c的设备应该都是支持smbus协议的。在smbus协议中,定义了几种主机与外设交互的方法。支持i2c协议的设备可

2013-06-14 14:35:59 1326

原创 mini2440 I2C驱动的分析与学习(二)

接着分析i2c的数据传输流程。首先是打开i2c设备,比如open("/dev/i2c/0"),在内核调用下面函数static int i2cdev_open(struct inode *inode, struct file *file){ unsigned int minor = iminor(inode); struct i2c_client *client; struc

2013-06-14 14:20:38 1514

原创 mini2440 I2C驱动的分析与学习(一)

花了近一个星期的时间学习I2C的驱动,将心得描述如下。I2C是一个典型的较简单的子系统,比较适合学习,因为I2C协议要比PCI等等简单得多。在mini2440上用I2C连了一块EEPROM的芯片。因此,在mini2440上面说I2C的驱动,主要是说怎么样通过I2C在这块EERPOM上面读写数据。有点像是这个EEPROM的驱动。先分析几个相关的结构体。其实有时觉得C语言就是以结构体为中心的,

2013-06-14 14:06:10 2324

原创 mini2440上dm9000驱动分析(三)

下面在重点分析几个dm9000收发包以及中断函数。/* * Hardware start transmission. * Send a packet to media from the upper layer. */static intdm9000_start_xmit(struct sk_buff *skb, struct net_device *dev){

2013-06-04 21:31:22 1387

原创 mini2440上dm9000驱动分析(二)

二、下面说一下 mini2440_dm9k_resource 中的几个地址是怎么计算得来的。地址的计算在驱动移植中也是一个重要的部分。地址的计算在网上的博客中很少有介绍的,自己看了很久才琢磨明白。DM9000  MINI2440 功能描述SD0   DATA0  数据信号 |           |SD15  DATA15  数据信号CMD  ADDR2  识别为地址还是数据

2013-06-04 20:16:26 1447

原创 mini2440上dm9000驱动分析(一)

先提个问题:看到有的网卡是连在ISA总线或者是PCI总线上的,那在mini2440上dm9000和CPU是直接相连的,这个算是什么总线? 没弄明白这个问题 首先是平台设备的register和unregister.  static int __initdm9000_init(void){#if defined(CONFIG_ARCH_S3C2410) unsigned i

2013-06-04 19:58:30 1299

contiki中数据包的收发流程

详细的介绍了 contiki 中数据包的流程

2012-04-19

空空如也

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

TA关注的人

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