Re: Keep rtsx_usb_ms runtime suspended when polling for cards

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

 



at 5:55 PM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:

On 23 May 2018 at 11:29, Kai Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> wrote:
at 4:59 PM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:

On 23 May 2018 at 10:31, Kai Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>
wrote:
Hi Alan,

I just discussed with Ritesh about commit [1].

Since it was concluded to be hardware problem, is it okay to revert [1]?


I don't think so.

The end goal is to keep the card reader runtime suspended to reduce power
consumption.


Sounds like a call to pm_suspend_ignore_children() should be called
for the USB parent device, conditionally, when the HW works as you
suggest.


Does your "conditionally" mean CONFIG_PM enabled/disabled?

Nope. Depending on how the HW works.

At least to my understanding, the fixes we made were on a HW that
requires the USB leaf devices nodes (mmc/memstick) to have the USB
parent to be powered. This seems to not be the case for your
situation.

Yes, when the leaf devices (rtsx_usb_{sdmmc,ms}) are in use, the parent (rtsx_usb) needs to be powered.

The original issue I had is when the slot is empty, the card detection keeps waking up the card reader, because of pm_runtime_get_sync(). It's unnecessary because the card reader has remote wakeup capability, it wakes up when there's a card gets plugged into slot.


Or am I missing something here?

Would that work instead?


Yes it works nicely.
I'll send a patch to add pm_suspend_ignore_children() in the parent device.

Great!

Thanks, I'll send a patch based on your suggestion.


[...]

Kind regards
Uffe


Kai-Heng
--
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