最近在Linux 2.6要实现一个切换g_ether和mass storage两个模式,
但是发现卸载g_ether的时候,会导致系统死机重启,放Google搜索了下,找到了问题的解决方法:
方法如下
/* report disconnect; the driver is already quiesced */ driver->disconnect(&udc_controller->gadget); /*加上这一行*/ /* unbind gadget and unhook driver. */ driver->unbind(&udc_controller->gadget); udc_controller->gadget.dev.driver = NULL;