本文使用linux6.4内核版本代码,从以下几个方面来学习usb子系统
1、usb总线注册与通用驱动注册
2、usb总线match回调函数分析
3、usb host 控制器HCD驱动加载以ehci_hcd为例
4、hub设备驱动(通用设备驱动)的probe
5、hub interface驱动的probe
6、hub_event的触发
usb总线注册与通用驱动注册
源码位置:
kernel/driver/usb/core/usb.c
usb_init函数截图
这个初始化完成了几个重要功能:
1、usb总线注册
2、hub interface驱动注册
3、usb通用设备驱动注册
其中后面两个驱动贯穿了usb子系统整个框架,把这两个驱动搞明白就差不对usb有个整体理解了。
usb总线match回调函数分析
下面来看看usb总线的match函数实现,其主要作用就是将usb device和driver进行匹配
const struct bus_type<
订阅专栏 解锁全文
472

被折叠的 条评论
为什么被折叠?



