#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