#9739 HIGH 1.5-sof: need to move to SDIO 1 bit mode during suspend
Zarro Boogs per Child
bugtracker at laptop.org
Fri Nov 27 10:06:22 EST 2009
#9739: need to move to SDIO 1 bit mode during suspend
------------------------------+---------------------------------------------
Reporter: dsd | Owner: dsaxena
Type: defect | Status: new
Priority: high | Milestone: 1.5-software
Component: kernel | Version: Development source as of this date
Resolution: | Keywords:
Next_action: code | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
------------------------------+---------------------------------------------
Comment(by dsd):
I tried out the patch. I misread the resume path and it doesn't restore 4
bit mode, but that's a small fix.
The real problem is that for some reason, the register accesses needed to
switch to 1 bit mode run really slowly, significantly slowing down suspend
and so much that the kernel complains:
{{{
[ 95.330304] WARNING: at drivers/mmc/core/core.c:221
mmc_wait_for_cmd+0x2d/0x67()
[ 95.330313] Hardware name: XO
[ 95.330319] Modules linked in: fuse uinput mousedev serio_raw asix
usbnet psmouse mii libertas_sdio libertas lib80211 [last unloaded:
scsi_wait_scan]
[ 95.330370] Pid: 2539, comm: bash Not tainted
2.6.31_xo1.5-20091127.1440.1.olpc.378a527 #1
[ 95.330379] Call Trace:
[ 95.330404] [<b041fd46>] warn_slowpath_common+0x6a/0x81
[ 95.330418] [<b06682c2>] ? mmc_wait_for_cmd+0x2d/0x67
[ 95.330434] [<b041fd6f>] warn_slowpath_null+0x12/0x15
[ 95.330447] [<b06682c2>] mmc_wait_for_cmd+0x2d/0x67
[ 95.330461] [<b042071a>] ? vprintk+0x2e5/0x319
[ 95.330478] [<b066b56e>] mmc_io_rw_direct+0x94/0xeb
[ 95.330493] [<b066abf0>] mmc_sdio_suspend+0xe7/0x156
[ 95.330508] [<b0667dd2>] mmc_suspend_host+0x73/0x149
[ 95.330525] [<b0670329>] sdhci_suspend_host+0x2f/0x46
[ 95.330540] [<b0670516>] sdhci_pci_suspend+0x44/0x131
[ 95.330557] [<b058daeb>] pci_pm_suspend+0x62/0x179
[ 95.330575] [<b05ffb74>] pm_op+0x26/0x60
[ 95.330590] [<b05fff8f>] dpm_suspend_start+0x25c/0x32f
[ 95.330609] [<b0444637>] suspend_devices_and_enter+0x3d/0x16a
[ 95.330624] [<b0444827>] enter_state+0xc3/0x10a
[ 95.330638] [<b0444125>] state_store+0x9a/0xae
[ 95.330651] [<b044408b>] ? state_store+0x0/0xae
[ 95.330669] [<b0577aa1>] kobj_attr_store+0x16/0x22
[ 95.330687] [<b04cdf7a>] sysfs_write_file+0xc4/0xef
[ 95.330707] [<b048f6cd>] vfs_write+0x8f/0x117
[ 95.330720] [<b04cdeb6>] ? sysfs_write_file+0x0/0xef
[ 95.330735] [<b048f7f6>] sys_write+0x40/0x65
[ 95.330750] [<b0402934>] sysenter_do_call+0x12/0x26
[ 95.330762] ---[ end trace c5b7f0374d8e55a7 ]---
}}}
I'll look into this more next week, although I'm not sure how much value
this has -- maybe this is something that has been fixed for B3 or C?
--
Ticket URL: <http://dev.laptop.org/ticket/9739#comment:8>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list