加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux 内核端点

发布时间:2020-12-13 22:50:43 所属栏目:Linux 来源:网络整理
导读:USB 通讯的最基本形式是通过某些称为 端点 的. 一个 USB 端点只能在一个方向承载数 据,或者从主机到设备(称为输出端点)或者从设备到主机(称为输入端点). 端点可看作一 个单向的管道. ? 一个 USB 端点可是 4 种不同类型的一种,它来描述数据如何被传送: ? ? CO

USB 通讯的最基本形式是通过某些称为 端点 的. 一个 USB 端点只能在一个方向承载数 据,或者从主机到设备(称为输出端点)或者从设备到主机(称为输入端点). 端点可看作一 个单向的管道.

?

一个 USB 端点可是 4 种不同类型的一种,它来描述数据如何被传送:

?

?

CONTROL

?

控制端点被用来允许对 USB 设备的不同部分存取. 通常用作配置设备,获取关于 设备的信息,发送命令到设备,或者获取关于设备的状态报告. 这些端点在尺寸上 常常较小. 每个 USB 设备有一个控制端点称为"端点 0",被 USB 核用来在插入时 配置设备. 这些传送由 USB 协议保证来总有足够的带宽使它到达设备.

?

INTERRUPT

?

中断端点传送小量的数据,以固定的速率在每次 USB 主请求设备数据时. 这些端 点对 USB 键盘和鼠标来说是主要的传送方法. 它们还用来传送数据到 USB 设备来 控制设备,但通常不用来传送大量数据. 这些传送由 USB 协议保证来总有足够的 带宽使它到达设备.

?

BULK

?

块端点传送大量的数据. 这些端点常常比中断端点大(它们一次可持有更多的字符). 它们是普遍的,对于需要传送不能有任何数据丢失的数据. 这些传送不被 USB 协 议保证来一直使它在特定时间范围内完成. 如果总线上没有足够的空间来发送整个 BULK 报文,它被分为多次传送到或者从设备. 这些端点普遍在打印机,存储器,和网络设备上.

?

ISOCHRONOUS

?

同步端点也传送大量数据,但是这个数据常常不被保证它完成. 这些端点用在可以 处理数据丢失的设备中,并且更多依赖于保持持续的数据流. 实时数据收集,例如 音频和视频设备,一直都使用这些端点.

?

控制和块端点用作异步数据传送,无论何时驱动决定使用它们. 中断和同步端点是周期性 的. 这意味着这些端点被设置来连续传送数据在固定的时间,这使它们的带宽被 USB 核 所保留.

?

USB 端点在内核中使用结构 struct usb_host_endpoint 来描述. 这个结构包含真实的端 点信息在另一个结构中,称为 struct usb_endpoint_descriptor. 后者包含所有的 USB- 特定 数据,以设备自身特定的准确格式. 驱动关心的这个结构的成员是:

?

bEndpointAddress

?

这是这个特定端点的 USB 地址. 还包含在这个 8-位 值的是端点的方向. 位掩码 USB_DIR_OUT 和 USB_DIR_IN 可用来和这个成员比对,来决定给这个端点的数据是 到设备还是到主机.

?

bmAttributes

?

这是端点的类型. 位掩码 USB_ENDPOINT_XFERTYPE_MASK 应当用来和这个值比对,来决定这个端点是否是 USB_ENDPOINT_XFER_ISOC,USB_ENDPOINT_XFER_BULK,或

者是类型 USB_ENDPOINT_XFER_INT. 这些宏定义了同步,块,和中断端点,相应地.

?

?

这是以字节计的这个端点可一次处理的最大大小. 注意驱动可能发送大量的比这个 值大的数据到端点,但是数据会被分为 wMaxPakcetSize 的块,当真正传送到设备 时. 对于高速设备,这个成员可用来支持端点的一个高带宽模式,通过使用几个额 外位在这个值的高位部分. 关于如何完成的细节见 USB 规范.

?

bInterval

?

如果这个端点是中断类型的,这个值是为这个端点设置的间隔,即在请求端点的中 断之间的时间. 这个值以毫秒表示.

?

这个结构的成员没有一个"传统" Linux 内核的命名机制. 这是因为这些成员直接对应于 USB 规范中的名子. USB 内核程序员认为使用规定的名子更重要,以便在阅读规范时减少 混乱,不必使这些名子对 Linux 程序员看起来熟悉.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读