usb
FarEast8612
这个作者很懒,什么都没留下…
展开
-
网络驱动程序snull .
转自:http://blog.csdn.net/naturebe/article/details/6088988 由于下次开会要做报告,所以就先把字符设备驱动程序那块搁浅了,先来复习下网络驱动这块.虽然以前看过,学习过网络驱动的相关内容,但是当再次学习这块的时候,仍然有新的收获,或许是时间长不看了,有些东西的印象浅了,或者应了那句话:温故而知新.ok,下面步入正题. 一,snul转载 2012-04-23 11:52:28 · 1105 阅读 · 0 评论 -
Linux下USB驱动之skeleton分析
Usb_skeleton.c,是USB驱动的框架,适合USB驱动的初学者。 1.结构体 内核其实就是一坨坨的数据结构,加上一根根链表。 对于初学者,如果直接看USB驱动代码,大概会被那些名字相近的结构体弄得晕头转向,比如usb_host_interface和usb_interface,看着看着就把两个混淆了。所以,在学习USB驱动之前,建议把相关结构体都拎出来看一下,其实,也就那转载 2012-04-24 10:46:50 · 1283 阅读 · 0 评论 -
关于usb驱动
在porbe函数中注册的是设备,而在驱动程序模块初始化中注册的是驱动程序,这一点要分清楚 register_usb_dev(usb_interface,&usb_class_driver);把usb设备注册到usb核心 usb_register(&usb_driver); 将驱动程序注册到usb子系统中static int __init zd1201_ini原创 2012-04-20 14:49:05 · 1418 阅读 · 0 评论 -
USB传输小节
转自:http://blog.csdn.net/aaronychen/article/details/3719412 首先,要明白两个观点。第一,USB总线上所有的事务(数据流传输)都是由USB Host主动发起,而USB设备永远永远都是只是被动地接收然后处理USB Host发来的各种各样的命令(要求)。第二,中断是USB Host和USB设备之间的信令员,USB Host所有的要求都是转载 2012-04-23 10:54:46 · 1173 阅读 · 0 评论 -
函数skb_copy_from_linear_data和skb_copy_to_linear_data分析
函数源码为:http://tomoyo.sourceforge.jp/cgi-bin/lxr/source/include/linux/skbuff.h#L21622162 static inline void skb_copy_from_linear_data(const struct sk_buff *skb,2163原创 2012-04-20 11:28:05 · 3216 阅读 · 0 评论 -
netdev_priv函数的分析
1. 函数netdev_priv分析include/linux/netdevice.h#define NETDEV_ALIGN 32#define NETDEV_ALIGN_CONST (NETDEV_ALIGN - 1)static inline void *netdev_priv(struct net_device *dev){ return (ch原创 2012-04-20 10:02:12 · 10646 阅读 · 0 评论 -
urb分析,usb_fill_bulk_urb函数理解
usb request block,简称urb。事实上,可以打一个这样的比喻,usb总线就像一条高速公路,货物、人流之类的可以看成是系统与设备交互的数据,而urb就可以看成是汽车。在一开始对USB规范细节的介绍,我们就说过USB的endpoint有4种不同类型,也就是说能在这条高速公路上流动的数据就有四种。但是这对汽车是没有要求的,所以urb可以运载四种数据,不过你要先告诉司机你要运什么,目的地是原创 2012-04-20 14:01:16 · 10292 阅读 · 0 评论 -
网络驱动移植之sk_buff结构体及其相关操作函数
sk_buff 结构体用于表示描述网络包,它定义了对应于传输层TCP/UDP(及ICMP 和IGMP)、网络层 和和链路层协议的协议头。 正常网卡收到数据包后的工作就是剥离mac头,然后给一些字段赋值,最后调用netif_rx将剥离mac头后的数据报(比如ip数据包)发送到上层协议。由协议栈处理。 可参考如下文章: http://blog.csdn.原创 2012-04-13 10:18:12 · 834 阅读 · 0 评论 -
usb-serial分析
重要文件由usb-serial.c ; generic.c ; usb.c ; option.c从module_init(usb_serial_init)开始//按照tty驱动结构,先创建"tty_driver"对象alloc_tty_driver(SERIAL_TTY_MINIOR)注册总线usb-serial,之后很多驱动及设备都会注册到该总线上bus_register(&转载 2012-04-24 15:08:50 · 7477 阅读 · 0 评论 -
usb-skeleton分析
/* * USB Skeleton driver - 2.2 * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com) * This program is free software; you can redistribute it and/or * modify it under the terms of the原创 2012-04-20 16:30:21 · 1519 阅读 · 0 评论 -
设备驱动基础1:设备模型之总线,驱动,设备
http://www.cnblogs.com/image-eye/archive/2012/01/29/2331254.html一、USB Device 1. struct device: The Basic Device Structure, generic device interface(所有设备的抽象) -struct bus_type *bus;转载 2012-04-11 20:38:38 · 742 阅读 · 0 评论 -
网卡
转自:http://blog.21ic.com/user1/1066/archives/2007/40804.html转载 2012-04-11 20:32:52 · 1395 阅读 · 0 评论 -
关于Urb的一些基础认识
在内核中的USB代码和USB设备进行通信,使用的是Urb(USB request block)。Urb可以看成是一个USB的驱动和USB 的endpoint通信的桥梁。有两种方式 urb是一个巨大的结构体,内核通过urb与usb设备通信。这个类型像一个联络官一样,将驱动和设备连接。定义如下:struct urb { /* private: usb core and ho原创 2012-04-12 11:27:17 · 1721 阅读 · 0 评论 -
USB概述
USB协议出现过的版本有USB1.0,USB1.1,USB2.0。由于USB是主从模式,设备与设备之间、主机与主机之间不能互连,为了解决这个问题,扩大USB的使用范围,就出现了USB OTG(On The Go)。USB OTG的做法是,同一个设备,在不同的场合下可以在主机或从机之间切换。在USB1.0和USB1.1版本中,只支持1.5Mbps的低速(Low Speed)模式和12Mbps的全原创 2012-04-11 19:44:41 · 2226 阅读 · 0 评论 -
Linux环境下USB的原理、驱动和配置
随着生活水平的提高,人们对USB设备的使用也越来越多,鉴于Linux在硬件配置上尚不能全部即插即用,因此关于Linux如何配置和使用,成为困扰我们的一大问题。 什么是USB? USB是英文Universal Serial Bus的缩写,意为通用串行总线。USB最初是为了替代许多不同的低速总线(包括并行、串行和键盘连接)而设计的,它以单一类型的总线连接各种不同的类转载 2012-04-24 11:18:05 · 1985 阅读 · 0 评论