core/hub.c文件中主要分为两块去理解:
一是hub_thread这个线程,当被唤醒后会调用hub_events
另外一个是root_hub经过与usb_device_driver匹配后添加的intf->dev,intf->dev与hub_driver匹配进入hub_probe函数。
hub_thread
hub_thread
static int hub_thread(void *__unused)
{
/* khubd needs to be freezable to avoid intefering with USB-PERSIST
* port handover. Otherwise it might see that a full-speed device
* was gone before the EHCI c