
Linux驱动开发
文章平均质量分 80
jwctly
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
实例解析linux内核I2C体系结构(2)
<br />作者:刘洪涛,华清远见嵌入式学院讲师。<br /> <br />四、在内核里写i2c设备驱动的两种方式<br />前文介绍了利用/dev/i2c-0在应用层完成对i2c设备的操作,但很多时候我们还是习惯为i2c设备在内核层编写驱动程序。目前内核支持两种编写i2c驱动程序的方式。下面分别介绍这两种方式的实现。这里分别称这两种方式为“Adapter方式(LEGACY)”和“Probe方式(new style)”。<br />(1) Adapter方式(LEGACY)<br />(下面的实例代码是在2转载 2010-08-01 17:00:00 · 282 阅读 · 0 评论 -
实例解析Linux内核I2C体系结构(1)
<br />一、概述<br />谈到在linux系统下编写I2C驱动,目前主要有两种方式,一种是把I2C设备当作一个普通的字符设备来处理,另一种是利用linux I2C驱动体系结构来完成。下面比较下这两种驱动。<br />第一种方法的好处(对应第二种方法的劣势)有:<br /> ● 思路比较直接,不需要花时间去了解linux内核中复杂的I2C子系统的操作方法。<br />第一种方法问题(对应第二种方法的好处)有:<br /> ● 要求工程师不仅要对I2C设备的操作熟悉转载 2010-08-01 17:03:00 · 342 阅读 · 0 评论 -
DM9000网卡驱动详细分析(1)
linux下DM9000网卡驱动同样是注册成平台驱动(platform driver)的形式.平台驱动在此就不多做介绍了,具体请参考linux驱动分析之framebuffer驱动.重点介绍DM9000网卡的控制.首先大致介绍一下DM9000的相关情况.这里参考大牛黄刚博客的一段(略有改动).DM9000的引脚和MINI2440的引脚连接:DM9000 MINI2440 功能描述SD0 DATA0 数据信号 | |SD15 DATA15 数据信号CMD ADDR2 识别为地原创 2011-02-21 22:30:00 · 846 阅读 · 0 评论 -
DM9000网卡驱动详细分析(2)
<br /><br />所以函数中的第一语句获取的是mini2440_dm9k_pdata结构中的内容,它只初始化了一个成员,另外的指针成员并没有初始化.平台设备的资源在struct resource mini2440_dm9k_resource[]中定义,有地址IO,数据IO以及中断号.<br /> <br />struct board_info *db;/* Point a board information structure */<br />这个结构体是私有数据结构体,表征的是DM9000网卡的所有原创 2011-02-21 22:32:00 · 947 阅读 · 0 评论 -
DM9000网卡驱动详细分析(3)
struct net_device_ops dm9000_netdev_ops结构中包含网卡的打开,关闭,发送数据,改变MTU参数等重要功能:static const struct net_device_ops dm9000_netdev_ops = {.ndo_open= dm9000_open,.ndo_stop= dm9000_stop,.ndo_start_xmit= dm9000_start_xmit,.ndo_tx_timeout= dm9000_timeout,.ndo_set_multica原创 2011-02-21 22:35:00 · 1282 阅读 · 0 评论