Commit d5385187 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman

memstick: rtsx_usb_ms: Runtime resume the device when polling for cards

commit 796aa46a upstream.

Accesses to the rtsx usb device, which is the parent of the rtsx memstick
device, must not be done unless it's runtime resumed.

Therefore when the rtsx_usb_ms driver polls for inserted memstick cards,
let's add pm_runtime_get|put*() to make sure accesses is done when the
rtsx usb device is runtime resumed.
Reported-by: default avatarRitesh Raj Sarraf <rrs@researchut.com>
Tested-by: default avatarRitesh Raj Sarraf <rrs@researchut.com>
Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 74005674
...@@ -681,6 +681,7 @@ static int rtsx_usb_detect_ms_card(void *__host) ...@@ -681,6 +681,7 @@ static int rtsx_usb_detect_ms_card(void *__host)
int err; int err;
for (;;) { for (;;) {
pm_runtime_get_sync(ms_dev(host));
mutex_lock(&ucr->dev_mutex); mutex_lock(&ucr->dev_mutex);
/* Check pending MS card changes */ /* Check pending MS card changes */
...@@ -703,6 +704,7 @@ static int rtsx_usb_detect_ms_card(void *__host) ...@@ -703,6 +704,7 @@ static int rtsx_usb_detect_ms_card(void *__host)
} }
poll_again: poll_again:
pm_runtime_put(ms_dev(host));
if (host->eject) if (host->eject)
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment