public inbox for linux-pm@vger.kernel.org
 help / color / mirror / Atom feed
* USB PM suspend/resume problems with Marvell Orion SoC
@ 2008-01-06 15:51 Tawfik Bayyouk
  2008-01-06 18:50 ` Rafael J. Wysocki
  2008-01-07 16:21 ` Alan Stern
  0 siblings, 2 replies; 4+ messages in thread
From: Tawfik Bayyouk @ 2008-01-06 15:51 UTC (permalink / raw)
  To: linux-pm; +Cc: Tzachi Perelstein

Hi,

I am working with Linux version 2.6.24-rc4 for adding the power
management capabilities to the USB ehci driver for Orion SoC 
device of Marvell.

I need help in 2 issues:

1- The SoC device supports 2 levels of power management and I'd 
like to reflect this at the driver level. 
The first is "standby" where only clocks are halted while 
preserving the registers values. The second is "mem" where the 
whole SoC (including the USB HC) are powered off.
What is the correct way to distinguish between the 2 modes in 
the .suspend and .resume routines of the platform_driver?
I believe that the parameter I am looking for is the PM target 
state which is usually passed in the .set_target of the 
platform_suspend_ops routine.

2- After resuming from "mem" suspend, the USB can no longer 
detect plugging in and out of USB devices.
I have investigate the problem and found that 4 registers where 
not configured correctly. Saving the values of these registers 
in the .suspend routine and loading them back in the .resume 
routine resolves the problem. 
The following are the 4 problematic registers:
    USBCMD (0x140)
    USBINTR (0x148)
    PORTSC1 (0x184)
    USBMODE (0x1A8)

I would be very thankful for any clue in either of the 2 problems.

Greetings,
Tawfik

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-01-08 13:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-06 15:51 USB PM suspend/resume problems with Marvell Orion SoC Tawfik Bayyouk
2008-01-06 18:50 ` Rafael J. Wysocki
2008-01-07 16:21 ` Alan Stern
2008-01-08 13:29   ` Tawfik Bayyouk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox