Re: Keep rtsx_usb_ms runtime suspended when polling for cards

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

 



On Thu, 31 May 2018, Kai-Heng Feng wrote:

> >> Perhaps what is needed is to use polling, but only when the mmc host
> >> has been runtime resumed.
> >
> > That sounds right.  I have no idea how to tell the MMC core to do this,
> > but it should make everything work correctly.
> 
> Maybe pm_suspend_ignore_children() a better choice here?

No, I really don't think so.  pm_suspend_ignore_children() tells the PM
core that it's okay to put the parent rtsx_usb device into low power
while keeping the children rtsx_usb_sdmmc and rtsx_usb_ms running
normally.  That wouldn't make any sense; if the USB link was
runtime-suspended then the lower-level drivers would not be able to
communicate with the device.

> rtsx_usb_sdmmc and rtsx_usb_ms can be considered as "logic" devices of  
> rtsx_usb.
> Both of them don't need any special power management other then keep the  
> parent powered up.

How the runtime power management works here is up to you (or to whoever 
writes the code).  Just bear in mind that the parent rtsx_usb will get 
put into low power mode unless there is some reason not to.  If a card 
is present in the reader, that would be a good reason -- but the 
appropriate driver has to tell the PM core somehow.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux