Re: 回复: [PATCH 1/1] usb: host: xhci-plat: keep runtime active when remove host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 14.5.2020 4.34, Alan Stern wrote:
> On Thu, May 14, 2020 at 01:31:59AM +0000, Peter Chen wrote:
>> On 20-05-13 14:45:42, Jun Li wrote:
>>> ​
>>> ...
>>>> Would it make sense to change xhci_plat_remove() to
>>>
>>>
>>>
>>>> xhci_plat_remove()
>>>
>>>>   pm_runtime_disable()
>>>
>>>>   <remove and put both hcd's>
>>>
>>>>   pm_runtime_set_suspended()
>>>
>>>
>>>
>>>> or possibly wrapping the remove in a runtime get/put:
>>>
>>>> xhci_plat_remove()
>>>
>>>>  pm_runtime_get_noresume()
>>>
>>>>   pm_runtime_disable()
>>>
>>>  >  <remove and put both hcd's>
>>>
>>>  >  pm_runtime_set_suspended()
>>>
>>>  >  pm_runtime_put_noidle()
>>>
>>> I think it's better to keep runtime active during driver removal,
>>> how about this:
>>>
>>> pm_runtime_get_sync()
>>> <remove and put both hcd's>
>>> pm_runtime_disable()
>>> pm_runtime_put_noidle()
>>> pm_runtime_set_suspended()
>>>
>>
>> I think it is more reasonable since for some DRD controllers if
>> DRD core is suspended, access the xHCI register (eg, we remove
>> xhci-plat-hcd module at the time) may hang the system. Alan &
>> Mathias, what's your opinion?

Makes sense to me

> 
> Jun's suggestion looks good to me.
> 
> Alan Stern
> 

Great, lets go with this then.
Jun, or Peter, could you turn this into a patch and check that it works?
I only got PCI xHC's to play with myself.

Thanks
-Mathias



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux