一.概述 Gadget USB设备控制器(UDC)驱动指的是作为其他USB主机控制器外设的USB硬件设备上底层硬件控制器的驱动,该硬件和驱动负责将一个USB设备依附于一个USB主机控制器上。例如,当某运行Linux系统的手机作为PC的U盘时,手机中的底层USB控制器行使USB设备 ...
function目录汇集了很多功能层的功能接口 interface 的具体实现, 我们这里分析UAC . 一. UAC function驱动分析 代码位置 drivers usb gadget function f uac .c 里面实现usb设置中的接口和端点相关功能。 这里的DECLARE USB FUNCTION INIT就是入口函数。 不过看起来好像有点不一样啊,我们来带入宏定义,后面就 ...
2021-02-04 17:01 0 981 推荐指数:
一.概述 Gadget USB设备控制器(UDC)驱动指的是作为其他USB主机控制器外设的USB硬件设备上底层硬件控制器的驱动,该硬件和驱动负责将一个USB设备依附于一个USB主机控制器上。例如,当某运行Linux系统的手机作为PC的U盘时,手机中的底层USB控制器行使USB设备 ...
一.URT介绍 前面介绍了Linux USB Gadget的软件结构与各软件层的整合过程。经过各种注册函数,Gadget功能驱动层,USB设备层与UDC底层结合在了一起形成了一个完整的USB设备。而这个设备已经准备好了接受主机的枚举。在介绍USB设备枚举之前。先熟悉一下各层通信所用 ...
本文分析的是linux-5.4.3 一.Gadget Audio设备驱动分析 drivers/usb/gadget/legacy/audio.c 因为项目的问题, 了解usb音频设备的工作原理,为啥它能让PC识别成“speak”或者“mic”,以及你能够 ...
1. modprobe g_printer idVendor=0x0525 idProduct=0xa4a8 modprobe后面也可以加模块参数 2. prn_example从stdout获取数据然后通过USB发送出去,下面让他将文件中的内容发送出去: # cat data_file ...
因为项目里面有USB音频外设,所以需要分析一下UAC驱动。 USB Audio Class,USB音频类,一个像USB这样的通用数据接口,可以有很多种实现数字音频数据传输的方式。不同的开发者可以根据自己的喜好和需求,定义任意的控制方式,传输模式,音频格式等等参数 ...
一.拓扑结构 ·之所以要规定这个树形拓扑结构是为了避免环形连接。 ·一条USB总线有且只有一个USBHost,对应一个RootHub ·USB设备分为两类,Hub和Functions,Hub通过端口Port连接更多USB设备,Functions即USB外接从设备。 ·层次最多7层 ...
本文分析的是linux-5.4.3 一、Linux 下USB Hub热插拔处理 1、 Linux下USB HUB的驱动的实现和分析: 在系统初始化的时候在usb_init函数中调用usb_hub_init函数,就进入了hub的初始化。 代码路径 ...
一.基础概念 在终端用户看来,USB设备为主机提供了多种多样的附加功能,如文件传输,声音播放等,但对USB主机来说,它与所有USB设备的接口都是一致的。一个USB设备由3个功能模块组成:USB总线接口、USB逻辑设备和功能单元: a -- 这里的USB总线接口指的是USB设备中的串行接口引擎 ...