sunzl1987

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2014年2月13日

摘要: 1网络设备驱动的结构Linux网络设备驱动程序体系结构如下图,从上到下依次划分为4层,依次为网路协议接口层、网络设备接口层,提供实际功能的设备驱动功能层以及网络设备与媒介层。(1)网络协议接口层向网络层协议提供统一的数据包收发接口,不论上层协议为ARP还是IP,都通过dev_queue_xmit()... 阅读全文
posted @ 2014-02-13 18:52 Sanz 阅读(1596) 评论(0) 推荐(0) 编辑

摘要: USB驱动分为两块,一块是USB的bus驱动,这个东西,Linux内核已经做好了,我们可以不管,我们只需要了解它的功能。形象的说,USB的bus驱动相当于铺出一条路来,让所有的信息都可以通过这条USB通道到达该到的地方,这部分工作由usb_core(drivers/usb/usb.c)来完成。当USB设备接到USB控制器接口时,usb_core就检测该设备的一些信息,如生产厂商的ID(VID)和产品的ID(PID),或者是设备所属的class、subclass跟protocol,以便确定应该调用哪一个驱动处理该设备。里面复杂细节我们不用管,我们要做的是另一块工作——usb的设备驱动。也就是说, 阅读全文
posted @ 2014-02-13 15:23 Sanz 阅读(7125) 评论(0) 推荐(0) 编辑