Re: Question about failure in PCI power-state change

From: Larry Finger
Date: Sat Sep 08 2012 - 18:01:26 EST


On 09/08/2012 04:50 PM, Alan Stern wrote:
On Sat, 8 Sep 2012, Rafael J. Wysocki wrote:

On Saturday, September 08, 2012, Bjorn Helgaas wrote:
+cc Rafael, Huang, linux-pm

On Fri, Sep 7, 2012 at 3:44 PM, Larry Finger <Larry.Finger@xxxxxxxxxxxx> wrote:
Hi,

On occasion when I unload and reload driver rtl8192ce, I get the message

"Refused to change power state, currently in D3"

I added additional info to the printk and discovered that it was trying to
change to state D0. The problem seems to occur when I have made a
connection, unloaded the driver, and reloaded it. If I do not make a
connection before unloading, then the problem is a lot less likely.

This is with kernel 3.6-rc4 from wireless-testing. A Google search shows
that the problem is usually due to suspend/resume difficulties, but this
machine has not been suspended.

I would appreciate any help that you might give in solving this issue.

I think writing "on" to the /sys/devices/.../power/control attribute of the device
in question would help.

Are you suggesting that this particular wireless adapter is unable to
return to D0 from D3?

Larry, what happens if you try the suspend & resume your system while
there's a connection? Does a similar error occur during the resume?

After I sent this request, I found an error in the removal process for this particular adapter, which I suspect is the real source of the problem. That difficulty is only found on the new variant of the card - the older one is OK. I think the problem is that the adapter is left in some ill-defined state that can only be cleared by doing a power reset. In that state, it is unable to return to D0.

This box has never been able to suspend/resume, thus I cannot answer the other question.

Thanks to all that responded. Once I clean up the other error, I will recontact the list if the D3 => D0 problem persists.

Larry


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/