首页
›
Linux内核与驱动
›
071-USB Gadget驱动开发
›
《ConfigFS配置复合USB Gadget设备全流程》
VIP10
本课程属于:071-USB Gadget驱动开发
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
ConfigFS配置复合USB Gadget设备全流程
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
USB Gadget概述
USB Gadget的概念 · USB Gadget与USB Hos… · USB Gadget的应用场景
USB
Gadget
02
ConfigFS简介
ConfigFS文件系统的作用 · ConfigFS与USB Gadge… · ConfigFS的挂载与目录结构
ConfigFS
简介
03
开发环境准备
Linux内核版本要求 · 内核配置选项(CONFIG_USB_… · CONFIG_USB_CONFIGF…
开发环境准备
Linux
04
硬件平台选择
常见SoC平台(i.MX6 · Raspberry Pi · BeagleBone Black)
硬件平台选择
SoC
05
基础概念
UDC(USB Device Con… · Gadget Function · Configuration
基础概念
UDC
06
ConfigFS目录结构详解
/sys/kernel/config… · g1 · g2等实例
ConfigFS
目录结构详解
07
创建第一个Gadget实例
创建目录 · 绑定UDC · 设置VID/PID
Gadget
创建第一个
08
配置USB字符串描述符
设置制造商字符串 · 产品字符串 · 序列号字符串
USB
配置
09
配置USB设备描述符
设置bcdUSB · bDeviceClass · bDeviceSubClass
USB
配置
10
配置USB配置描述符
创建配置实例 · 设置配置属性(bmAttribute… · bMaxPower)
USB
配置
11
Function类型详解
Serial(g_serial) · Ethernet(g_ether) · Mass Storage(g_mas…
Function
类型详解
12
配置Serial Function
创建acm.gs0实例 · 设置参数 · 绑定到配置
Serial
Function
13
配置Ethernet Function
创建ecm.usb0实例 · 设置MAC地址 · 绑定配置
Ethernet
Function
14
配置Mass Storage Function
创建mass_storage.0实例 · 设置LUN(Logical Unit… · 绑定镜像文件
Mass
Storage
15
配置HID Function
创建hid.0实例 · 设置报告描述符 · 设置协议与子类
HID
Function
16
配置Audio Function
创建uac1.0实例 · 设置采样率 · 声道数
Audio
Function
17
复合设备概念
什么是复合设备(Composite… · IAD(Interface Asso… · 复合设备的应用场景
复合设备概念
Composite
18
创建复合Gadget设备
在一个Gadget实例中添加多个Fu… · 配置IAD · 同时暴露Serial+Etherne…
Gadget
创建复合
19
配置复合设备
Serial + Mass Stor… · Function顺序对描述符的影响 · 主机端同时识别串口与U盘
配置复合设备
Serial
20
配置复合设备
Ethernet + HID · Function顺序对描述符的影响 · 主机端同时识别网卡与HID设备
配置复合设备
Ethernet
21
配置复合设备
Serial + Ethernet… · 描述符长度限制 · 调试方法
配置复合设备
Serial
22
绑定与启用Gadget
将Gadget实例绑定到UDC · 启用配置 · 检查dmesg日志
Gadget
绑定
23
动态切换配置
创建多个配置实例 · 通过用户空间切换配置 · 配置切换对主机的影响
动态切换配置
创建多个配置实例
24
字符串描述符的多语言支持
添加多种语言字符串描述符 · 设置不同语言的制造商/产品字符串
字符串描述符的多…
添加多种语言字符…
25
OS Descriptor与Microsoft Compatible ID
配置OS String Descri… · 设置Compat ID · 支持Windows自动加载驱动
OS
Descriptor
26
调试与排错
使用lsusb查看设备描述符 · 使用usbmon抓取USB数据包 · 常见错误(描述符错误
调试
排错
27
性能优化
批量端点与中断端点的选择 · 缓冲区大小设置 · 传输速率测试(iperf for E…
性能优化
批量端点
28
自动加载与系统集成
编写udev规则 · 创建systemd服务 · 开机自动配置Gadget设备
自动加载
系统集成
29
实战案例1
模拟USB键盘(HID) · 编写报告描述符(键盘按键映射) · 主机端测试按键输入
实战案例1
USB
30
实战案例2
模拟USB网卡+U盘 · 主机端同时访问网络与存储 · 性能测试
实战案例2
USB
所属VIP或分类
同VIP:ConfigFS创建USB-Gadget设备失败故障排查
同VIP:Linux-USB-Gadget驱动从入门到工程部署
同VIP:UDC驱动移植与USB-Gadget设备枚举过程分析